Inbox show Test Plan
Scope
This document covers per-thread detail retrieval via inbox show.
Shared conventions live in ../_shared/README.md.
case: show-returns-thread-and-message-history
用例意义
验证 show 会返回线程详情和完整消息历史。
前置条件
- 已存在一个含多条消息的线程
THREAD_ID
输入
inbox --db TMPDIR/coord.db --json show --thread THREAD_ID
预期输出
- 命令退出码为
0 - 返回
data.thread - 返回
data.messages - 消息按创建时间升序排列
断言结论
show是线程详情与时间序历史的读取入口
case: show-includes-artifacts-per-message
用例意义
验证 show 返回的每条消息都包含其关联 artifact 列表。
前置条件
- 线程
THREAD_ID中至少一条消息附带 artifact
输入
inbox --db TMPDIR/coord.db --json show --thread THREAD_ID
预期输出
- 命令退出码为
0 - 相关消息节点包含
artifacts - artifact 的
path、kind、metadata_json可读
断言结论
show需要把附件一并展开,而不是只返回 message 基本字段
case: show-mark-read-advances-read-cursor
用例意义
验证 show --mark-read 会推进调用 agent 的 read cursor,并影响后续 unread 查询。
前置条件
worker-e有一个未读线程THREAD_ID
输入
inbox --db TMPDIR/coord.db --agent worker-e --json show --thread THREAD_ID --mark-read
inbox --db TMPDIR/coord.db --json fetch --agent worker-e --status pending --unread
预期输出
show成功- 随后的
fetch --unread对该线程不再返回结果
断言结论
mark-read的副作用是推进该 agent 的last_read_message_id
case: show-rejects-when-thread-missing
用例意义
验证 show 对不存在线程返回稳定的 not-found 错误契约。
前置条件
- 空数据库已完成
init
输入
inbox --db TMPDIR/coord.db --json show --thread thr_missing
预期输出
- 退出码为
40 - JSON 错误码为
not_found
断言结论
show不会对缺失线程返回空对象
Notes
- 使用
--mark-read时必须提供 agent 身份,可通过根级--agent或命令参数传入