fix(rectification): gate collect-phase adopt cards and keep post-adopt verify answerable
Public can_adopt follows session_outcome; reverse_verify reuses the persisted question id; offer cards settle on the owning message with a status-bar handoff. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -7649,3 +7649,67 @@
|
||||
- 复发自:BUG-451(分章后仍把写作失败压成整份 schema 码,截断预算与失败分类未按中文口径收口)
|
||||
- 修复版本:待发布
|
||||
|
||||
## BUG-497 | 采集阶段同时出现采集题和采用卡
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-02
|
||||
- 最近更新:2026-09-02
|
||||
- 影响面:`publicDecisionFields`、`POST .../candidates/accept`、`parseRectificationCandidateResult`、`rectification-agentic-chat`
|
||||
- 用户现象:采集题还在问时,同一条助手消息下面出现三张「采用此时间」卡。
|
||||
- 触发条件:`session_outcome=collect_evidence`,内部 `capability.canAdopt=true`,当前题是 `collect_spoken`。
|
||||
- 根因:`collect()` 把 `canAdopt` 原样投影成公开 `can_adopt`。前端 `showSelectionCards` 只靠 `!showLiveChoiceCard`,采集题没有 A–D 卡,采用卡就露出来。v9 删掉 offer 门后,BUG-313 / BUG-323 的防复发条款失效。
|
||||
- 修复:公开 `can_adopt` 只在 `adopt_representative` / `provisional_range_user_stopped` / `awaiting_confirmation` / `validated_range` 为真(后者是 holdout 已过、ready_to_adopt 的既有语义,不是新开口)。accept 在 `can_adopt=false` 时 409;前端再按 `session_outcome` 双保险。采集阶段只显示只读范围行,composer 旁提供「先这样」。
|
||||
- 验证:`rectification-adopt-flow-20260902`、`rectification-decide-next-action`、`rectification-confirmation-gate`、`rectification-candidate-result`;accept 源码锁 409 在 RPC 之前。
|
||||
- 防复发:`can_adopt` 只能收紧,不得在 `collect_evidence` / `discriminate_candidates` / `validate_holdout` 放行。`exact_minute_confirmed` / `completed_with_range` 不得新增放行。
|
||||
- 相关记录:BUG-313、BUG-323
|
||||
- 复发自:BUG-313、BUG-323
|
||||
- 修复版本:待发布
|
||||
|
||||
## BUG-498 | 采用后核对题 choice_card 为空导致不可答
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-02
|
||||
- 最近更新:2026-09-02
|
||||
- 影响面:`keepAcceptedFocus`、`projectRectificationChoiceCard`、`rectification-set-focus`
|
||||
- 用户现象:点「采用此时间」后出现核对题,嵌入卡 disabled,点不了 A–D。
|
||||
- 触发条件:已采用,active focus 为 `reverse_verify:education_style:score`,随后 GET / set-focus 重算 followup。
|
||||
- 根因:承接分支用 `method_id: active_focus` 重建 `question_id`,与已持久化 id 不一致;`projectRectificationChoiceCard` 按设计拒绝串题,返回 null。核对题 schema 还被最高增益区分探针盖上 relocation identity。
|
||||
- 修复:`keepAcceptedFocus` / `out_of_sample_check` 沿用已持久化 `questionId`、`ask_theme`、`domain` 和选项。不放宽 choice-card 校验。reverse_verify schema 不盖区分探针。spokenPrompt 含钟点时保留服务端题干以免卡片不可解析。区分题 keep 仍走 `probe:` semantic_key。
|
||||
- 验证:`rectification-adopt-flow-20260902`、`rectification-question-ownership` 采用后续跑 set-focus。
|
||||
- 防复发:无 semantic_key 的 followup 必须 `focus.questionId === frame.question_id`。
|
||||
- 相关记录:BUG-492、BUG-497
|
||||
- 复发自:无
|
||||
- 修复版本:待发布
|
||||
|
||||
## BUG-499 | 采用卡不沉淀进历史,列表末尾裸按钮
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-02
|
||||
- 最近更新:2026-09-02
|
||||
- 影响面:`rectification-agentic-chat`、`attachOfferResultToTurns`、核对题 skip 文案
|
||||
- 用户现象:采用后三张卡消失,列表末尾出现「用这个时间看盘」;续跑结束后卡又出现在新消息下,与核对题并存。被关掉的采集题无痕消失。
|
||||
- 触发条件:采用后续跑 `busy`;`savedStatus=accepted` 渲染 `rectification-consult-handoff`。
|
||||
- 根因:卡永远锚在最新助手消息;采用后的界面动作散落在列表末尾,不跟出卡消息走。
|
||||
- 修复:出卡消息拥有 `candidateOffer`;采用后原地结算「已采用 / 改选」;状态条承接「改选 / 用这个时间看盘」;核对题「这题跳过」;被关掉的采集题标「已跳过」。
|
||||
- 验证:`rectification-agentic-entry`、`rectification-activity-receipt`、`rectification-adopt-flow-20260902` 组件源码锁。
|
||||
- 防复发:已采用后不得把卡锚到最新消息;不得再渲染 `rectification-consult-handoff`。
|
||||
- 相关记录:BUG-497、BUG-490
|
||||
- 复发自:无
|
||||
- 修复版本:待发布
|
||||
|
||||
## BUG-500 | 校正运行耗时不可观测
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-02
|
||||
- 最近更新:2026-09-02
|
||||
- 影响面:`get_agentic_rectification_turn_receipt`、`tool-service`、`rectification-compare-candidates`、聊天进度文案
|
||||
- 用户现象:采用后续跑约三分钟,回执只有 tool/status/methods;开场 set-focus 失败原因也看不见。
|
||||
- 触发条件:compare-candidates 走引擎;set-focus `invalid_spoken_prompt`;超过 45 秒仍显示「正在处理」。
|
||||
- 根因:回执不暴露 `started_at` / `elapsed_ms`;失败只有 `safeErrorCode`;进度文案不跟活跃步骤切换;`read_only` 仍可能重跑 vedastro-validate。
|
||||
- 修复:回执增加每步耗时和 fingerprint detail;compare 记引擎各段;45 秒后按当前工具换文案;minute-sensitive 已 `passed` 时跳过 vedastro-validate,`failed` 仍重试且不重算排名。
|
||||
- 验证:`rectification-adopt-flow-20260902` 的 elapsed_ms / 45 秒文案;`rectification-eight-method` 失败校验重试。
|
||||
- 防复发:失败行不得用 GET 时的 `now()` 计算耗时;确认门语义不因沿用校验而放宽。
|
||||
- 相关记录:BUG-497、BUG-498
|
||||
- 复发自:无
|
||||
- 修复版本:待发布
|
||||
|
||||
|
||||
Reference in New Issue
Block a user