11 Commits
Author SHA1 Message Date
randRuFlo 7718a142b4 feat(tui): the AI page: ask Codex (read-only, pinned) or OpenRouter, each question after a card (ADR-489 phase 3)
Page 6. Reuses harness.send and the conversation bridge's sendTo, not a second harness. Host.spawn runs only the pinned Codex 0.162.0
release (never current or PATH), read-only, from a fixed argument allow-list; Host.httpSend sends only https POST to openrouter.ai or a
convoTargets host, never follows a redirect, and a key is read by variable name and never drawn. Enter shows a card of exactly what would be
sent; a lone y answers it only while it was drawn in full (#3983); spend cap from the provider-reported cost. e2e host matrix gets a tui leg
(keyless in CI, live gated). Not in this PR: the workspace-write toggle.

Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 16:54:16 -04:00
randRuFlo 2bf5b1c9c9 chore(e2e): report the CI-only init observation as flaky with evidence; record it in ADR-490
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 13:40:10 -04:00
randRuFlo e8adb06a11 chore(e2e): replay the initializer's exact which-codex call in the sandbox env
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 13:35:40 -04:00
randRuFlo 4f00df535a chore(e2e): allow one row to carry long evidence
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 13:28:17 -04:00
randRuFlo 7e30957a32 chore(e2e): include the tail of init output in the failing plugin-install row
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 13:28:07 -04:00
randRuFlo 5b2390912d chore(e2e): record what the sandbox shell resolves for codex when the init row fails
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 13:10:04 -04:00
randRuFlo 760b4cd0b3 chore(e2e): show the Codex lines of init output when the plugin install row fails
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 13:06:45 -04:00
randRuFlo 589111a20f chore(e2e): say why the init --dual plugin install row failed
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 12:59:56 -04:00
randRuFlo 9022af133e chore(e2e): build the status regex instead of a literal with an interpolation
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 12:43:48 -04:00
randRuFlo 3da68a735a chore(e2e): use an obviously fake stub key so secret scanners stay quiet
Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 12:43:22 -04:00
randRuFlo 98f2eb5213 feat(e2e): three-host integration loop (Claude Code, Codex, OpenRouter); fix MCP resources capability and Codex plugin clone budget
ADR-490 (loop), ADR-491 (mods host integration, Proposed). The loop's first run found two defects, fixed test-first:
- ruflo mcp start advertised resources but answered resources/* with -32601 (3 stdio servers).
- init --dual's marketplace clone ran under a 20 s budget (17.5 s measured), swallowing the real error.

Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-11 12:43:14 -04:00