This repository has no description

[silverwood] workstream remove: gate Basic removal on a jj push-safety check master

Removing a Basic workstream without --force previously always refused (the safety check was a stub). It now succeeds when discarding the checkout loses nothing: the checkout is a jj workspace root (.jj at its own root, checked before any revset so an ancestor repo is never queried) and every non-empty rev is already an ancestor of the remote trunk (main@origin, else main@github). Operational jj failures (missing binary, spawn error, unexpected non-zero exit) surface as the new Error::Vcs; only not-a-jj-root, no remote trunk, or unpushed non-empty work map to UnsafeToRemove. --force still bypasses the check entirely. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DY9N9STx6HMGtSEJauX1KG


Author Yuto Nishida Co-author Claude Opus 4.8 (1M context) Date Commit 1bef8721 Parent 264a08ad Change ID puykkqxy
+114 -9
3 changed files