zara-coding: prove rollback cleanup before reporting it #446

Open
nsaspy wants to merge 2 commits from rage/1-zara-coding-rollback-proof into main
Owner

Advances #1 with an evidence-backed failure-path fix for add-and-lock rollback.

RAGE transaction

  • RED-first cbb5cf8: a successful git worktree remove exit is insufficient if the target remains registered; the operation must not claim rollback.
  • implementation 632fa4b: after non-force removal, re-read the complete bounded worktree inventory and require the target to be absent; also require the target filesystem path to be gone before reporting the created worktree as rolled back.

This preserves the existing exact detached/head/unlocked pre-removal checks and adds postcondition proof. No force removal, shell, authority expansion, or cleanup success based only on command exit.

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

Advances #1 with an evidence-backed failure-path fix for add-and-lock rollback. ## RAGE transaction - RED-first `cbb5cf8`: a successful `git worktree remove` exit is insufficient if the target remains registered; the operation must not claim rollback. - implementation `632fa4b`: after non-force removal, re-read the complete bounded worktree inventory and require the target to be absent; also require the target filesystem path to be gone before reporting the created worktree as rolled back. This preserves the existing exact detached/head/unlocked pre-removal checks and adds postcondition proof. No force removal, shell, authority expansion, or cleanup success based only on command exit. 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 pull request has changes conflicting with the target branch.
  • plugins/zara-coding/lib/zara_coding/worktree.py
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

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

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-rollback-proof
git switch rage/1-zara-coding-rollback-proof
git rebase main
git switch main
git merge --ff-only rage/1-zara-coding-rollback-proof
git switch rage/1-zara-coding-rollback-proof
git rebase main
git switch main
git merge --no-ff rage/1-zara-coding-rollback-proof
git switch main
git merge --squash rage/1-zara-coding-rollback-proof
git switch main
git merge --ff-only rage/1-zara-coding-rollback-proof
git switch main
git merge rage/1-zara-coding-rollback-proof
git push origin main
Sign in to join this conversation.
No description provided.