diff --git a/TASK-rectification-adopt-flow-20260902.md b/TASK-rectification-adopt-flow-20260902.md index 1e59c97a..85f99aff 100644 --- a/TASK-rectification-adopt-flow-20260902.md +++ b/TASK-rectification-adopt-flow-20260902.md @@ -53,6 +53,9 @@ 1. 续跑(`send("read_only","")`)的 Agent 正文必须承认已采用并说明接下来是核对:`method-followup.ts` accepted 分支的 `user_prompt_hint` 已写"当前排盘已采用……",但 `active_focus` 承接分支的 hint 没有;两处统一,并在 `agentic-rectification.ts` 指令里加一条"case.accepted_time 非空时,正文第一句要说明已按该时间采用、现在在核对"。 2. §2 修好后,在 `rectification-question-ownership.test.ts` 追加"采用后续跑:Agent 只传 spokenPrompt + 服务端 questionId → set-focus `ok:true`、focus id 不变、选项 4 个"。 3. set-focus `failed` 的 receipt 目前只有 `safeErrorCode`;把 `reason`(`year_missing` / `probe_mismatch` 等)也写进 `tool_activities[].detail`,后台可查。 +4. 同一 case 的两处旁证一并处理: + - 开场轮 `rectification-set-focus` 也是 `failed`,题目由服务端兜底模板建立,`question_id = collect:unknown:collect_method_evidence`(domain 落成 `unknown`)。用第 3 条的 `reason` 落库后查明失败原因;开场采集题的兜底 domain 不得是 `unknown`——`spokenCollectFallbackFollowup` / `persistableFocusDomain` 在开场时应取 followup 轮转的第一个领域(如 `education`)。 + - 第三轮正文"选一个最贴近你实际情况的就行,答不上来也可以选「一时说不好」":没有承接用户刚说的 2024 年感情事件,还预告了选项。属 prompt 层:`agentic-rectification.ts` 指令里"正文不要提问、不要复述选项"要补"必须先用一句话承接用户本轮给出的事实(年份+事件)",VOICE.md 坏例加一条"预告选项"。不做运行时正文字符串校验。 ## 5. P2 · 运行可观测与超时