workflow: expose daemon runs through the CLI and code-mode tool

Merged
TE
3d ago
+1807-48

cmux workflow start <file> now runs the pinned .cmux/workflows/*.workflow.js script through the existing QuickJS runtime under daemon supervision. Status reads its actual result; pause/resume fence the runner and reuse journaled calls. cmux_workflow exposes start, status, pause and resume through the same Server::call catalog gates. Agent replies are schema checked, local machine results retain full output, and current tool restrictions are checked before host calls and replay.

This completes the CLI/runtime wiring after foundations #33563, #33654 and #33663, QuickJS engine #33803, and executor #33779. The roughly 1,800-line seam keeps the CLI, authenticated runner, journal-delivery adapter, catalog tool and behavioral integration tests together. The merged remote placement adapter is preserved. CI placement uses the installed authenticated controller adapter merged in #33982 and never falls back to a local command. Signing, notarization and publication secrets stay in Actions. No UI changes.

Validation at fc1f9f2c95465a21feb56f8ebf7e6262b4c6ad4e: fleet run 41675625889 passed 92 acpmux and 22 cmux-tui workflow tests, all three real CLI/daemon/QuickJS product tests against a deterministic ACP child, and strict cmux-tui clippy. The panic-lint artifact reports zero hits on PR-added lines; remaining ratchet failures are existing acpmux indexing hits. The panic-lint check runs before the test suite. Earlier-base check runs also contain the protocol inventory defect fixed in #34000 and the result_line compile defect fixed in #34053; neither comes from this diff. The previous head also passed all three product tests in five consecutive repetitions in run 41673287815. The product tests read back the schema-checked agent reply, pause/edit/resume with the original source hash and child identity, and exact machine stdout/base64/exit status plus both terminal child records. The pause/readback test subscribes to nested child event segments before scanning, fixing the missing wake observed in runs 41667148973 and 41669953944; timeout diagnostics retain the exact run and child events. Formatting, whitespace and static prepush checks pass.

Review: Opus 5.5 medium SHIP at fc1f9f2c95465a21feb56f8ebf7e6262b4c6ad4e, review receipt, carrying the reviewed runtime integration, asserted event read, and indexing removal. The documentation follow-up is resolved by the adapter merged in #33982 as 4836ed07fb9dbcd6508bb9423286000aa88f98ff.

Review follow-ups are tracked in #33780 (orphan owner cleanup), #33852 (one tool-profile snapshot), #33853 (journal handoff), #33854 (refused activity reservations), #34007 (pause during an in-flight activity wait), and #34021 (fixture state across process reload). Documentation: docs/native-workflows.md.

Leo-ask: ask-6ef2624788
Leo asked: “go do all those/help out where you can + examine how you can improve yourself and your available options and capabilities and speed”. Design: teamleaderleo/leo-workspace#624 §3.2–3.3.

🤖 Generated with Codex

Agent session: agent session