# Case: `dep-add-blocks-dependent-task-until-prerequisite-completes` ## 用例意义 验证 `dep add` 会建立依赖边,并让被依赖任务在前置任务完成前保持不可调度。 ## 前置条件 - 已存在 run `run_blog_002` - run 下已存在任务 `T1` 与 `T2` ## 输入 ```bash orch --db TMPDIR/coord.db --json run init --run run_blog_002 --goal "Build dependency-aware workflow" orch --db TMPDIR/coord.db --json task add --run run_blog_002 --task T1 --title "Build backend" --default-to worker-a orch --db TMPDIR/coord.db --json task add --run run_blog_002 --task T2 --title "Build frontend" --default-to worker-b orch --db TMPDIR/coord.db --json dep add --run run_blog_002 --task T2 --depends-on T1 orch --db TMPDIR/coord.db --json ready --run run_blog_002 ``` ## 预期输出 - `dep add` 退出码为 `0` - `data.dependency.task_id == "T2"` - `data.dependency.depends_on_task_id == "T1"` - 后续 `ready` 只返回 `T1` - `T2` 不出现在 `ready.data.tasks` 中 ## 断言结论 - `dep add` 会立刻影响 ready 计算结果 - 依赖关系属于调度门控,而不是仅供展示的元数据 ## 补充约束 - `--task` 不能依赖自己;自依赖应返回 `invalid_input` - 重复添加同一条依赖边应返回 `invalid_state`