- Introduce finalize_unfinished in multi-agent-mux-delegate-job for fail-closed atomic transitions - Enforce CAS dispatch_token and attempt_id pinning across engine, CLI, and lifecycle scripts - Integrate Herdr wait_for_agent_idle turn handshake to prevent prompt loss and race conditions - Resolve bash 3.2 set -u empty array expansion compatibility in lib.sh - Preserve Issue #5 R2 contract in CAS transition engine (engine.py, publish_event.py, service.py) - Add comprehensive regression suites (test_issue6_fail_closed.py, test_issue6_turn_handshake.py) - Bump lockstep framework and skills to v4.4.1 across lib.sh, eager.py, VERSIONS.md, 8 SKILL.md - Synchronize documentation (IMPROVEMENTS.md, MESSAGING.md, state-transitions.md, task.md, phase5-e2e.md) - Unanimous PASS achieved across 4 reviewer team leaders (Claude, Codex, OpenCode, Grok) Closes #6
25 lines
1.1 KiB
Plaintext
25 lines
1.1 KiB
Plaintext
usage: job_subscriber.py [-h] (--job JOB | --wait-any) [--timeout TIMEOUT]
|
|
[--idle-timeout IDLE_TIMEOUT] [--expect-retention]
|
|
[--expect-dispatch-token EXPECT_DISPATCH_TOKEN]
|
|
[--attempt-id ATTEMPT_ID]
|
|
[--registry-dir REGISTRY_DIR] [-v]
|
|
|
|
Subscribe to Job events on MQTT
|
|
|
|
optional arguments:
|
|
-h, --help show this help message and exit
|
|
--job JOB job id to watch
|
|
--wait-any watch every pending/running job in the registry
|
|
--timeout TIMEOUT wall-clock budget in seconds (default: job.timeout_sec
|
|
or 3600)
|
|
--idle-timeout IDLE_TIMEOUT
|
|
max seconds with no new event (default:
|
|
job.idle_timeout_sec or 120)
|
|
--expect-retention warn if no retained terminal event arrives promptly
|
|
--expect-dispatch-token EXPECT_DISPATCH_TOKEN
|
|
expected dispatch token for CAS verification
|
|
--attempt-id ATTEMPT_ID
|
|
minimum attempt id to accept events for
|
|
--registry-dir REGISTRY_DIR
|
|
-v, --verbose
|