Skip to content

Document events feature and expanded permissions#181

Open
benrobson wants to merge 5 commits intoclaude/events-calendar-module-A77RKfrom
document-events-and-permissions-5161869195136899586
Open

Document events feature and expanded permissions#181
benrobson wants to merge 5 commits intoclaude/events-calendar-module-A77RKfrom
document-events-and-permissions-5161869195136899586

Conversation

@benrobson
Copy link
Copy Markdown
Member

This submission updates the README.md to provide comprehensive documentation for the Events feature and several previously undocumented permission nodes. Key additions include:

  1. Events Calendar: Documentation of the event lifecycle (Draft, Pending Review, Approved, Published) and its integration with Discord and templates.
  2. Expanded Permissions: Added documentation for zander.web.events, zander.web.events.review, zander.web.voting, zander.web.punishment.manage, zander.web.reports, and zander.discord.lpaudit.
  3. Support Ticket Logic: Clarified the use of category-specific permissions (zander.web.tickets.{slug}) and the logic governing who can add users or groups to a ticket (Owner, Staff, or Participant).

These changes ensure that administrators have the necessary information to configure and manage the platform's core features effectively.


PR created automatically by Jules for task 5161869195136899586 started by @benrobson

Updated README.md to include:
- A new section for the Events Calendar feature, detailing its lifecycle and features.
- Expanded permissions table with missing nodes for events, voting, punishments, and audits.
- Detailed documentation for Support Ticket management, including participant logic and category-specific permissions.

Co-authored-by: benrobson <15405528+benrobson@users.noreply.github.com>
@benrobson benrobson requested a review from JaedanC as a code owner April 6, 2026 00:30
@google-labs-jules
Copy link
Copy Markdown
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 6, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 8247c9d1-5216-4df9-9d4b-454d7dbe4e86

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch document-events-and-permissions-5161869195136899586

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

google-labs-jules bot and others added 4 commits April 6, 2026 01:17
…anagement permission

Updated README.md:
- Added "Events Calendar" section detailing lifecycle and features.
- Expanded "Permissions" table with missing nodes (events, voting, punishment, reports, Discord audit).
- Updated "Support Tickets" section with participant management logic.

Code changes in routes/support.js:
- Implemented `zander.web.tickets.manageparticipants` permission node.
- Users with this node can now view any ticket and manage (add/remove) users and groups.
- This permission overrides standard 'Appeal' ticket restrictions for authorized staff/roles.

Co-authored-by: benrobson <15405528+benrobson@users.noreply.github.com>
…ticipants node

Updates README.md:
- Added "Events Calendar" section detailing lifecycle and features.
- Expanded "Permissions" table with missing nodes (events, voting, punishment, reports, Discord audit).
- Updated "Support Tickets" section with participant management logic.

Functional Changes:
- Implemented `zander.web.tickets.manageparticipants` permission node in web routes and Discord commands.
- Updated `getUserPermissions` in `userController.js` to support lookups via `discordId`, enabling permission checks in Discord.
- Refactored `commands/support.mjs` to respect LuckPerms permissions for `add`, `remove`, `status`, `close`, and `manual` subcommands.
- Users with `zander.web.tickets.manageparticipants` can now manage ticket participants on both the web and Discord, overriding standard restrictions.

Co-authored-by: benrobson <15405528+benrobson@users.noreply.github.com>
…e: cleanup logging

Documentation:
- Added "Events Calendar" section to README.md describing lifecycle and features.
- Expanded permissions table with missing administrative nodes.
- Documented Support Ticket participant management logic.

Functional Changes:
- Implemented `zander.web.tickets.manageparticipants` permission node.
- Updated `getUserPermissions` to support lookups via `discordId`, enabling permission enforcement in Discord.
- Refactored `/ticket` Discord command to use LuckPerms authorization.
- Users with the management node can now add/remove users and roles on any ticket across web and Discord.

Cleanup:
- Removed verbose `console.log` statements from `watchController.js` to reduce noise in cron logs.

Co-authored-by: benrobson <15405528+benrobson@users.noreply.github.com>
…pant management; fix: discord interaction timeouts and permission resolution

Documentation:
- Added comprehensive documentation for the Events Calendar and Support Ticket systems in README.md.
- Expanded the permissions reference table with missing administrative nodes.

Functional Improvements:
- Implemented the `zander.web.tickets.manageparticipants` permission node across web and Discord.
- Updated `getUserPermissions` to support lookups via `discordId`, enabling permission enforcement in Discord slash commands.
- Refactored Discord support commands to immediately defer interactions, preventing "Unknown interaction" errors during async operations.
- Resolved deprecation warnings by migrating `ephemeral: true` to `flags: [MessageFlags.Ephemeral]`.

Cleanup:
- Removed verbose `console.log` statements from the watch feature to reduce cron log noise.

Co-authored-by: benrobson <15405528+benrobson@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant