Repository navigation
v26.5.0-alpha.6
Pre-releasemdl v26.5.0-alpha.6 — macro lifecycle events on the WS stream
The orchestration watcher now also polls each tracked game's macro
status (Despotes MacroRecorder) alongside schedules and emits four
lifecycle events over GET /api/v1/events:
macro_recorded {name, stepCount} recording landed
macro_play_started {name, totalSteps}
macro_play_finished {name}
macro_removed {name}
Playback-swap edge case (a macro starts while another is still
playing) emits finish-then-start, order preserved.
Evidence discipline: the status shape is pinned from Despotes
MacroRecorder.statusJson and locked by unit tests; older Despotes
payloads without the contract fields are skipped cleanly.
Same snapshot semantics as schedules: transient failures keep the
previous snapshot (no phantom removals), unreachable games reset
their snapshot, watcher errors never take the server down.
capabilities + AGENT_API.md updated. Tests: 28 lib + 187 bin (+2),
zero warnings.
Instability disclaimer: alpha pre-release - expect rough edges.