1.3 KiB
1.3 KiB
Case: answer-accepts-payload-json-without-body
用例意义
验证 answer 在未提供 --body 的情况下,仍可通过纯 --payload-json 向当前阻塞尝试写回结构化决策。
前置条件
- 运行
run_blog_002中的任务T2已处于blocked blocked列表中可见T2- 已知该阻塞尝试对应线程为
THREAD_ID
输入
orch --db TMPDIR/coord.db --json answer --run run_blog_002 --task T2 --payload-json '{"decision":"stdout","source":"leader"}'
inbox --db TMPDIR/coord.db --json show --thread THREAD_ID
预期输出
answer退出码为0answer.data.message.kind == "answer"answer.data.message.payload_json.decision == "stdout"answer.data.message.payload_json.source == "leader"show.data.messages末尾新增一条kind=answer的消息- 末尾消息的
payload_json.decision == "stdout"
断言结论
answer不要求 leader 必须提供纯文本正文;结构化 payload 本身就可以构成有效答复- worker 可以从同一条
answer消息里读取结构化决策,而不必依赖约定俗成的正文格式
补充约束
--payload-json必须是合法 JSON;非法值应返回invalid_input--body与--body-file仍然互斥,即使本用例不使用它们