Skip to content

Trace 状态与用户体验验收 ​

本表描述预期和已有断言,不登记全项通过。 功能编号来自 测试清单。 脚本是否属于默认命令见 入口映射。 执行顺序见 开发流程。

状态要分别观察 ​

Trace 开关、Gateway、活动回答、工具等待和 Viewer 是不同状态。 不能仅凭按钮颜色判断转发已停止。 也不能凭仪表盘可打开判断 Gateway 仍在代理。 仅打开仪表盘可能启动只读页面服务。 停止验收需核对代理入口和客户端路由。

一次操作需观察四层。

层核对内容
用户意图最后选择的开关、服务、模型、账号和草稿
持久配置保存值、受管字段、外部字段与恢复账本
运行时实际监听、活动请求、工具等待和目标上游
Trace原生线程、物理请求、原请求、转换记录与统计

转换矩阵 ​

“已有”表示相关代码断言存在。 真实客户端和当前候选的结果仍需单独记录。 下面的 T 编号是执行子场景,不能替代功能编号。

子场景初始状态与动作预期行为和体验已有自动化最终验收与缺口
T01Trace 关闭,保存服务和模型保存保留选择;真实路由是否需 Trace 分别反馈client-models、codex-models、config-merge(CL01、MO04)原生页面保存与回读;直连或开启入口对应实际协议
T02开启 Trace,再新建客户端对话请求进入 Gateway;目标、线程和详情一致native-sessions、client-evidence(TR01、TR09)新真实 CLI/Desktop 对话;不能沿用旧绑定代验
T03同一对话继续两轮或重开 resume线程连续;上下文与工具结果保留native-sessions、portability(TR02、CL02)同进程和重开各验;答案必须依赖前轮标记
T04回答中切换 A→B,再继续原对话已开始回答不截断;下一轮到 B;不自动回退portability、models 组件(CL01、CL02、SE02)同线程 A→B→A;逐轮核对实际授权和上游
T05已发工具,尚未返回结果时停止保留 Gateway;可继续等待或明确强停tool-wait、stop-admission(LF01、TR06)页面等待/取消/强停各验;工具只在测试目录执行
T06工具等待时换服务,再提交结果匹配当前调用与上下文;不重复执行tool-wait、portability(TR06、CL02)真工具 call ID、结果顺序和续轮;新旧调用 ID 复用另验
T07回答生成中普通停止,再继续等待保持监听和配置;已接受请求继续stop-admission(LF01)实际提示可操作;完成后再次停止
T08选择明确强停当前回答终止一次;恢复直连;不重放portability、tool-wait(TR07、LF01)原生确认/取消;后续真实直连与错误记录
T09空闲时关闭 Gateway恢复受管直连字段;清账本;代理监听关闭desktop-lifecycle(CL06、LF02)同进程真实直连;不靠重启 Deck 凑恢复
T10Gateway 已关闭,再开启保留服务模型;只恢复正确接管desktop-lifecycle、writer(CL06、LF03)新建真实线程;旧线程另列兼容场景
T11Trace 开启,关闭主窗口或仪表盘主窗托盘与仪表盘释放分开;捕获按设置继续window-lifecycle 专题(LF07)实际托盘、全屏、系统 Space、多屏仍需操作
T12活动请求中退出,再重开等待或明确强停;不遗留失效路由;恢复选择lifecycle、reset、tool-wait(LF02、LF03)正常身份与专用根分列;重开后真实生成
T13异常结束或配置被外部修改保留外部字段与最新意图;提供安全恢复入口repair、settings-write(LF04、DG02)专用环境故障;恢复后真实直连;不强写外部代理
T14客户端取消、网络断流或上游失败失败和不完整状态真实;不伪造结束或重发protocol、portability、writer(TR07)实际取消与后续续聊;重试保留每次物理请求
T15客户端 compact 后继续和切服务原请求保留实际压缩内容;可恢复上下文单列上游portability(TR04、TR05)客户端真实 compact 完成和下一轮;合成摘要不能代验
T16同首句双会话、并发和侧边聊天原生 ID 决定归属;同线程不拆;不同线程不合并native-sessions、navigation(TR02、TR03、TR06)实际侧边聊天、btw 与父子证据待验;淡色标记仍为设计
T17明确额度耗尽或普通 429/401仅已开启策略且全部账号耗尽才换;已有输出不重放switching、pool、routing(SW02、SW03)自然耗尽和同一 CLI 续接;未知额度不当零
T18读历史中加入新请求、刷新和返回保留阅读位置;页序连续;首次进入读最新session-reading、Viewer、dashboard-api(TR08)真实大量记录、字节预算分段、往返及原生滚动
T19语言、主题或窗口尺寸切换主窗与 Viewer 一致;一行会话;操作仍可见language、theme、layout、原生 smoke(UI03、UI04)键盘、hover、物理缩放和长文字分列
T20改为 0 GB,存在在途请求完成正文清理;只留用量;不重复回填旧统计usage-only、writer(SE04、SE05)设置页实际确认/取消;清历史勾选默认关闭
T21改目录、索引损坏、手动修复暂停→更改→恢复;修复先备份;原文不重写directory-lifecycle、index-repair(SE06、SE07)实际目录、权限、文件占用与预览后外部变化
T22刷新或重启后核对数值冻结费用不变;已知零值与未知值分开billing、cache-usage、Viewer(CO01、CO03、CO06)实际 usage 独立复算;页面不加星号或未计价提示

