Files
BattleBot/docs/issue-tracker.md
VinceC dd8aa456d9 v1.2.11: Add tournaments command with filtering and improve error handling
Features:
- Add /tournaments command with status and game filters
- Add tournament API integration to PlayerService
- Add beautiful tournament embed builders with prize pools
- Protect sync-games from overwriting manual customizations
- Improve error handling with proper MessageFlags

Changes:
- Add getTournamentsData() and getTournamentData() to PlayerService
- Add tournament command handler with pagination support
- Add tournament embed builders with rich formatting
- Update deployment docs for v1.2.10 features
- Add issue tracker documentation
- Add tournament testing script
- Fix ephemeral flags throughout CommandHandler
- Improve permission checks with PermissionFlagsBits

Version: 1.2.11
2025-10-02 06:24:54 -05:00

2.5 KiB
Raw Blame History

VRBattles Discord Bot Issue Tracker

Use this checklist to track code-quality fixes and consistency updates. Check items off as completed and commit this file with your changes.

How to use

  • Edit this file, change "[ ]" to "[x]" for completed items, and include a short note or PR link if helpful.

Checklist

  • Replace admin permission check with PermissionFlagsBits.Administrator

    • Location: src/commands/CommandHandler.js (in handleRegisterServer)
    • Desired: interaction.member.permissions.has(PermissionFlagsBits.Administrator)
  • Replace legacy flags ephemeral usage with ephemeral: true

    • Location: various replies in src/commands/CommandHandler.js and src/commands/SubscriptionCommands.js
    • Notes: decide ephemerality at reply/deferReply; it cannot be changed via editReply
  • Switch interaction.isCommand() to interaction.isChatInputCommand()

    • Location: src/Bot.js (in handleInteraction)
  • Use PermissionFlagsBits for channel permission checks

    • Location: src/services/NotificationService.js
    • Replace string permissions (e.g., 'SendMessages', 'ViewChannel') with PermissionFlagsBits.*
  • Clean up SubscriptionCommands duplicates and constructor mismatch

    • Location: src/commands/SubscriptionCommands.js
    • Remove duplicated methods (getGame, createOrUpdateSubscription, safeReply), fix constructor to accept (supabase, logger) and use the injected logger
  • Fix PlayerService logging

    • Location: src/services/PlayerService.js
    • Inject a logger or use a consistent logging strategy; remove this.logger references if not injected
  • Align /help category choices with handler expectations

    • Locations:
      • deploy-commands.js (slash command choices for help)
      • src/commands/HelpCommand.js (expects categories like getting_started, search, etc.)
    • Decide whether to offer topic categories or game names and make both sides consistent
  • Add guild-scoped slash command deployment for development

    • Location: deploy-commands.js (or add a new deploy-commands.dev.js)
    • Use Routes.applicationGuildCommands(CLIENT_ID, GUILD_ID) for fast iteration in dev
  • Standardize interaction handlers and checks

    • Ensure consistent use of isChatInputCommand, isButton, and ephemerality decisions across commands and buttons

Notes

  • Keep PRs small and focused (one checklist item per PR when possible).
  • Update this file with any extra context, follow-ups, or links.