feat: add evolution controller and append-only ledger - #38
Conversation
There was a problem hiding this comment.
All reported issues were addressed across 14 files
Tip: cubic can generate docs of your entire codebase and keep them up to date. Try it here.
Re-trigger cubic
There was a problem hiding this comment.
All reported issues were addressed across 4 files (changes from recent commits).
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
There was a problem hiding this comment.
All reported issues were addressed across 10 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
c5e6a34 to
bd36934
Compare
8cc0e1e to
c719e05
Compare
|
Restack transparency note: During the requested rebase onto |
There was a problem hiding this comment.
All reported issues were addressed across 4 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
There was a problem hiding this comment.
All reported issues were addressed across 2 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
bd36934 to
4ba81a4
Compare
Summary
Data flow and trust boundary
MCP -> EvolutionController -> typed policy/hypothesis/candidate/gate receipts -> FileEvolutionLedger in Git common control dir. No trace payloads or provider responses are persisted locally.
Verification
Scope
Targets only stack/v2-03-gate-v2. No merge, deployment, System Book, harness/runtime/E2B/canary/live-adapter work, or uv.lock changes.
Summary by cubic
Adds a typed, fsynced append-only evolution ledger and resumable
EvolutionControllerthat replaces direct hypothesis recording and candidate execution with one-step evolution actions. The generated program now checksevolution_status, advances once per call, and stops before publication; trace payloads and provider responses remain unpersisted locally.New Features
evolution_statusandadvance_evolutionthrough MCP and falls back to the persisted baseline commit when the active baseline is unavailable.Written for commit 8fde9ef. Summary will update on new commits.