f93d7297c8
Adds regression coverage for BLOCKER-1 (dispatch timeout releases reservation for next caller after stalled upstream) and BLOCKER-2 (post-dispatch error preserves the post-dispatch hold so an immediate second caller observes the reservation and is gated). Both tests subscribe-first on the promptAsync call count and assert status transitions without sleep-based synchronization. dispatchTimeoutMs is the system under test, so passing it explicitly as 1ms in those tests is the SUT, not a sleep-as-synchronization (per test-discipline.md). Closes BLOCKER-3 (dispatch timeout + post-dispatch coverage) Co-authored-by: gate-tests (deep / gpt-5.3-codex high)