fix(rectification): render adoption carrier on deterministic choice path
This commit is contained in:
@@ -6942,3 +6942,19 @@
|
||||
- 相关记录:BUG-441、BUG-449、BUG-450
|
||||
- 复发自:BUG-450
|
||||
- 修复版本:`fix(rectification): prevent silent collect focus stalls`(Skill 保持 `10.0.13`)
|
||||
|
||||
## BUG-453 | 可采用区间已由服务端放行但前端不渲染时间卡
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-08-30
|
||||
- 最近更新:2026-08-30
|
||||
- 影响面:`rectification-agentic-chat.tsx` 时间卡渲染门控、`choice-action` 点选快路径、Case GET 默认投影
|
||||
- 用户现象:答完最后一道选择题后助手只说「已记录你的选择,并更新了候选比较。」;界面没有时间卡也没有下一问,流程停住。
|
||||
- 触发条件:服务端已给出 `can_adopt=true`、`selection_allowed=true`、`precision_stage=ready_to_adopt`,但当前轮是确定性点选路径,没有产生 `rectification-offer-candidates` 模型工具 receipt;前端仍以历史 `offeredSelectionOnce` 作为时间卡前置条件。
|
||||
- 根因:服务端允许采用,前端却把承载绑定到模型是否调用某个工具;确定性点选路径不会产生该 receipt step,因此 `selectionAllowed=true` 仍无法渲染时间卡。点选快路径原正文也只保留确认句,没有区间、代表分钟和采用提示。
|
||||
- 修复:P0:时间卡改为只依赖服务端 `selectionAllowed=true` 与 `canAdopt=true`,保留最新已结算助手消息、忙碌/只读/重生成状态和选择卡互斥门;不再依赖 `offeredSelectionOnce`。P1:点选进入 `offer_provisional_range + can_adopt=true` 时由服务端确定性写出可信区间、代表分钟、代表分钟免责声明和「可以从下面的时间里选一个采用」;该正文同时落入确定性 turn。P2:非终态轮末只看 `current_question` 或决策 `canAdopt`,缺失时确定性补口述采集焦点并记录结构化日志。P3:Case GET 默认只保留活跃候选/代表分钟对应宫位表与当前焦点 probe;`detail=full` 保留完整 receipt;`decision`、`gates`、`inference_state` 不被瘦身修改。模型侧继续使用既有的精简 projection。
|
||||
- 验证:新增/更新前端门控与 `canAdopt` camel/snake 解析回归;保留 duplicate focus、skipped focus、非终态出口和五证据 case 回归;P1 断言确定性落库正文包含区间、代表分钟、免责声明和采用提示;P3 断言默认投影保留决策字段与完整 `inference_state`,并移除非当前 probe 与非活跃宫位表。提交前运行 TypeScript、改动文件 ESLint、rectification/agentic 回归及全量测试;真实线上模型 74 秒路径耗时未在本轮复测。
|
||||
- 防复发:UI 承载只看服务端状态,不得绑定模型工具 receipt;ready-to-adopt 的确定性正文必须写区间、代表分钟和采用提示。非终态轮次必须有 `current_question` 或真实可采用承载;所有承载判断只看焦点与 decision 字段,不得用正文文本判断。不得为无选项问题新造视觉容器或复用选择卡样式,不得引入语义正则、关键词表或 A/B/C/D 位置推断;不得改变 confirmation gate、`resolved`/`declined` 语义或 Skill `10.0.13`。
|
||||
- 相关记录:BUG-441、BUG-449、BUG-450、BUG-452
|
||||
- 复发自:BUG-450
|
||||
- 修复版本:待发布
|
||||
|
||||
Reference in New Issue
Block a user