# mos-remediation — LIVE BOARD (keep < 8 KB) **Phase:** PLANNING COMPLETE — reconciled backlog landed; 3 decisions block dispatch. **Updated:** 2026-07-31 (mos-remediation orchestrator; seat active on `mosaic-fleet`). ## Head - Mission charter + 15 decisions + 4-build plan: PERSISTED (`docs/remediation/MISSION.md`). - HOLD lifted for this workstream (Jason 2026-07-31). Nothing implemented yet — planning first. - Orchestrator seat `mos-remediation` is LIVE and owns the mission. Residency attestation: PASS. - **TASK-0 DONE** — checkout repaired, all three gates green HONESTLY (no `--no-verify`), branch pushed. - **TASK-1 DONE** — both planners delivered independently on clean context; reconciled into `TASKS.md` (58 tasks across P0–P5, 7 convergences, 7 adjudicated disagreements, 3 escalated decisions). - **NEXT ACTION IS NOT MINE:** DECISION-1/2/3 (`TASKS.md` §5) must be ruled before P0 dispatch. RM-01 is dispatchable immediately regardless — it depends on nothing and blocks everything. ## In-flight | Task | Owner | State | | ------------------------------------------------- | --------------- | ----------------------------------------------------- | | PR: `remediation/mission-setup` (docs-only) | mos-remediation | branch pushed; PR to open | | PR: `fix/hygiene-inert-format-gate` (full gate) | mos-remediation | branch pushed; needs rev-974 review + CI | | DECISION-1 wire-in point (charter change) | Mos / Jason | ESCALATED — both planners reject the charter's target | | DECISION-2 rollback artifact + availability trade | Jason | ESCALATED | | DECISION-3 RM-03 vs parked PR #1023 ownership | Mos | ESCALATED | | RM-01 reproducible checkout (unblocks everything) | unassigned | READY TO DISPATCH | ## Fleet seats - mos-remediation — project orchestrator (Claude, /src/mosaic-stack, socket `mosaic-fleet`) — ACTIVE - planner-opus — adversarial planner (robustness), Opus 5, socket `default` — DELIVERED, idle - planner-sol — adversarial planner (pragmatic), gpt-5.6-sol, socket `default` — DELIVERED, idle - rev-974 — mosaicstack reviewer identity (id 16, write:repository) — idle, on call - Mos (mos-claude) — lead coordinator, socket `default` — relay path to Jason ## Gate status - Delivery gates active: author≠reviewer, diff-blind pre-registered checks, CI-green, merged-PR completion. - Freeze: LIFTED for this workstream only. - Git identity: `MOSAIC_GIT_IDENTITY=mos-dt-0` INTERIM. 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. - Remote control: native `/remote-control` NOT wired in this runtime. Path is **Mos-relay** (Jason ↔ mos-claude via Discord ↔ mos-remediation via agent-send). Not a blocker. ## Sequencing (from MISSION.md) 1. Spine + choke-point service (MACP wiring @ mosaic_orchestrator.py::run_single_task) + PG/Redis ⚠ **CONTESTED — see DECISION-1.** Both planners independently reject this wire-in point: that controller is `"enabled": false` and references a dispatcher that does not exist here. Charter text left UNCHANGED pending Mos/Jason ruling; do not treat it as settled. 2. Rotation daemon (finish Mission Control Plane, reuse packages/coord) 3. Comms service (envelope→service→PG/Redis→adapters) 4. Hygiene + conformance harness Cross-cutting retirements: flat-file tracking, 3 MACP islands, silent MOSAIC BYPASS. ## Dogfood evidence captured this session (live failure classes, not hypotheticals) - **D-1 / P-ACTIVATION + hygiene — committed `.npmrc` hard-pins `store-dir=/root/.local/share/pnpm/store`.** Correct for the CI container (runs as root), fatal for EVERY non-root local checkout: `EACCES` on `/root/.local/share/pnpm/store/v10/server/server.json`. A committed config that only works on one runtime is exactly the activation-skew class. Fix candidate: make store-dir env-overridable, not hardcoded. - **D-2 / hygiene — husky `prepare` fails `EPERM` copying into root-owned `.husky/_/`.** Repo working tree has root-owned dirs (`.husky/`, repo root) under a non-root agent. Worked around with the intended `HUSKY=0` escape hatch (does NOT disable the existing pre-commit/pre-push hooks). - **D-3 / P-FLEET-001 — the seats running this mission are UNMANAGED.** `mos-remediation`, `rev-974`, `planner-opus`, `planner-sol` appear in NO roster (`~/.config/mosaic/fleet/roster.yaml`, `agents/`). Planners run on socket `default`; the roster declares `mosaic-fleet`. This is the exact "one roster-owned socket/host + quarantine unmanaged + stale GC" failure P-FLEET-001 indicts — observed on the remediation mission's own fleet. Prerequisite for INBOX identity-addressing. - **D-4 / P-LIFECYCLE + hygiene — a dispatched agent silently IGNORED an in-message context reset.** planner-sol was at 64.3%/372k; the brief asked it to reset first; it began work on dirty context anyway. Only an out-of-band `/new` driven by the orchestrator guaranteed clean state. Confirms the postmortem thesis: **instructions are not enforcement.** Reset must be a mechanical pre-dispatch step, not a request. - **D-5 / P-QUEUE-001 + P-CONFORMANCE-001 — KEYSTONE: an inert gate that erased its own evidence.** Merged PR #868 (`b79336a8`) shipped a file that FAILS `pnpm format:check` ⇒ the CI format gate did not block. An unrelated later PR (#872) then reformatted that file via its own `lint-staged`, so `main` went green again and nobody learned the gate had failed to fire. Verified blob-level under the repo's own config. **Detection must be per-merge-commit against that commit's own tree** — a "is main green today" check reports all-clear on this exact defect. Binding on RM-02/RM-55. Full chain in `TASKS.md` §1a. NOT quiet-patched, by Mos's ruling: patching the symptom destroys the signal. ## Decisions log - 2026-07-31 — Mission set up by Mos post-postmortem (15/15 decided). Dogfood posture active. - 2026-07-31 — Mos: stale `.mosaic/orchestrator/mission.json` is RESIDUE of the disabled Python orchestrator rail that this plan RETIRES. Do NOT invest in it; do NOT build on that rail. The 0/0 milestone banner is cosmetic. (Supersedes any plan to repair it.) - 2026-07-31 — Mos: planners must be dispatched with GUARANTEED clean context, not requested-clean. Prior default-socket planner sessions predate this mission; dirty context is the indicted hygiene. - 2026-07-31 — mos-remediation: worker briefs forbid all git ops and restrict each worker to a single named output file, so two planners can share one checkout without a branch race (M2-era incident doctrine).