fix(consult): write the first turn as chat, not a sectioned report

Ordinary consult first turns drop Markdown headings and the required
action list. People are named in the paragraph, and pinned examples no
longer contain copyable advice. BUG-1244, BUG-1245.
This commit is contained in:
jesse-ux
2026-10-06 15:58:40 +08:00
committed by Jesse_Chen
parent 6d28298226
commit 5a589a9058
18 changed files with 434 additions and 168 deletions
+30
View File
@@ -16673,3 +16673,33 @@
- 相关记录:BUG-560、BUG-1090、BUG-1091、BUG-1105、BUG-1141。
- 复发自:无
- 修复版本:研究分支 `codex/rectification-nadi-seconds-research-20261005`,2026-10-05 Claude 验收后合入 staging(只有研究脚本与文档,没有运行时改动)
## BUG-1244 | 普通对话首轮按固定小标题汇报,读起来不像聊天
- 状态:fixed-pending-verify(分支 `codex/consult-conversational-answer-20261006`;部署和真机清单完成前不标 resolved)
- 首次发现 / 最近更新:2026-10-06 / 2026-10-06
- 来源:产品看普通对话首轮,反馈像机器在汇报。任务书 `docs/tasks/TASK-consult-conversational-answer-20261006.md`。
- 影响面:普通咨询本命 / 无出生分钟 / 申报时段的首轮写作指令、续写提示、思考计划里的「这周可以做什么」、没有标题时的写作行。不改证据卡、工具、模型、输出长度上限、答题时钟、计费。每日星语和「深入看今日」的骨架不动。生时校正的口气不动。
- 现象:首轮按「开场 → 按对象的小标题 → 依据节 → 时间节 → 行动节」往下写。行动清单放在固定的最后一节。问到几个人时,段首是二级标题。申报时段还会要求先写「先回答你的问题」这个标题。
- 根因:2026-10-01 的形状(BUG-1132)把「按对象分段」做成了二级标题,并保留三个固定节。2026-09-27 的「行动只在最后一节出现一次」(BUG-1073 的标题部分)仍要求交那一节。模型按标题填空,读起来是汇报。
- 修复:形状只在 `consultation-thinking-plan.ts` 定义一处。首轮不写二级标题;问到几个人就分段落,段首点名。行动不强制,盘上有具体指向才顺口一句,用户问怎么办时那一轮可以给几条。首轮通常三到六段,不设硬截断。追问仍讲清楚为准;换领域或要求完整看时回到同样的段落形状。思考计划去掉行动节。正文没有二级标题时,思考节在流式中不保持进行中,结算后一起完成。写作行走「组织回答」。历史消息里已经写出的标题仍能拆开。`REPORT_HEADING` 只留在拆旧消息和思考节的 heading 字段里,不再拼进提示词。
- 验证:合同测试见进度记录。本机没有模型凭据,四道离线题没有真跑。真机八步见 `docs/testing/consult-conversational-answer-20261006.md`。staging 尚未部署这次改动。
- 防复发:`consultation-thinking-plan.test.ts`、`consultation-voice-contract.test.ts`、`consultation-run-timeline.test.ts` 锁住「不写 ## 节名」「段首点名」「行动不强制」「三到六段」,以及无标题首轮的思考节与写作行。改断言写了原值 / 新值 / 原因。
- 相关记录:BUG-1073(同一件事只说一遍,保留)、BUG-1132(10-01 的按对象标题与三个固定节,本记录推翻其标题部分)。
- 复发自:无。这是产品改口径,不是 1073 / 1132 的同一缺陷复发。
- 修复版本:待发布
## BUG-1245 | 提示词里的行动示范被回答逐字照抄
- 状态:fixed-pending-verify(分支 `codex/consult-conversational-answer-20261006`;部署和真机清单完成前不标 resolved)
- 首次发现 / 最近更新:2026-10-06 / 2026-10-06
- 来源:同上任务书。产品指出示范里的具体做法会出现在真实回答里。
- 影响面:`product-voice.ts` 的 Good 示范。不改计算,不改证据卡。
- 现象:不同人的回答里出现同一套可以照抄的生活建议,例如书面确认、这周去看小毛病、给妈妈打电话先问近况,以及「这周」行动节的标题。
- 根因:Good 示范把具体行动句和固定标题写进了提示词。模型把示范当答案抄。
- 修复:父母题和事业题的 Good 示范改成段落,段首点名,括号里只留依据占位。删掉全部具体行动句。另加一条只示意结构、不给可抄句子的汇报体 Bad。提示词里不再出现那三句旧行动,也不再出现「## 这周」。
- 验证:`consultation-voice-contract.test.ts` 的「pinned examples carry no copyable action and no weekly heading (BUG-1245)」。真机第 3 步换人再问,看建议是否还是同一模子。本机没有模型凭据,没有对照跑新旧提示词。
- 防复发:上述测试锁住三句旧行动和「## 这周」不得出现在提示词里。
- 相关记录:BUG-1165、BUG-1168、BUG-1182(示范被照抄的前几轮)、BUG-1244。
- 复发自:BUG-1165 的「示范被当成规则照抄」。旧测试锁的是读法和职业形态,没有锁行动句,所以这次换了一类句子仍能抄出去。
- 修复版本:待发布