docs(remediation): RM-61 MERGED; bank D-43 — I inverted a board fact while compressing to fit the budget

#1033 merged f4fd5967, verified by property: merged=true + merge commit, #1034 (delivery) CLOSED,
#1000 (retirement trigger) still OPEN. The exemption is on main and RM-02 is unblocked.

D-43 is mine. Compressing RM-02's board row to meet the 8KB budget, I turned "2 reviews clear" into
"2 live REQUEST_CHANGES" — an inversion. Provider truth: reviews 63 and 65 are at superseded heads and
live REQUEST_CHANGES at f9746b23 is empty. The real state is subtler than either wording: no live
blocker AND no live approval, because the head carries no review at all.

Caught only by re-deriving RM-02's state from the provider before dispatching, not by re-reading the
board. I was one message from briefing f10-coder to remediate two blocking reviews that do not exist.

The transferable part: this board carries a hard <8KB budget, it exceeded that budget four times in one
session, and each time I shaved prose to fit. Compression IS restatement, and this board's own rule is
"REFERENCE, do not restate" (D-26) because restatement is lossy every time. The budget therefore forces
the exact operation the board forbids, on its most load-bearing table. I flagged that as a risk earlier
in the session; it then materialised as an actual error.

Rule banked: meet a size budget by ROLLING content out to BOARD-LEDGER.md, never by rewording what
stays. Deleting a row and pointing at its authoritative home is safe; paraphrasing to save bytes is not.
Applied immediately — this commit rolls the Decisions-log narrative out verbatim rather than trimming
it, and the board is back under budget at 8096.

And the deeper one, onto RM-34: the orchestrator is the board's sole writer, so nothing external checks
the board against reality. Code has rev-974, gates have the merge-gate, CI has the JSON scan — the
control plane has no independent verifier. Handoff validation must include re-deriving the board's
claims from the provider, not merely confirming a successor can read the file.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
mos-dt-0
2026-08-01 09:56:44 -05:00
co-authored by Claude Opus 5
parent f3c100f814
commit 8cef39f924
3 changed files with 62 additions and 19 deletions
+12
View File
@@ -39,3 +39,15 @@ Running the required `ci-queue-wait.sh --purpose push` before pushing produced `
### **D-8 / P-CONFORMANCE-001 — a PRE-REGISTERED acceptance check that was not runnable as written.**
PR #1025 AC2's fixture `mkdir -p apps/*/venv/lib` creates a literal `apps/*/venv/lib` dir when the glob is unmatched — it did not test what it claimed. rev-974 ran it exactly as written, caught it, re-ran the intended assertion at an explicit path, and **disclosed** rather than silently substituting a working fixture and reporting PASS. **Pre-registration protects a check from being retrofitted to the implementation; it does not make the check correct.** An unverified gate appeared inside the mechanism built to catch unverified gates. Hard requirement on RM-02: the registry must self-verify that every registered case runs AND can fail — presence is not evidence.
<!-- board-roll: Decisions-log narrative rolled from BOARD.md 2026-08-01 (D-43: meet the
byte budget by ROLLING OUT, never by rewording what stays) -->
### Decisions log — full record in [`TASKS.md`](./TASKS.md)
All 44 findings (D-1…D-6 in `BOARD-LEDGER.md`, D-7…D-43 + D-38c in `TASKS.md`) and every ruling with its
rationale live there. **Not duplicated here** — a second copy is a second thing to go stale, which this
board had done three times in one night (gate list, capability registry, DECISION-1 status), and three
more times by the next rotation seam (RM-61 "building", "nothing implemented yet", DECISION-1/2/3
"must be ruled"). The rulings a fresh seat needs are items 47 above; they are **not** repeated here,
because that repetition is what went stale.
+16 -19
View File
@@ -1,6 +1,6 @@
# mos-remediation — LIVE BOARD (keep < 8 KB)
**Phase:** EXECUTING — RM-03 at owner-merge; RM-02 blocked on RM-61; RM-61 **awaiting RE-GATE (Mos)**.
**Phase:** EXECUTING — RM-03 at owner-merge; RM-61 **MERGED**; **RM-02 keystone is the front**.
**Updated:** 2026-08-01 — seam crossed; successor seat resumed, attested from the files, and is driving.
⚠ That was a **MANUAL pane respawn** (prior seat ~803k tokens): it validates the checkpoint+rehydration
**design**, NOT a lifecycle **mechanism** — P-LIFECYCLE rotation does not exist yet (**D-41 / RM-62**).
@@ -16,21 +16,21 @@
## In-flight
| Task | Owner | State |
| ------------------- | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| RM-01 checkout | — | **MERGED** `f58b3699` (#1027) |
| RM-03 queue guard | **Jason** | **GO** @ `78ec47cd` (cmt 20392) — HELD FOR OWNER MERGE. Head unmoved; GO commit-bound, VOID if it moves — **do not push #1032** |
| RM-02 registry ★key | — | **BLOCKED on RM-61.** Complete @ `f9746b23`, head FROZEN, 2 live REQUEST_CHANGES. `ci-postgres` FAIL on #2187 **and** #2188 |
| RM-61 CI exemption | **MOS** | **NO-GO cleared @ `57cae04f`** — gate flagged missing `Closes`; issue **#1034** filed + linked, head NEVER moved, review 70 CURRENT. **Re-gate requested** |
| RM-59 / RM-60 | Jason (infra) | tracked deps; RM-60 option **B** |
| #1023 queue attempt | Jason | SUPERSEDED-PENDING-JASON — live REQUEST_CHANGES, do **not** merge |
| Task | Owner | State |
| ------------------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| RM-01 checkout | — | **MERGED** `f58b3699` (#1027) |
| RM-03 queue guard | **Jason** | **GO** @ `78ec47cd` (cmt 20392) — HELD FOR OWNER MERGE. Head unmoved; GO commit-bound, VOID if it moves — **do not push #1032** |
| RM-02 registry ★key | f10-coder | ★ **UNBLOCKED — now the front.** @ `f9746b23`; **zero live REQUEST_CHANGES** (63/65 superseded) and **no live approval either**. Next: rebase onto `f4fd5967`, re-CI, review at the new head |
| RM-61 CI exemption | | **MERGED** `f4fd5967` (#1033). #1034 closed; **#1000 stays OPEN** (retirement trigger). Exemption is on `main` |
| RM-59 / RM-60 | Jason (infra) | tracked deps; RM-60 option **B** |
| #1023 queue attempt | Jason | SUPERSEDED-PENDING-JASON — live REQUEST_CHANGES, do **not** merge |
### For the incoming orchestrator — read this before acting
1. **Nothing is waiting on you that is urgent.** RM-03 waits on Jason; RM-61 is gate-ready and waits on
Mos; RM-02 unblocks once RM-61 merges. Read the record before touching any lane.
2. **`docs/remediation/TASKS.md` is authoritative**, not the newest voice in a chat. It holds 43 findings
(D-1…D-6 in `BOARD-LEDGER.md`, D-7…D-42 + D-38c in TASKS.md), every ruling with its rationale, and the
1. **RM-02 is the front.** RM-03 waits on Jason; RM-61 MERGED; RM-02 needs rebase+CI+review on
post-#1033 main. ⚠ Re-derive board claims from the provider before acting (**D-43**).
2. **`docs/remediation/TASKS.md` is authoritative**, not the newest voice in a chat. It holds 44 findings
(D-1…D-6 in `BOARD-LEDGER.md`, D-7…D-43 + D-38c in TASKS.md), every ruling with its rationale, and the
requirements each finding placed on RM-02/RM-34/RM-50/RM-55.
3. **`MISSION.md` carries five first-class principles**, all earned by live failures — observe the
property not the proxy · pre-registration prevents retrofitting and nothing else · never ship an
@@ -91,9 +91,6 @@ board is one of the six stale restatements below.
## Decisions log — full record in [`TASKS.md`](./TASKS.md)
All 43 findings (D-1…D-6 in `BOARD-LEDGER.md`, D-7…D-42 + D-38c in `TASKS.md`) and every ruling with its
rationale live there. **Not duplicated here** — a second copy is a second thing to go stale, which this
board had done three times in one night (gate list, capability registry, DECISION-1 status), and three
more times by the next rotation seam (RM-61 "building", "nothing implemented yet", DECISION-1/2/3
"must be ruled"). The rulings a fresh seat needs are items 47 above; they are **not** repeated here,
because that repetition is what went stale.
All 44 findings (D-1…D-6 in `BOARD-LEDGER.md`, D-7…D-43 + D-38c in `TASKS.md`) and every ruling with
its rationale live there. **Not duplicated here.** The history of _why_ this board must not restate —
six stale copies across two seams — is rolled verbatim into [`BOARD-LEDGER.md`](./BOARD-LEDGER.md).
+34
View File
@@ -500,6 +500,40 @@ holds the head.** `coder-mos1` was RIGHT to want it fixed and WRONG to try to se
right again immediately after, ACKing the hold and volunteering unprompted that it held an unpushed
local commit. That disclosure is the behaviour to reinforce.
### D-43 — the ORCHESTRATOR inverted a board fact while COMPRESSING to meet the byte budget
Rewriting the board for a cold read, the orchestrator compressed RM-02's row from
_"Code complete @ `f9746b23`, own harness green in CI, **2 reviews clear**, head FROZEN"_ to
_"Complete @ `f9746b23`, head FROZEN, **2 live REQUEST_CHANGES**"_.
**That inverts the meaning.** "Two review rounds have been CLEARED" became "two blocking reviews are
LIVE". Verified against the provider: reviews 63 (`9b4d4beb`) and 65 (`38f1b249`) are both at
**superseded** heads; **live `REQUEST_CHANGES` at `f9746b23` = `[]`**. (The true current state is
subtler than either version: no live blocker **and** no live approval — the head has no review at all.)
**How it happened, which is the transferable part.** The board carries a hard `< 8 KB` budget. It
exceeded that budget **four separate times in one session**, and each time the orchestrator shaved prose
to fit. **Compression is a restatement operation** — and this board's own governing rule is
_"REFERENCE, do not restate"_ (D-26), because restatement is lossy every time. The byte budget therefore
**forces** the exact operation the board forbids, on the board's most load-bearing table.
**Caught by:** the orchestrator re-deriving RM-02's state from the provider **before dispatching** rather
than trusting its own board — one dispatch away from briefing `f10-coder` to remediate two blocking
reviews that do not exist. It was flagged as a _risk_ earlier in the session ("the 8 KB budget is under
structural pressure; the honest fix is rolling to `BOARD-LEDGER.md`, not shaving prose"). The risk then
materialised, self-inflicted, and was not detected by re-reading the board — only by leaving it.
> **RULE: a size budget on a state artifact must be met by ROLLING content out (`board-roll.sh` →
> `BOARD-LEDGER.md`), never by rewording what stays.** Rewording is restatement; restatement is how
> every stale-board finding in this ledger happened (D-26, D-36, D-38c). Deleting a whole row and
> pointing at its authoritative home is safe; paraphrasing a row to save bytes is not.
**And the deeper one:** the orchestrator is the board's sole writer, so **nothing external checks the
board against reality.** Every other artifact on this mission has an independent verifier — code has
`rev-974`, gates have the merge-gate, CI has the JSON scan. The control plane has none. That belongs on
**RM-34** ("a handoff must VALIDATE the checkpoint"): validation must include **re-deriving the board's
claims from the provider**, not merely confirming the file parses or that a successor can read it.
### D-42 — the head-pin is an enforcement mechanism whose NEGATIVE CONTROL has never been observed
`merge-gate.md` states it directly: **a successful merge is NOT evidence the pin worked.** Only the