每次请求的数据核对 ​

记录一次客户端发送,不能只数界面回合。 重试、辅助调用和协议转换可能产生不同物理请求。 逐条核对开始、结束、状态和去重依据。

项目需要断言相关脚本
会话身份原生 ID、来源、父子证据与 Trace 归属一致native-sessions、client-evidence、navigation
客户端原请求request.body 保留实际发送内容,不拼入未发送历史portability、Viewer
上游转换upstream.requestBody 与补充历史、协议差异分别可见portability、protocol
工具和多模态call ID、结果、顺序和图片位置完整tool-wait、protocol、portability
结束状态完整结束、取消、不完整和失败分开native-sessions、writer、portability
用量和金额来源可核对;缓存不重复;价格按捕获冻结cache-usage、billing、price-catalog
存储JSONL、索引、摘要与统计一致;读取不改原文writer、index-repair、dashboard-api
0 GB完成请求不留正文;统计跨重启稳定usage-only、writer
事件重放不重复累计请求或费用,不插乱阅读序列Viewer、session-reading
隐私普通诊断无 Key、完整请求头与私人正文diagnostics、private-files

已知费用正常显示,小额精度保持一致。 已知 0 显示 0,完全未知显示“—”。 失败缺少计费用量时不产生已知金额。 页面不增加未计价、部分或星号说明。 失败原因和原始用量仍保留在请求详情。 显示简化不能修改历史或冻结计价证据。

最终最小主路径 ​

  1. 冻结源码和包,记录客户端版本与初始配置。
  2. 在实际页面保存专用连接,再回读文件。
  3. 开启 Trace,创建真实新对话。
  4. 两轮上下文检查,执行只读工具。
  5. 在原线程 A→B→A,逐轮核对上游。
  6. 打开真实记录,检查原请求、转换与统计。
  7. 读历史中新增请求,刷新和返回。
  8. 忙碌时停止并选择继续等待。
  9. 完成后停止,核对路由、账本与监听。
  10. 同进程做真实直连,再开新线程重入。
  11. 退出重开,核对选择、登录与历史。

每步都有预期和实际结果。 前一步失败时,后续结果不能覆盖该失败。 没有额度、授权或环境时明确记受阻。 Windows、macOS、CLI 和 Desktop 分别登记。

当前明确缺口 ​

侧边聊天和 btw 的淡色命名尚未落地。 需要先取得客户端真实线程和父子证据。 不得通过标题或首句猜测会话关系。 实际 compact、Desktop 停止后缓存重载仍需当前包验证。 自然耗尽后的同会话自动切换仍需真实资源。 当前没有全应用随机操作或长时间浸泡套件。 原生窗口物理操作与其他平台仍需单独验收。

T04 和 T15 的目录与已有压缩项检查见 Codex 专项验收。

Released under the Apache License 2.0.