# Case: `dispatch-rejects-non-ready-task` ## 用例意义 验证 `dispatch` 在任务仍被依赖阻塞时会返回稳定的 `invalid_state` 契约,而不是偷偷创建 attempt。 ## 前置条件 - 已存在 run `run_blog_003` - 任务 `T2` 依赖 `T1` - `T1` 尚未完成 ## 输入 ```bash orch --db TMPDIR/coord.db --json run init --run run_blog_003 --goal "Validate ready gating" orch --db TMPDIR/coord.db --json task add --run run_blog_003 --task T1 --title "Backend" orch --db TMPDIR/coord.db --json task add --run run_blog_003 --task T2 --title "Frontend" orch --db TMPDIR/coord.db --json dep add --run run_blog_003 --task T2 --depends-on T1 orch --db TMPDIR/coord.db --json dispatch --run run_blog_003 --task T2 --execution-mode analysis ``` ## 预期输出 - `dispatch` 退出码为 `30` - JSON 错误码为 `invalid_state` ## 断言结论 - 依赖未满足时,`dispatch` 失败得很早,并且不会越过 ready gate ## 补充约束 - 该错误是调度状态错误,不是 `not_found`