fix(cli): support force removing projects#3922
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 2920b99. Configure here.
ApprovabilityVerdict: Needs human review This PR adds a new You can customize Macroscope's approvability policy. Learn more. |
Dismissing prior approval to re-evaluate bb362c7

Closes #3855.
What changed
--forceflag tot3 project removeproject.deleteorchestration commandWithout this flag, the CLI could not access the server's existing force-delete behavior, so non-empty projects could not be removed from the command line.
Validation
pnpm exec vp test apps/server/src/bin.test.ts --run(16 tests passed)pnpm exec vp check(0 errors; 9 pre-existing warnings)pnpm exec vp run typecheck(all 15 workspaces passed)Note
Low Risk
Thin CLI flag wiring to an existing orchestration command; destructive behavior is opt-in via
--forceand covered by a new integration test.Overview
Exposes the server’s existing force-delete path from the CLI so
t3 project removecan drop projects that still have threads.project removegains a--forceflag (default off) described as deleting the project and all of its threads. The handler passesforcethrough on theproject.deletedispatch payload instead of only sendingprojectId.A CLI integration test adds a project, creates a thread via the orchestration engine, runs
project remove --force, and asserts both the project and thread havedeletedAtset in the persisted snapshot.Reviewed by Cursor Bugbot for commit bb362c7. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Add
--forceflag tot3 project removeCLI commandAdds a boolean
--forceflag (defaultfalse) to theproject removecommand in project.ts. The flag value is forwarded in theproject.deletecommand payload, allowing callers to signal a force deletion. A new test verifies that runningproject remove --forcesetsdeletedAton both the project and its associated threads.Macroscope summarized bb362c7.