Files
ruv 0483ac5517 feat(missions): ADR-406 M1 mission observation via CLI and MCP, e2e gate
`ruflo mission create|plan|get|events|action` and the mission_create,
mission_plan, mission_get, mission_events and mission_request_action MCP
tools are thin transports over the one MissionService and its zod schemas;
MCP calls are still authorized by the existing policy runtime in
mcp-client.ts. A bounded, sanitized .claude-flow/missions/observation.json
(contract ruflo.mission-observation/1, source-time observedAt) is rewritten
atomically after each committed event for the workbench to read.

scripts/e2e-adr-406.mjs runs the built CLI in throwaway HOME,
CLAUDE_CONFIG_DIR and project dirs: catalog current and verified, legacy
command files byte-unchanged, CLI create + MCP plan reading identical
records and events, revision conflict, honest admit refusal, SIGKILL of a
writer then restart, and the §18 fixture replay with mods off vs on
(permissions, policy mode and outcomes unchanged; uninstall restores).
RUFLO_E2E_LIVE=1 adds engine version and plugin validate (no model calls).

Mod hooks the engine confirms are recorded against their declaring source
file, so the catalog is identical with or without an engine. mission_*
tools are classified in the capability brain's tasks/workflows domain.

Co-Authored-By: RuFlo <ruv@ruv.net>
2026-10-01 22:34:58 -04:00
..