From aba56589e7eeeb6dbcae4fa13f216d1bc1c91b23 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Thu, 28 May 2026 13:37:08 +0100 Subject: [PATCH] Add local MVP Face cycle --- README.md | 8 ++- notes/fresh-workspace-handoff.md | 2 +- state/ledgers.msgpack | Bin 158921 -> 159305 bytes state/map.yaml | 8 ++- tools/epiphany_local_run.ps1 | 117 ++++++++++++++++++++++++++++--- 5 files changed, 119 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index cc484c2c..09aab8c0 100644 --- a/README.md +++ b/README.md @@ -99,12 +99,16 @@ Useful variants: .\tools\epiphany_local_run.ps1 -Mode status .\tools\epiphany_local_run.ps1 -Mode plan .\tools\epiphany_local_run.ps1 -Mode run -MaxSteps 4 +.\tools\epiphany_local_run.ps1 -Mode mvp -FaceInput "Wake the local swarm and report through Face." -MaxSteps 4 .\tools\epiphany_local_run.ps1 -Mode status -ThreadId -Workspace E:\Projects\SomeRepo ``` `run` is the live coordinator loop. It also builds `epiphany-openai-runtime` and -uses the retained Codex auth/model transport spine. `status`, `plan`, and -`smoke` do not spend model calls. +uses the retained Codex auth/model transport spine. `mvp` is the local product +cycle: project Face's character turn, write a Face/Aquarium bubble, run the +bridge-equipped coordinator loop with auto-tools, then run heartbeat sleep/dream +maintenance. `status`, `plan`, and `smoke` do not spend model calls; `run` and +`mvp` do. ## Where This Leads diff --git a/notes/fresh-workspace-handoff.md b/notes/fresh-workspace-handoff.md index 7eef4c9a..e322574f 100644 --- a/notes/fresh-workspace-handoff.md +++ b/notes/fresh-workspace-handoff.md @@ -33,7 +33,7 @@ remembers doctrine; the branch remembers the blade. ## Current Orientation - Do not copy exact branch or HEAD from this note. Run `git status --short --branch` and `git log --oneline -5`. -- The repo now has a one-command local operator path: `.\tools\epiphany_local_run.ps1`. Default mode is `smoke`; it builds the retained Codex app-server compatibility edge, builds native Epiphany operator binaries, runs the coordinator smoke, and writes launcher artifacts under `.epiphany-run/` plus coordinator artifacts under `.epiphany-dogfood/`. `-Mode status` is now Epiphany-native: it builds only Epiphany operator binaries, reads `state/thread-state.msgpack` when present, derives status through `epiphany-core`, and does not start or require `codex-app-server`. Use `-Mode plan` or `-Mode run -MaxSteps 4` for the bridge-equipped coordinator entrypoints; add `-ThreadId ` and `-Workspace ` to inspect or continue an existing thread. `status`, `plan`, and `smoke` do not spend model calls; `run` builds and uses `epiphany-openai-runtime`. +- The repo now has a one-command local operator path: `.\tools\epiphany_local_run.ps1`. Default mode is `smoke`; it builds the retained Codex app-server compatibility edge, builds native Epiphany operator binaries, runs the coordinator smoke, and writes launcher artifacts under `.epiphany-run/` plus coordinator artifacts under `.epiphany-dogfood/`. `-Mode status` is now Epiphany-native: it builds only Epiphany operator binaries, reads `state/thread-state.msgpack` when present, derives status through `epiphany-core`, and does not start or require `codex-app-server`. Use `-Mode plan` or `-Mode run -MaxSteps 4` for the raw bridge-equipped coordinator entrypoints; use `-Mode mvp -FaceInput "" -MaxSteps 4` for the local product cycle that projects Face's character turn, writes a Face/Aquarium bubble, runs the coordinator with auto-tools, then runs heartbeat sleep/dream maintenance. Add `-ThreadId ` and `-Workspace ` to inspect or continue an existing thread. `status`, `plan`, and `smoke` do not spend model calls; `run` and `mvp` build and use `epiphany-openai-runtime`. - Local operator runs now write typed CultMesh intent/receipt documents to `.epiphany-run/cultmesh/operator-runs.ccmp` through `epiphany-operator-run`. The wrapper writes intent before acting and a completion receipt after success; this is the local consent/trace rail, not a hidden scheduler queue. - Status-mode local runs now also write a native CultMesh operator snapshot to `.epiphany-run/cultmesh/operator-snapshots.ccmp` through `epiphany-operator-snapshot`. That snapshot distills the operator-safe MVP status artifact into typed fields such as thread id, state status, coordinator action, CRRC action, reorient action, available actions, and artifact refs; it does not preserve the raw JSON status blob as internal state. - `epiphany-mvp-status --source native` is the current provider-neutral status boundary. It projects scene, pressure, jobs, roles, planning, reorient, CRRC, and coordinator status from native core surfaces and returns provider/runtime worker results as `backendMissing` placeholders instead of asking Codex for model-worker state. Keep future pluggable model-provider work behind launch/result/runtime documents; do not let provider choice leak into status, prompt authority, scheduler policy, or durable `EpiphanyThreadState`. diff --git a/state/ledgers.msgpack b/state/ledgers.msgpack index 454a58607c27a0c401fcbed0d1dea18f1b93f4de..1365c076ec1b700e9aad2b2c601ca84b4fa26884 100644 GIT binary patch delta 403 zcmX|-y-EW?6ouWbj9_agToA3YiHSdibT(E7A}cBEW_PddB$JuRojX~rQdsx^5_}E8 z!Z#3tt&QNbh?6L(zsot_xr?vb;=A^;6K%J1Tg)>m+G+u3F36=gW_1ch^g#))^AZWPsh|`NlAb9L##7q`OJ;~U zJ2)3PLS70IIfqmBr0Y