Skip to content

Implement GitHub-Integrated Bug Reporting System #15

@xDDoubleTea

Description

@xDDoubleTea

Problem

The current bug reporting system in the old DragonBot_host repository relies on sending messages to a specific Discord channel and storing bug information in a simple JSON file. This approach has several drawbacks:

  • Lack of Persistence: Bug reports are lost if the channel is deleted or the JSON file is corrupted.
  • Poor Searchability: It's difficult to search for specific bugs or track their history.
  • No Status Tracking: There is no built-in way to mark a bug as in-progress, completed, or wont-fix.
  • Cluttered UI: Mixing bug reports with regular channel chatter is inefficient.

Proposed Solution

We will replace the old system with a modern, professional workflow by creating a new /bug_report slash command that integrates directly with this GitHub repository.

User Flow:

  1. A user types the /bug_report command in any channel.
  2. The bot responds with a Modal (a pop-up form) asking for essential information:
    • Bug Title: A short, descriptive summary of the problem.
    • Reproduction Steps: A clear, step-by-step guide on how to trigger the bug.
    • Expected Behavior: What the user thought should happen.
    • Actual Behavior: What actually happened.
  3. When the user submits the modal, the bot confirms the submission with an ephemeral message.

Bot Action:

  1. The bot will take the data from the submitted modal.
  2. Using the GitHub API, it will automatically create a new issue in the xDDoubleTea/DragonBot repository.
  3. The issue body will be formatted with the information provided by the user, making it instantly actionable.

Benefits

  • Professional Workflow: Leverages the industry-standard tool for tracking software issues.
  • Persistence & Searchability: All bugs are stored permanently and can be easily searched and referenced.
  • Status Tracking: We can use GitHub labels (bug, in-progress, fixed) and projects to manage the entire lifecycle of a bug report.
  • Excellent Developer UX: Consolidates all development tasks within the GitHub ecosystem.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions