From bf561ff29644afd7de7daadf184ceda609012e5b Mon Sep 17 00:00:00 2001 From: Levi Neuwirth Date: Sun, 9 Aug 2026 15:19:58 +0200 Subject: [PATCH] docs: record PR #228 and its merge block The lane heading said "no PR yet". It also needs to carry WHY the PR is merge-blocked, because a reader who finds only "blocked" will treat it as backlog hygiene and unblock it by rerunning the gate. The problem is gate integrity. --protocol promises the CRDT workspace sweep, that sweep has a documented precondition (handoff section 5), and the script does not run it --- confirmed by reading the plan emitter, not inferred from the failure. So a --protocol result can be decided by whether the build directory happened to contain pmacs-gpu rather than by the diff under test. It was latent until #225 gave each worktree its own target directory. A shared target dir usually already had pmacs-gpu built, which satisfied the precondition by accident and hid the omission. Unblocking needs both halves recorded: the scripts/gate repair as its own framing and PR, and then a fresh-target rerun of this branch protocol gate under the repaired script. A rerun alone would reproduce the same accident. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_016bqGA6s9tTUFzYpbeW3tai --- docs/active-work.md | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/docs/active-work.md b/docs/active-work.md index 3323bca..57788bc 100644 --- a/docs/active-work.md +++ b/docs/active-work.md @@ -265,7 +265,29 @@ also removed: this branch's "R8 NEEDS A LANE" investigation block, and durable facts are in the retired registry row and the handoff §6 census. -## Discovery Stage 2 — IMPLEMENTED, no PR yet +## Discovery Stage 2 — PR #228 OPEN, **MERGE-BLOCKED** + +**PR #228** — https://github.com/levineuwirth/pmacs/pull/228. Opened +2026-08-09 at `2d298dd`. **Open for review, not for merge.** + +**The block is a gate-integrity problem, not backlog hygiene.** This +lane's gate is `scripts/gate --protocol`, which promises the CRDT +workspace sweep. That sweep's documented precondition is +`cargo build --workspace --no-default-features --features luajit,crdt` +(handoff §5), and **the script does not run it** — confirmed by reading +its plan emitter. On a fresh per-worktree target directory the sweep +fails on twelve `gpu_invocation_acceptance` tests missing the +`pmacs-gpu` binary, so a `--protocol` result can be decided by the +state of the build directory rather than by the diff. + +Latent until #225 gave each worktree its own target dir — a shared one +usually already had `pmacs-gpu` built, satisfying the precondition by +accident. It surfaced on this branch's first gate run. + +**Unblocking requires both:** the `scripts/gate` repair, in its own +narrow framing and its own PR (explicitly **not** folded into this +feature branch), and then a **fresh-target rerun of this branch's +protocol gate** under the repaired script. **Written with the lane's first commit**, per the standing correction from #171 and #215.