Repository navigation
1.4.2
Worker terminal delivery and recovery
- Publish terminal status, completion time, final event and cursor together in
the job snapshot before exposing completion to delivery consumers. This fixes
the terminal-delivery receipt race addressed by
PR #106. - Replay a terminal event from the committed snapshot when its log append was
interrupted, including a final JSON record without a newline. Preserve event
ordering, pagination and archive replay without duplicating the final event. - Keep raw Codex turn completion from prematurely finishing a worker job. Late
heartbeat/control callbacks cannot reopen a completed job or move its cursor. - Preserve failure evidence during failed admission and orphan recovery. Retain
the existing one-worker-per-state-directory and no-power-loss-durability limits.
Telegram steering and decisions
- Default new or unset queue modes to
steer; enableCODEX_STEERINGby default.
Existing saved modes and explicitCODEX_STEERING=falseremain respected. - Add
/steer,/queue_mode_steerand a queue-mode button. Safe mode retains an
explicit Apply to current task action. Restore live replies/activity updates
with app-server steering, without duplicate streamed text or final delivery. - Preserve durable steering receipts, requester/chat/topic validation, duplicate
protection and explicit holds for uncertain delivery across restarts. - Add optional sequential Telegram decision buttons, typed answers and cancellation.
The per-job MCP tool waits for required answers; independent chats remain concurrent.
Frontend reconnects retain waiting questions. Interrupted worker decisions require
explicit recovery and are never silently replayed. See
Telegram questions.
Operational status
- Add opt-in
/opssnapshots with configurable service metrics, localized labels
and timestamps, freshness warnings and bounded read-only JSON input. No shell
execution or provider credentials are required by this command. See
Operational status.
Upgrade and validation
- Drain active jobs and final-message delivery before restarting the worker, then
restart both worker and bot to load steering and terminal-state fixes. A package
version bump alone does not update an already-running process. - Add regression coverage for terminal publication, interrupted writes, archives,
late callbacks, steering and decision recovery, and operational status inputs.
Verify each distribution against its own pinned dependencies and CI gates.
Full changelog: v1.4.1...v1.4.2