WI-3: Compaction observers → revoke + runtime_generation auto-revoke #830

Closed
opened 2026-07-17 23:55:07 +00:00 by jason.woltje · 1 comment
Owner

OPUS-SECREV MANDATORY (revocation/lifecycle surface).

Deliverable 3 (BUILD-BRIEF §3.3). Compaction observers → REVOKE: Claude PreCompact + SessionStart(matcher=compact); Pi session_before_compact/context equivalents. Any runtime_generation bump (reload/resume/fork, same PID included) auto-revokes the prior incarnation (D4).

Amended T-A threat contract (D2-v5, supersedes v3/v4): hard fail-closure holds when ≥1 compaction observer fires OR after lease expiry; dual-hook-miss within TTL = named BOUNDED RESIDUAL STALE WINDOW (disclosed, not silent), bounded by TTL (R5: 300s max, soak-tighten only) — do NOT claim the mutator gate bounds within-window actions. Total gate-hook miss = T-C.

ACs: T12b (prior VERIFIED → both hooks miss → within-TTL mutator ALLOWED, after-TTL DENIED — report BOTH); T30 dual-hook-miss matches the amended threat table within+after TTL. Depends on WI-1/WI-2; gated on WI-0 probe 3.

Authority (build AGAINST these, do not re-derive): BUILD-BRIEF 89fdbc27, SPEC-v5 a6d07ade, RATIFICATION bac58319, sol red-team 3da326a4. Coder MUST re-verify sha256 before build. Target: framework-native packages/mosaic/ in mosaicstack/stack (NOT jarvis-brain, NOT ~/.config/mosaic/ directly). M1 = Claude + Pi only.

Review discipline: red-first TDD; author≠reviewer; no self-merge; exact-head RoR (reviewed-SHA=merged-SHA); closes #<this>; full 40-char head; never edit tests to pass / never force-merge red / never --no-verify. Mos merges after review + green suite + (for security surfaces) Opus-SECREV.

**OPUS-SECREV MANDATORY (revocation/lifecycle surface).** Deliverable 3 (BUILD-BRIEF §3.3). Compaction observers → REVOKE: Claude `PreCompact` + `SessionStart(matcher=compact)`; Pi `session_before_compact`/`context` equivalents. Any `runtime_generation` bump (reload/resume/fork, same PID included) auto-revokes the prior incarnation (D4). **Amended T-A threat contract (D2-v5, supersedes v3/v4):** hard fail-closure holds when ≥1 compaction observer fires OR after lease expiry; **dual-hook-miss within TTL = named BOUNDED RESIDUAL STALE WINDOW (disclosed, not silent), bounded by TTL (R5: 300s max, soak-tighten only)** — do NOT claim the mutator gate bounds within-window actions. Total gate-hook miss = T-C. **ACs:** T12b (prior VERIFIED → both hooks miss → within-TTL mutator ALLOWED, after-TTL DENIED — report BOTH); **T30** dual-hook-miss matches the amended threat table within+after TTL. Depends on WI-1/WI-2; gated on WI-0 probe 3. **Authority (build AGAINST these, do not re-derive):** BUILD-BRIEF `89fdbc27`, SPEC-v5 `a6d07ade`, RATIFICATION `bac58319`, sol red-team `3da326a4`. Coder MUST re-verify sha256 before build. Target: framework-native `packages/mosaic/` in `mosaicstack/stack` (NOT jarvis-brain, NOT `~/.config/mosaic/` directly). M1 = Claude + Pi only. **Review discipline:** red-first TDD; author≠reviewer; no self-merge; exact-head RoR (reviewed-SHA=merged-SHA); `closes #<this>`; full 40-char head; never edit tests to pass / never force-merge red / never `--no-verify`. **Mos merges** after review + green suite + (for security surfaces) Opus-SECREV.
jason.woltje added this to the Compaction-Refresh Mechanism (M1: Claude+Pi) milestone 2026-07-17 23:55:07 +00:00
Author
Owner

Mos authority classification — probe-3 Gate0-mechanism = 3/3 FIRE PASS (attempt-3).

Reviewed harness (immutable): ca7b522e / sha256(p3_d4_focused_run.py)=92ff11bd35a72c3bda8f9722837cd9058a711f688cc75bf5e5df106645f81553. Fire ran the reviewed bytes (at-fire reviewed==run re-hash == 92ff11bd, fail-closed). External python3 -I -S -B runner, 3 isolation runs, PY_EXIT=0.

Result: all 3 runs machine_assertions=PASS; mechanism EXECUTED (same_pid_starttime + reload_revoke_verified + generations 1→12 monotonic — active gen/revoke, not passive); security invariants held (MUTATOR_UNVERIFIED / STALE_GENERATION); R1 clean (state_file_in_fixture_root, evidence in-fixture only). No assertion softened, no Case-C tell.

Pinned closure re-hashed fail-closed at fire: launcher e950e422 / helper 061625402f / broker 4db4fef1 (y/y/y). WI-3 head f400830738998db105107a2a4c69c7f2a2a6fd5d unmoved at fire + at merge.

3-of-3 harness review (byte-clear v12): terra §3 (0643ea3) + Mos co-attest + homelab (c742079), all binding immutable ca7b522e.

Immutable fire provenance (content-addressed log + full sha manifest) published for independent re-verification: mos-comms bus mos-comms-livecomms/20260719T194956Z__from-mos__184597625.md (embedded log sha256 428f20a7cec5fa448a6a2893481b7055fe74b76f4c6ab95a41051125360eb77c).

WI-3 (#830) merged: PR #842 squash → main e4d7d4502de99d3faaf1839990cf607a1830c194. — Mos (fire-classification authority, Gate 13/16)

**Mos authority classification — probe-3 Gate0-mechanism = 3/3 FIRE PASS (attempt-3).** Reviewed harness (immutable): `ca7b522e` / sha256(p3_d4_focused_run.py)=`92ff11bd35a72c3bda8f9722837cd9058a711f688cc75bf5e5df106645f81553`. Fire ran the reviewed bytes (at-fire reviewed==run re-hash == 92ff11bd, fail-closed). External `python3 -I -S -B` runner, 3 isolation runs, PY_EXIT=0. Result: all 3 runs `machine_assertions=PASS`; mechanism EXECUTED (same_pid_starttime + reload_revoke_verified + generations 1→12 monotonic — active gen/revoke, not passive); security invariants held (MUTATOR_UNVERIFIED / STALE_GENERATION); R1 clean (state_file_in_fixture_root, evidence in-fixture only). No assertion softened, no Case-C tell. Pinned closure re-hashed fail-closed at fire: launcher `e950e422` / helper `061625402f` / broker `4db4fef1` (y/y/y). WI-3 head `f400830738998db105107a2a4c69c7f2a2a6fd5d` unmoved at fire + at merge. 3-of-3 harness review (byte-clear v12): terra §3 (`0643ea3`) + Mos co-attest + homelab (`c742079`), all binding immutable `ca7b522e`. Immutable fire provenance (content-addressed log + full sha manifest) published for independent re-verification: mos-comms bus `mos-comms-live` → `comms/20260719T194956Z__from-mos__184597625.md` (embedded log sha256 `428f20a7cec5fa448a6a2893481b7055fe74b76f4c6ab95a41051125360eb77c`). WI-3 (#830) merged: PR #842 squash → main `e4d7d4502de99d3faaf1839990cf607a1830c194`. — Mos (fire-classification authority, Gate 13/16)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaicstack/stack#830