Repository navigation
Assistant: report bugs against existing features (help / new feature / bug report) - #331
zwanski-start wants to merge 1 commit into
Conversation
) Add a feature_report_bug MCP tool that appends a bug report (and optional repro steps) to an existing feature and moves it back to pending, instead of creating a new 'fix X' feature. Expose it and feature_get_graph to the assistant, teach the system prompt the help / new feature / bug report flows, and add quick-action chips in the assistant chat to pick one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
🔍 QA report: ✅ PassedTester: Barbara (cubefarm agent, in a fresh session) · Round: 1 · Author: Guido The PR adds a
🧪 Commands run
No browser screenshots were taken in this round. Posted by cubefarm · merges automatically once GitHub's checks pass |
Closes #135
What changed
The project assistant can now take bug reports against features that already exist. Before, the only option was creating a new "fix X" feature.
feature_report_bug(feature_id, bug_description, steps?)inmcp_server/feature_mcp.py. It appends**Bug report:** …to the feature's description, appends any repro/verification steps to its steps, and setspasses = false, so a coding agent picks it up again. Priority stays the same and no new feature is created. Features that are currentlyin_progressare rejected, so a running agent isn't affected.server/services/assistant_chat_session.py): addsfeature_report_bugandfeature_get_graph. The graph tool lets the assistant list every feature, including done ones, to find the one a bug belongs to.feature_mark_passingandfeature_mark_failingstay disallowed.ask_userwhen it's unclear which feature is affected, and to create a new feature only if no existing one fits.AssistantChat.tsx): until the first user message, three quick-action chips appear under the greeting: Ask for help, New feature, Report a bug. Clicking one prefills the input (e.g.Bug report:), changes the placeholder and focuses the textarea.feature_report_bugto the MCP tool list in CLAUDE.md.Verification
test_feature_report_bug.py(5 tests) covers: reopening a passing feature, a pending feature with no steps, rejecting an in-progress feature, a missing feature or blank description, and the assistant allow/deny lists. All pass, and so doestest_client.py.ruff check .is clean andpython test_security.pypasses. mypy reports no new errors in the touched files; the existing unused-ignore warnings are unchanged.npm run lintshows 0 errors andnpm run buildsucceeds.Bug report:with the new placeholder and focus.Assumptions
feature_report_bugto the coding, testing or initializer agent tool lists. They already havefeature_mark_failing.🤖 Generated with Claude Code