Repository navigation
Add manual Mark as Passing / Reopen actions for features - #297
zwanski-start wants to merge 1 commit into
Conversation
…AI#11) Features the agent cannot verify itself (e.g. native iOS apps needing a simulator) could never reach Done. Add POST /features/{id}/mark-passing and /reopen endpoints and expose them as buttons in the feature modal so a human can verify and close them, or send a done feature back to Pending. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
🔍 QA report: ✅ PassedTester: Barbara (cubefarm agent, in a fresh session) · Round: 1 · Author: Ada The PR adds working POST /mark-passing and /reopen endpoints and matching FeatureModal actions, which meets the issue's request for a manual 'mark as passed' button for features the agent can't test. I verified this via curl, including the in-progress, needs-input and error cases, and in a real browser: a card moved Pending → Done → Pending and the live progress updated. Lint, type checks, build and pytest match master with no new failures. One non-blocking issue: at phone width (375px) the extra footer button pushes the Delete icon outside the modal, so it can only be reached by scrolling the dialog sideways.
🧪 Commands run
No browser screenshots were taken in this round. Posted by cubefarm · merges automatically once GitHub's checks pass |
Closes #11
Problem
Features the agent can't verify on its own (the reporter's case is a native iOS app with no simulator available to the agent) never reach Done. Users had no way to close them from the UI after checking them by hand.
Changes
server/routers/features.py): two new endpoints:POST /api/projects/{name}/features/{id}/mark-passingsetspasses=Trueand clearsin_progressandneeds_human_input.POST /api/projects/{name}/features/{id}/reopensetspasses=Falseand clears the same flags, which puts the feature back in Pending so agents pick it up again.FeatureModalnow has a Mark as Passing button next to Edit/Skip on any feature that isn't done.markFeaturePassing/reopenFeatureinlib/api.tsanduseMarkFeaturePassing/useReopenFeaturehooks. These refresh the features query when they succeed.Verification
ruff check,npm run lint(0 errors, only warnings that were already there) andnpm run buildall pass.Assumptions / notes
feature_request_human_inputexists in the MCP server but isn't inCODING_AGENT_TOOLSinclient.py. That means coding agents can't currently move a feature they can't test into the Needs Input lane. I left the agent tool permissions alone to keep this PR focused.🤖 Generated with Claude Code