diff --git a/packages/opencode/specs/simulation-phases.md b/packages/opencode/specs/simulation-phases.md index 3bff4a9c5b7..6c00f35e2ea 100644 --- a/packages/opencode/specs/simulation-phases.md +++ b/packages/opencode/specs/simulation-phases.md @@ -10,6 +10,18 @@ Goal: start the normal app in simulation mode and inspect/drive the TUI through This phase proves the core shape without swapping every foundational layer yet. +Implementation checklist: + +- [ ] Add `OPENCODE_SIMULATION=1` activation in TUI startup. +- [ ] Add simulation trace service with in-memory append-only records. +- [ ] Add OpenTUI UI state extraction for screen, focus, elements, and generated actions. +- [ ] Add OpenTUI UI action execution for typing, keys, enter, arrows, focus, and click. +- [ ] Add TUI-owned JSON-RPC WebSocket server on `127.0.0.1:40900+`. +- [ ] Expose `ui.state`, `ui.action`, `ui.render`. +- [ ] Expose `trace.list`, `trace.clear`, `trace.export`. +- [ ] Ensure fake and visible renderer paths share the same action protocol. +- [ ] Verify a local driver can inspect state and execute a real TUI input. + Scope: - Add `OPENCODE_SIMULATION=1` activation.