# Remnic Relay progress

Last updated: 2026-07-18

## Overall

- [x] Epic and scoped child issues created (#1965–#1969).
- [x] Persistent completion goal created with the winning-worthiness gate.
- [x] Work isolated in dedicated Relay branches/worktrees.
- [x] Phase 1: mission contract and receipt API (#1966, PR #1970).
- [x] Phase 2: Mission Control UI (#1967, PR #1972).
- [x] Phase 3: isolated Codex runner and replay (#1968, PR #1999).
- [ ] Phase 4: hardening, evidence, and submission package (#1969, PR #2012).

## Phase 1 — merged

- [x] Versioned strict event and snapshot schemas.
- [x] Symlink-safe, serialized, idempotent append-only mission store.
- [x] Deterministic bounded reducer with explicit evidence completeness.
- [x] Namespace-authorized access operations and HTTP routes.
- [x] Deterministic synthetic fixture and failure-path tests.
- [x] Current-head PR loop clean and manually merged.
- [x] `origin/main` verified at merge `98e83cc1`.

## Phase 2 — merged

- [x] Dedicated editorial Mission Control design contract.
- [x] Twelve-frame causal replay over sixteen mission events.
- [x] Agent cards, belief conflict, correction lineage, test transition, and
  final receipt derived from Relay snapshots.
- [x] Confirm-gated replay and authenticated, idempotent live approval flow.
- [x] Provenance X-ray with historical versus fresh-inspection labels.
- [x] Loading, empty, partial, conflict, offline, replay, and recovered states.
- [x] Exact static route allow-list and release artifact checks.
- [x] Desktop/narrow captures plus keyboard/reduced-motion browser audit.
- [x] Current-head PR loop clean and manually merged.
- [x] `origin/main` verified at merge `34f1f1bb`.

## Phase 3 — merged

- [x] Four fixed one-shot roles using `gpt-5.6-terra`, medium reasoning.
- [x] Four-call cap, Sol prohibition, reserve, planned ceiling, and local credit
  ledger with uncertain-use quarantine.
- [x] Fresh synthetic workspace, fixture, Remnic store/namespace, and copied
  run-scoped Codex home; no production Remnic path.
- [x] User/mount/PID/network namespaces, chroot, constrained egress, and exact
  loopback MCP tool allow-list.
- [x] Model shell credential/output masking with direct-interpreter regression.
- [x] Candidate contract tests isolated from host files/networking.
- [x] Structured Codex event proof, distinct threads, prompt/output hashes,
  recall receipts, correction lineage, and fail→pass contract results.
- [x] Canonical live run: 84.829 seconds, four calls, 5.8096 locally accounted
  units, root `69d6f7f30d5603bcf514cea657aeb2a9bf1b6ff8b6712d5cfce6b5c33aae30be`.
- [x] Recording sanitizer and UI replay bound to the sealed root.
- [x] Focused Relay tests and repository quick preflight.
- [x] PR #1999 reported current-head merge-ready after required CI and AI review.
- [x] PR #1999 manually merged and `origin/main` verified at `a236ad07`.

## Phase 4 — in progress

- [x] Dependency-free semantic evidence verifier and loopback allow-list server.
- [x] Exact no-install direct-Node commands for demo, terminal verification,
  and clean-room verification; no npm lifecycle hooks precede attestation.
- [x] Clean-room copy has no symlink or `node_modules`, uses isolated env, and
  fetches the UI/replay/receipt locally.
- [x] Clean-room inputs are descriptor-snapshotted before copying, with source
  symlink, hard-link, mount-crossing, and concurrent-change rejection.
- [x] Every opened evidence descriptor is locked to the pinned repository
  mount ID, rejecting nested and same-device bind mounts before content reads.
- [x] Out-of-band launcher SHA-256 anchors both executable modules before
  spawn/import; marker-writing tamper regressions prove neither can run first.
- [x] Coordinated-reseal rejection and secret/private-path scan.
- [x] Measured narration: 326 words, estimated 165 seconds including action
  allowance.
- [x] Judge guide, claim ledger, Devpost copy, and prior-vs-new provenance.
- [x] Refresh and re-audit sanitized hero screenshots against the final package.
- [ ] Full local gates and fresh-install/package checks.
- [x] One scoped #1969 PR opened (#2012).
- [ ] Current-head PR loop, manual merge, and `origin/main` check.
- [ ] Close child issues and epic after merged evidence is verified.

## Evidence discipline

All Relay live inputs and outputs use freshly provisioned synthetic roots. No
production Remnic memory, shared context, personal data, or ordinary Codex home
is read or written by the mission. A visible receipt may claim only what a
fixture, captured structured output, source file, memory record, recall event,
approval, or executed test proves. Raw prompts, transcripts, Codex JSONL,
credentials, private ledgers, and benchmark datasets are excluded.

The user's remaining authority is preserved: final video recording/upload,
selection of the real `/feedback` session, and Devpost submission.
