zara-coding: roll back failed add-and-lock worktrees #450

Open
nsaspy wants to merge 0 commits from rage/1-zara-coding-add-lock-rollback into main
Owner

Advances #1 with a safety fix for the approval-gated detached add-and-lock transaction.

RAGE transaction

  • RED-first 0f0744c: prove a lock-command failure must remove the freshly created clean detached worktree, while an identity-changed worktree must never be force-deleted.
  • implementation 391b956: on post-create lock failure, re-read the bounded Git worktree inventory, require the exact detached target + expected commit + unlocked/non-prunable state, then use plain git worktree remove (never --force).

Failure semantics

  • successful safe rollback reports failure; it never claims the requested lock succeeded.
  • if target identity/state changed, rollback refuses deletion and reports that cleanup could not be performed safely.
  • no arbitrary shell, no force removal, no branch mutation, no approval bypass.

Exact-head CI must pass compatibility, full generated registry/plugin Nix checks, and package builds before merge.

Advances #1 with a safety fix for the approval-gated detached add-and-lock transaction. ## RAGE transaction - RED-first `0f0744c`: prove a lock-command failure must remove the freshly created clean detached worktree, while an identity-changed worktree must never be force-deleted. - implementation `391b956`: on post-create lock failure, re-read the bounded Git worktree inventory, require the exact detached target + expected commit + unlocked/non-prunable state, then use plain `git worktree remove` (never `--force`). ## Failure semantics - successful safe rollback reports failure; it never claims the requested lock succeeded. - if target identity/state changed, rollback refuses deletion and reports that cleanup could not be performed safely. - no arbitrary shell, no force removal, no branch mutation, no approval bypass. Exact-head CI must pass compatibility, full generated registry/plugin Nix checks, and package builds before merge.
Some checks failed
CI / test (pull_request) Failing after 16s
This branch is already included in the target branch. There is nothing to merge.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin rage/1-zara-coding-add-lock-rollback:rage/1-zara-coding-add-lock-rollback
git switch rage/1-zara-coding-add-lock-rollback

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff rage/1-zara-coding-add-lock-rollback
git switch rage/1-zara-coding-add-lock-rollback
git rebase main
git switch main
git merge --ff-only rage/1-zara-coding-add-lock-rollback
git switch rage/1-zara-coding-add-lock-rollback
git rebase main
git switch main
git merge --no-ff rage/1-zara-coding-add-lock-rollback
git switch main
git merge --squash rage/1-zara-coding-add-lock-rollback
git switch main
git merge --ff-only rage/1-zara-coding-add-lock-rollback
git switch main
git merge rage/1-zara-coding-add-lock-rollback
git push origin main
Sign in to join this conversation.
No description provided.