From e34c010d0d664cc7c66ff48d5040f98c6b4e0f85 Mon Sep 17 00:00:00 2001 From: Scott Hall Date: Mon, 19 Oct 2026 15:43:18 -0500 Subject: [PATCH 1/6] LANDER.md section 7: record owner ruling anf3x2 on proven-equal plumbing merges (vault #3878 item 1) Section 7's "When no worktree can be checked out" table sanctions plumbing only while the content is the Lander's own. It did not record owner ruling anf3x2 (2026-10-10, key coord/merge/plumbing-after-worktree-gate), the one exception for a merge commit on another seat's branch after the worktree gate refuses git merge, when proven equal to a normal merge. The scope-limit row keeps its text and names the exception. A block after the table quotes the wiki event's decision text verbatim, gives the owner's words and where they were given, and states that it grants a Builder nothing (BUILDER.md 1b). --- roles/LANDER.md | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/roles/LANDER.md b/roles/LANDER.md index 183450d..b738d42 100644 --- a/roles/LANDER.md +++ b/roles/LANDER.md @@ -1389,11 +1389,24 @@ routing consequence of both, and it is invisible until a worker hits it. | Why the lander can always write it | The banner edit is exempt from ownership whenever the heading is already on `origin/main`, which is exactly the closing case. | | When no worktree can be checked out | Build the commit with plumbing: `read-tree` into a temp index, `update-index`, `commit-tree`, push the resulting sha. It touches no working tree at all, so it cannot cause the collision the gate exists to prevent. | | The condition that keeps plumbing honest | State that you did so, and run by hand the checks pre-commit would have run. | -| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. | +| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. One exception: *a proven-equal merge commit on another seat's branch*. | | Then hand it over STATED, not executed | Name the conflicting file, name the resolution, and say a seat with a working tree is needed. | | **NARROWED 2026-09-21.** That row is the last resort, not the first move | A CONTENT conflict is yours: cut a worktree and resolve it. Section *4c-quinquies*. Hand over only where you genuinely cannot reach the branch. | | Measured 2026-08-22 | A lander blocked by the worktree gate on two peer branches left a two-minute keep-both-sides resolution written out for whoever could reach the branch. That is a routing act, not a refusal. | +**ADDED 2026-10-19: a proven-equal merge commit on another seat's branch.** This owner ruling is +the one exception to *The scope limit on that escape*. The fleet wiki records it in these words: + +> *"Owner ruling 2026-10-10: a merge commit built with git plumbing (merge-tree, commit-tree) after the worktree gate refuses git merge is allowed on another seat's branch only when it is proven equal to a normal merge (same tree as an independent merge, remerge-diff and checks recorded on the PR)"* + +| Item | Rule | +| --- | --- | +| The ruling | OWNER RULING 2026-10-10, key `coord/merge/plumbing-after-worktree-gate`. | +| Where the owner gave it | In the Lander's chat, in the words *"go for both as recommended"*, answering a question raised on vault PR 2314. | +| Where to read it | Wiki event `20261010T010851106Z-anf3x2`, at `wiki/events/2026/10/20261010T010851106Z-anf3x2.json` on vault `main`. | +| Its reach | Every condition in the quoted text binds. Anything it does not cover stays under *The scope limit on that escape*. | +| A Builder | It grants a Builder nothing. A Builder that a gate refuses stops, under [BUILDER.md](BUILDER.md) *1b. Acts that no condition makes correct*. | + ### 7c. The BACKLOG tail is a serialization point, and so is the ADR index Every backlog-filing merge appends to the same tail, so every such merge invalidates every other open From 642b45b3f9abc70be5ce4ec6f480e351ac843274 Mon Sep 17 00:00:00 2001 From: Scott Hall Date: Mon, 19 Oct 2026 15:55:07 -0500 Subject: [PATCH 2/6] LANDER.md section 7: record owner ruling anf3x2 on proven-equal plumbing merges (vault #3878 item 1) Repair round 1, from the code-review skill at xhigh. - korus is public and roles/WIKI.md ("The content lives in the record repository, never in korus") forbids pasting an event into a korus file. The verbatim quote of event anf3x2 is removed; the event id is cited and its conditions are listed in its own words, one per row, adding none. - The scope-limit row is restored to its merged text. A WIDENED row names the exception with its trigger (plumbing after the worktree gate refuses git merge), not "the one exception". - The Builder row asserted a Lander decision (vault #3878 item 2, owner confirmation open) and miscited BUILDER.md 1b. It now says only that this playbook grants no other seat anything, and that the Builder question is open. - The record's trust: generated is stated. --- roles/LANDER.md | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/roles/LANDER.md b/roles/LANDER.md index b738d42..f5fe2dc 100644 --- a/roles/LANDER.md +++ b/roles/LANDER.md @@ -1389,23 +1389,31 @@ routing consequence of both, and it is invisible until a worker hits it. | Why the lander can always write it | The banner edit is exempt from ownership whenever the heading is already on `origin/main`, which is exactly the closing case. | | When no worktree can be checked out | Build the commit with plumbing: `read-tree` into a temp index, `update-index`, `commit-tree`, push the resulting sha. It touches no working tree at all, so it cannot cause the collision the gate exists to prevent. | | The condition that keeps plumbing honest | State that you did so, and run by hand the checks pre-commit would have run. | -| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. One exception: *a proven-equal merge commit on another seat's branch*. | +| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. | +| **WIDENED 2026-10-19, by an owner ruling of 2026-10-10.** The scope limit on that escape has an exception | A merge commit on another seat's branch, built with plumbing after the worktree gate refuses `git merge`, when proven equal. *Owner ruling anf3x2: a proven-equal plumbing merge* states its conditions. | | Then hand it over STATED, not executed | Name the conflicting file, name the resolution, and say a seat with a working tree is needed. | | **NARROWED 2026-09-21.** That row is the last resort, not the first move | A CONTENT conflict is yours: cut a worktree and resolve it. Section *4c-quinquies*. Hand over only where you genuinely cannot reach the branch. | | Measured 2026-08-22 | A lander blocked by the worktree gate on two peer branches left a two-minute keep-both-sides resolution written out for whoever could reach the branch. That is a routing act, not a refusal. | -**ADDED 2026-10-19: a proven-equal merge commit on another seat's branch.** This owner ruling is -the one exception to *The scope limit on that escape*. The fleet wiki records it in these words: +**Owner ruling anf3x2: a proven-equal plumbing merge.** Added 2026-10-19. Its record is wiki event +`20261010T010851106Z-anf3x2`, key `coord/merge/plumbing-after-worktree-gate`, dated 2026-10-10. -> *"Owner ruling 2026-10-10: a merge commit built with git plumbing (merge-tree, commit-tree) after the worktree gate refuses git merge is allowed on another seat's branch only when it is proven equal to a normal merge (same tree as an independent merge, remerge-diff and checks recorded on the PR)"* +The record gives the owner's answer, in the Lander's chat, as *"go for both as recommended"*, to a +question raised on vault PR 2314. The record itself is marked `trust: generated`. It is the +Lander's note of the ruling, not the owner's text. -| Item | Rule | +The wiki rule keeps an event's text out of korus, so the conditions are listed here, not quoted. +They follow the record's words and add none. *The content lives in the record repository, never in +korus*, in [WIKI.md](WIKI.md), is that rule. + +| Condition | What the record requires | | --- | --- | -| The ruling | OWNER RULING 2026-10-10, key `coord/merge/plumbing-after-worktree-gate`. | -| Where the owner gave it | In the Lander's chat, in the words *"go for both as recommended"*, answering a question raised on vault PR 2314. | -| Where to read it | Wiki event `20261010T010851106Z-anf3x2`, at `wiki/events/2026/10/20261010T010851106Z-anf3x2.json` on vault `main`. | -| Its reach | Every condition in the quoted text binds. Anything it does not cover stays under *The scope limit on that escape*. | -| A Builder | It grants a Builder nothing. A Builder that a gate refuses stops, under [BUILDER.md](BUILDER.md) *1b. Acts that no condition makes correct*. | +| What may be built | A merge commit, built with git plumbing: `merge-tree`, then `commit-tree`. | +| When | Only after the worktree gate refuses `git merge`. | +| Where | On another seat's branch. | +| The proof | Proven equal to a normal merge: the same tree as an independent merge, with the remerge-diff and the checks recorded on the PR. | +| Anything these rows do not cover | It stays under *The scope limit on that escape*. | +| Who it reaches | This playbook records it for the Lander and grants no other seat anything. Whether it reaches a Builder is open, and this playbook does not settle it. | ### 7c. The BACKLOG tail is a serialization point, and so is the ADR index From b9fa015c8061a077aaefe46a2da0073991098ede Mon Sep 17 00:00:00 2001 From: Scott Hall Date: Mon, 19 Oct 2026 16:12:37 -0500 Subject: [PATCH 3/6] LANDER.md section 7: record owner ruling anf3x2 on proven-equal plumbing merges (vault #3878 item 1) Repair round 2, from the code-review skill at xhigh. The round 1 table restated the event clause by clause, which is still event text in public korus under roles/WIKI.md, and it drifted: the proof row split the record's parenthetical. This round cites the event by id and key and points the Lander at it, with no restated conditions to drift: - The scope-limit row keeps its merged text and gains a WIDENED marker naming "Owner ruling anf3x2", so no row sits between it and "Then hand it over STATED". - The block after the table names the trigger (a plumbing merge commit on another seat's branch after the worktree gate refuses git merge), tells the Lander to read the event and meet every condition it states, proof included, and says the record is trust: generated. - No owner words, vault PR number or private path are carried. No Builder rule is asserted; the playbook says only that it grants no other seat anything. --- roles/LANDER.md | 28 +++++++++------------------- 1 file changed, 9 insertions(+), 19 deletions(-) diff --git a/roles/LANDER.md b/roles/LANDER.md index f5fe2dc..ccf99a8 100644 --- a/roles/LANDER.md +++ b/roles/LANDER.md @@ -1389,31 +1389,21 @@ routing consequence of both, and it is invisible until a worker hits it. | Why the lander can always write it | The banner edit is exempt from ownership whenever the heading is already on `origin/main`, which is exactly the closing case. | | When no worktree can be checked out | Build the commit with plumbing: `read-tree` into a temp index, `update-index`, `commit-tree`, push the resulting sha. It touches no working tree at all, so it cannot cause the collision the gate exists to prevent. | | The condition that keeps plumbing honest | State that you did so, and run by hand the checks pre-commit would have run. | -| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. | -| **WIDENED 2026-10-19, by an owner ruling of 2026-10-10.** The scope limit on that escape has an exception | A merge commit on another seat's branch, built with plumbing after the worktree gate refuses `git merge`, when proven equal. *Owner ruling anf3x2: a proven-equal plumbing merge* states its conditions. | +| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. **WIDENED 2026-10-19:** except under *Owner ruling anf3x2*. | | Then hand it over STATED, not executed | Name the conflicting file, name the resolution, and say a seat with a working tree is needed. | | **NARROWED 2026-09-21.** That row is the last resort, not the first move | A CONTENT conflict is yours: cut a worktree and resolve it. Section *4c-quinquies*. Hand over only where you genuinely cannot reach the branch. | | Measured 2026-08-22 | A lander blocked by the worktree gate on two peer branches left a two-minute keep-both-sides resolution written out for whoever could reach the branch. That is a routing act, not a refusal. | -**Owner ruling anf3x2: a proven-equal plumbing merge.** Added 2026-10-19. Its record is wiki event -`20261010T010851106Z-anf3x2`, key `coord/merge/plumbing-after-worktree-gate`, dated 2026-10-10. +**Owner ruling anf3x2.** Added 2026-10-19. Wiki event `20261010T010851106Z-anf3x2`, key +`coord/merge/plumbing-after-worktree-gate`, records an owner ruling given in the Lander's chat. Its +record dates it 2026-10-10 (UTC). -The record gives the owner's answer, in the Lander's chat, as *"go for both as recommended"*, to a -question raised on vault PR 2314. The record itself is marked `trust: generated`. It is the -Lander's note of the ruling, not the owner's text. +It concerns a merge commit built with git plumbing on another seat's branch, after the worktree gate +refuses `git merge`. Read the event on vault `main` before you rely on it, and meet every condition +it states, its proof included. -The wiki rule keeps an event's text out of korus, so the conditions are listed here, not quoted. -They follow the record's words and add none. *The content lives in the record repository, never in -korus*, in [WIKI.md](WIKI.md), is that rule. - -| Condition | What the record requires | -| --- | --- | -| What may be built | A merge commit, built with git plumbing: `merge-tree`, then `commit-tree`. | -| When | Only after the worktree gate refuses `git merge`. | -| Where | On another seat's branch. | -| The proof | Proven equal to a normal merge: the same tree as an independent merge, with the remerge-diff and the checks recorded on the PR. | -| Anything these rows do not cover | It stays under *The scope limit on that escape*. | -| Who it reaches | This playbook records it for the Lander and grants no other seat anything. Whether it reaches a Builder is open, and this playbook does not settle it. | +The event is marked `trust: generated`: it is the Lander's note of the ruling, not the owner's text. +This playbook records the ruling for the Lander, and recording it here grants no other seat anything. ### 7c. The BACKLOG tail is a serialization point, and so is the ADR index From 600a895a6a39f4462dd15e00e8a14a9cc70ba0dc Mon Sep 17 00:00:00 2001 From: Scott Hall Date: Tue, 20 Oct 2026 08:55:07 -0500 Subject: [PATCH 4/6] LANDER.md section 7: record owner ruling anf3x2 on proven-equal plumbing merges (vault #3878 item 1) Records in roles/LANDER.md section 7, in korus's own words, owner ruling 2026-10-10 (anf3x2), confirmed and its proof set by owner ruling 2026-10-20. The wiki event id and key are cited as the record pointer; no event text is quoted, per roles/WIKI.md. The scope-limit row is unchanged. A new last row, marked WIDENED 2026-10-20, names the one exception and points to a block after the table. The block states the scope (a merge commit built with merge-tree then commit-tree on another seat's branch, after the worktree gate refuses git merge, allowed only when proven equal to a normal merge) and the three-part proof: the same tree as an independent merge, a remerge-diff that is empty or whose conflict resolution had its own code review, and checks recorded on the PR. It grants no other seat anything, and a Builder whose gate refuses still stops and reports. --- roles/LANDER.md | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/roles/LANDER.md b/roles/LANDER.md index ccf99a8..f511062 100644 --- a/roles/LANDER.md +++ b/roles/LANDER.md @@ -1389,21 +1389,27 @@ routing consequence of both, and it is invisible until a worker hits it. | Why the lander can always write it | The banner edit is exempt from ownership whenever the heading is already on `origin/main`, which is exactly the closing case. | | When no worktree can be checked out | Build the commit with plumbing: `read-tree` into a temp index, `update-index`, `commit-tree`, push the resulting sha. It touches no working tree at all, so it cannot cause the collision the gate exists to prevent. | | The condition that keeps plumbing honest | State that you did so, and run by hand the checks pre-commit would have run. | -| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. **WIDENED 2026-10-19:** except under *Owner ruling anf3x2*. | +| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. | | Then hand it over STATED, not executed | Name the conflicting file, name the resolution, and say a seat with a working tree is needed. | | **NARROWED 2026-09-21.** That row is the last resort, not the first move | A CONTENT conflict is yours: cut a worktree and resolve it. Section *4c-quinquies*. Hand over only where you genuinely cannot reach the branch. | | Measured 2026-08-22 | A lander blocked by the worktree gate on two peer branches left a two-minute keep-both-sides resolution written out for whoever could reach the branch. That is a routing act, not a refusal. | +| **WIDENED 2026-10-20, by owner rulings of 2026-10-10 and 2026-10-20.** One exception, executed rather than stated | A proven-equal plumbing merge commit on another seat's branch. *Owner ruling anf3x2*, below, holds its scope and its proof. Every other case is still handed over stated. | -**Owner ruling anf3x2.** Added 2026-10-19. Wiki event `20261010T010851106Z-anf3x2`, key -`coord/merge/plumbing-after-worktree-gate`, records an owner ruling given in the Lander's chat. Its -record dates it 2026-10-10 (UTC). +**Owner ruling anf3x2.** Owner ruling 2026-10-10 (anf3x2), confirmed and its proof set by owner +ruling 2026-10-20. The record is wiki event `20261010T010851106Z-anf3x2`, key +`coord/merge/plumbing-after-worktree-gate`, on vault `main`. -It concerns a merge commit built with git plumbing on another seat's branch, after the worktree gate -refuses `git merge`. Read the event on vault `main` before you rely on it, and meet every condition -it states, its proof included. +After the worktree gate refuses `git merge`, a merge commit built with `merge-tree` then +`commit-tree` is allowed on another seat's branch only when proven equal to a normal merge. + +The proof has three parts, and each is required: + +1. The same tree as an independent merge. +2. A remerge-diff that is empty, or whose conflict resolution had its own code review. +3. Checks recorded on the PR. -The event is marked `trust: generated`: it is the Lander's note of the ruling, not the owner's text. This playbook records the ruling for the Lander, and recording it here grants no other seat anything. +A Builder whose gate refuses still stops and reports. ### 7c. The BACKLOG tail is a serialization point, and so is the ADR index From 661f351cf4a19608e2e8f032e40dbe0a0a8cb1ab Mon Sep 17 00:00:00 2001 From: Scott Hall Date: Tue, 20 Oct 2026 09:08:56 -0500 Subject: [PATCH 5/6] LANDER.md section 7: record owner ruling anf3x2 on proven-equal plumbing merges (vault #3878 item 1) Records in roles/LANDER.md section 7, in korus's own words, owner ruling 2026-10-10 (anf3x2), confirmed and its proof set by owner ruling 2026-10-20. The wiki event id and key are cited as the record pointer; no event text is quoted, per roles/WIKI.md. The scope-limit row keeps its text and gains a WIDENED 2026-10-20 marker pointing to a new last row. That row names the exception, says any other plumbing on another seat's branch is still handed over stated, and points to a block after the table. The block states the scope (where the worktree gate refuses git merge on another seat's branch, a merge commit built with merge-tree then commit-tree, standing only if proven equal to a normal merge) and the three-part proof: the same tree as an independent merge, a remerge-diff that is empty or whose conflict resolution had its own code review, and checks recorded on the PR. It grants no other seat anything, and a Builder whose gate refuses still stops and reports. --- roles/LANDER.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/roles/LANDER.md b/roles/LANDER.md index f511062..f84ac12 100644 --- a/roles/LANDER.md +++ b/roles/LANDER.md @@ -1389,18 +1389,18 @@ routing consequence of both, and it is invisible until a worker hits it. | Why the lander can always write it | The banner edit is exempt from ownership whenever the heading is already on `origin/main`, which is exactly the closing case. | | When no worktree can be checked out | Build the commit with plumbing: `read-tree` into a temp index, `update-index`, `commit-tree`, push the resulting sha. It touches no working tree at all, so it cannot cause the collision the gate exists to prevent. | | The condition that keeps plumbing honest | State that you did so, and run by hand the checks pre-commit would have run. | -| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. | +| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. **WIDENED 2026-10-20, by owner rulings:** see the last row. | | Then hand it over STATED, not executed | Name the conflicting file, name the resolution, and say a seat with a working tree is needed. | | **NARROWED 2026-09-21.** That row is the last resort, not the first move | A CONTENT conflict is yours: cut a worktree and resolve it. Section *4c-quinquies*. Hand over only where you genuinely cannot reach the branch. | | Measured 2026-08-22 | A lander blocked by the worktree gate on two peer branches left a two-minute keep-both-sides resolution written out for whoever could reach the branch. That is a routing act, not a refusal. | -| **WIDENED 2026-10-20, by owner rulings of 2026-10-10 and 2026-10-20.** One exception, executed rather than stated | A proven-equal plumbing merge commit on another seat's branch. *Owner ruling anf3x2*, below, holds its scope and its proof. Every other case is still handed over stated. | +| The exception to the scope limit above, by *Owner ruling anf3x2* | A plumbing merge commit on another seat's branch. The block below holds its scope and its proof. Any other plumbing on another seat's branch is still handed over stated. | **Owner ruling anf3x2.** Owner ruling 2026-10-10 (anf3x2), confirmed and its proof set by owner ruling 2026-10-20. The record is wiki event `20261010T010851106Z-anf3x2`, key `coord/merge/plumbing-after-worktree-gate`, on vault `main`. -After the worktree gate refuses `git merge`, a merge commit built with `merge-tree` then -`commit-tree` is allowed on another seat's branch only when proven equal to a normal merge. +Where the worktree gate refuses `git merge` on another seat's branch, the merge commit may be built +with `merge-tree` then `commit-tree` instead. It stands only if proven equal to a normal merge. The proof has three parts, and each is required: From 34cbf27545731e53e16a0634941de5a069f5aed9 Mon Sep 17 00:00:00 2001 From: Scott Hall Date: Tue, 20 Oct 2026 09:19:49 -0500 Subject: [PATCH 6/6] LANDER.md section 7: record owner ruling anf3x2 on proven-equal plumbing merges (vault #3878 item 1) Records in roles/LANDER.md section 7, in korus's own words, owner ruling 2026-10-10 (anf3x2), confirmed and its proof set by owner ruling 2026-10-20. The wiki event id and key are cited as the record pointer. The scope-limit row keeps its text and gains a WIDENED 2026-10-20 marker pointing to the block after the table. A new last row names the exception and says any other plumbing on another seat's branch is still handed over stated. The block states the scope: after the worktree gate refuses git merge, a merge commit built with merge-tree then commit-tree is allowed on another seat's branch only when proven equal to a normal merge. It states the three-part proof: the same tree as an independent merge, a remerge-diff that is empty or whose conflict resolution had its own code review, and checks recorded on the PR. It grants no other seat anything, and a Builder whose gate refuses still stops and reports. --- roles/LANDER.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/roles/LANDER.md b/roles/LANDER.md index f84ac12..a32c143 100644 --- a/roles/LANDER.md +++ b/roles/LANDER.md @@ -1389,7 +1389,7 @@ routing consequence of both, and it is invisible until a worker hits it. | Why the lander can always write it | The banner edit is exempt from ownership whenever the heading is already on `origin/main`, which is exactly the closing case. | | When no worktree can be checked out | Build the commit with plumbing: `read-tree` into a temp index, `update-index`, `commit-tree`, push the resulting sha. It touches no working tree at all, so it cannot cause the collision the gate exists to prevent. | | The condition that keeps plumbing honest | State that you did so, and run by hand the checks pre-commit would have run. | -| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. **WIDENED 2026-10-20, by owner rulings:** see the last row. | +| The scope limit on that escape | **It is sanctioned only while the content is YOURS.** On another seat's branch you cannot run their gates for them, and the same commands there become routing around a control. **WIDENED 2026-10-20, by owner rulings:** see *Owner ruling anf3x2*, below. | | Then hand it over STATED, not executed | Name the conflicting file, name the resolution, and say a seat with a working tree is needed. | | **NARROWED 2026-09-21.** That row is the last resort, not the first move | A CONTENT conflict is yours: cut a worktree and resolve it. Section *4c-quinquies*. Hand over only where you genuinely cannot reach the branch. | | Measured 2026-08-22 | A lander blocked by the worktree gate on two peer branches left a two-minute keep-both-sides resolution written out for whoever could reach the branch. That is a routing act, not a refusal. | @@ -1399,8 +1399,8 @@ routing consequence of both, and it is invisible until a worker hits it. ruling 2026-10-20. The record is wiki event `20261010T010851106Z-anf3x2`, key `coord/merge/plumbing-after-worktree-gate`, on vault `main`. -Where the worktree gate refuses `git merge` on another seat's branch, the merge commit may be built -with `merge-tree` then `commit-tree` instead. It stands only if proven equal to a normal merge. +After the worktree gate refuses `git merge`, a merge commit built with `merge-tree` then +`commit-tree` is allowed on another seat's branch only when proven equal to a normal merge. The proof has three parts, and each is required: