agent-send.sh derived the sender label from the DESTINATION socket flag, so cross-socket messages were stamped with an arbitrary session from the socket the sender was not attached to. One lead's messages arrived for hours stamped as the recipient. Fixed on main; source now comes from the caller's own $TMUX. The label was false and plausible simultaneously, which is the only dangerous kind — a garbled label gets questioned, a label naming a real seat on a real socket does not. Same family as D-33's summary that resembles an enumeration and D-48's boundary statement that reads as rigorous. The transferable part is the fix's design choice: it now reports "?" rather than borrowing a plausible name. That is the same discipline as NOT-MEASURED, adopted the same day on the credential thread — absent must be rendered absent, not as a pass and not as a fail. An unknown rendered as a plausible value is consumed as fact; an unknown rendered as unknown is consumed as a question. Two subsystems, one day, same conclusion, independently. Audited my ledger on receipt: clean, zero mis-attributed sources in TASKS.md or BOARD.md. The reason is practice rather than luck — rulings were recorded from the message BODY, which carried its own [mos-claude -> mos-remediation] header, not from the transport envelope. Where a message self-identifies, the body is the claim and the envelope is metadata, and the envelope was the broken part. Routing defect now doctrine: the USC message was addressed to "orchestrator", a ROLE that exists on each estate, and agent-send resolves a session NAME. Binding rule: address seats, not roles, and estate-qualify any name that exists on both estates. The cost was bounded only because the recipient declined to act on another estate's delivery while still checking whether any line of it constrained its own — declining to act but silently letting a stale cross-estate constraint ride would have been the actual failure. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
7.4 KiB
mos-remediation — LIVE BOARD (keep < 8 KB)
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).
Head
- Charter + 15 decisions + 4-build plan:
MISSION.md. Backlog + all findings:TASKS.md. - Planning DONE (58 tasks, P0–P5). DECISION-1/2/3 all RULED by Mos 2026-07-31 (
TASKS.md§5) — nothing is waiting on a decision. D-2's availability target is Jason-pending and non-blocking. - Executing, not planning. RM-01 is MERGED; three lanes are live (see In-flight).
- Orchestrator seat
mos-remediationLIVE, owns the mission, resumed across the rotation seam 2026-08-01 and re-attested to Mos from the files. Residency attestation: PASS.
In-flight
| Task | Owner | State |
|---|---|---|
| RM-01 checkout | — | MERGED f58b3699 (#1027) |
| RM-03 queue guard | Jason (re-sync) | ✅ MERGED 58b971ab (#1032), #1019 closed. ⚠ NOT DELIVERED: installed guard still the broken one (291 lines / 0 ASSERTED_NOT_READY vs main 482 / 5). Re-sync via mosaic upgrade, then prove it blocks a KNOWN-RED pipeline — D-51 |
| RM-02 registry ★key | rev-974 | RE-REVIEW @ e910a45a — (d)-strict history REMOVED + blocker 2 NARROWED (D-52) + blocker 3 + renderer. Overclaim control fires at exit 84, verified by orchestrator. CI 2201 10/10. ACs @ dde38717 |
| 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
- Lane state lives in the In-flight table above — this item does NOT restate it. It went stale three times in one session by duplicating that table (D-26's class). Read the table. ⚠ And re-derive any board claim from the provider before load-bearing use (D-43) — the board is sole-written and has no independent verifier.
docs/remediation/TASKS.mdis authoritative, not the newest voice in a chat. It holds 54 findings (D-1…D-6 inBOARD-LEDGER.md, D-7…D-53 + 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.MISSION.mdcarries the first-class principles — read them there, they are not listed here. Two added 2026-08-01: the anchor must live outside the audited party's authority (D-19/D-25/D-45, third arrival) and no universally-quantified check may pass over an empty set (D-44/D-46).- Seat identity:
export MOSAIC_GIT_IDENTITY=<seat>is stripped by a context reset (D-34) — every dispatch/rehydration brief must re-export it, or the seat cannot use its credentials. - Scan CI from
-f json, never default text — text mode omitsclone(D-33). State counts. - The queue guard is zero-information until RM-03 merges (D-23) — never cite its green.
- The bounded CI re-roll used on RM-02 was a one-time stopgap, NOT policy. A per-PR free re-roll is D-21 normalisation. Do not repeat it; RM-61 is the fix.
Delivery gates — REFERENCE, do not restate
Canonical: ~/.config/mosaic/fleet/roles.local/merge-gate.md (verdict authority) +
~/.config/mosaic/fleet/roles/validator.md. Order and the freeze/zero-information rules: MISSION.md
and KICKSTART.md. Read them there (why: D-26, in BOARD-LEDGER.md).
Fleet seats
Roster rolled verbatim to BOARD-LEDGER.md; live truth is mosaic fleet ps.
Gate status
- Freeze: LIFTED for this workstream only.
- Git identity: orchestrator runs
MOSAIC_GIT_IDENTITY=mos-dt-0INTERIM. Mos ruled gate-16 HOLDS (author≠reviewer is what gate-16 protects; rev-974 reviews, mos-dt-0 never self-reviews). Dedicated identity TRACKED, Mos provisions. - Capability + seat identity (D-11b / D-11a, incl. the false-NEGATIVE twin): authoritative in
TASKS.md. Short form — assert the DIFFERENTIAL as that seat (authenticatedpush:truevs unauthenticatedpush:false); a single endpoint can be true for anyone or 403 for an unrelated scope. Full text rolled toBOARD-LEDGER.md. - ⚠ LIVE HAZARD (D-37) — one shared
.git/configre-identifies EVERY worktree at once. Every seat, includingrev-974's review worktree, currently authors ascoder-mos1;MOSAIC_GIT_IDENTITYdoes not override it. STANDING ORDER: commit with explicitgit -c user.name=<seat> -c user.email=<seat>@…, and NOBODY rewrites the shared config mid-flight. Real fix authorised, Mos owns it, sequenced at a quiet seam. #1024 implicated. Detail: D-37. - Standing worker-brief doctrine (mandatory in EVERY brief): re-export
MOSAIC_GIT_IDENTITY(D-34); commit early/WIP (D-31); don't weaken a RED test to pass; if a check is unrunnable SAY SO, never substitute;agent-send -fnever-m; artifacts off shared/tmp; scan CI from-f json(D-33); relay observations into an open review, NEVER your own conclusion on an open check (D-39); the author never adjudicates their own PR's blocker status — surface evidence, prepare the fix, hold. - Remote control: native
/remote-controlNOT wired in this runtime. Path is Mos-relay (Jason ↔ mos-claude via Discord ↔ mos-remediation via agent-send). Not a blocker.
Decisions log — full record in TASKS.md
All 54 findings (D-1…D-6 in BOARD-LEDGER.md, D-7…D-53 + 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.