fix: show rectification range in opening
This commit is contained in:
@@ -1383,3 +1383,18 @@
|
||||
- 防复发:首页可点击入口必须与 `resolveBirthTimeConsultationRoute()` 的能力结果一致;服务端不得把客户端咨询模式当作出生资料真源,具体填报分钟必须进入 `unverified_birth_time`,只有 `confirmed + active_birth_time` 才能进入 `verified_chart`。
|
||||
- 相关记录:BUG-009
|
||||
- 修复版本:待提交(本地可测)
|
||||
|
||||
## BUG-074 | 生时校正首轮隐藏已知候选范围并让用户误以为系统没有读取资料
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-07-25
|
||||
- 最近更新:2026-07-25
|
||||
- 影响面:生时校正新建 case 的确定性首轮引导
|
||||
- 用户现象:用户已经填写具体出生时间和误差范围,进入生时校正后却只看到泛化的重大事件提问,不知道系统实际正在核对哪个时间窗口。
|
||||
- 触发条件:新建 `conversational-evidence-v3` case,首轮候选已经包含 `rangeStart` / `rangeEnd`,但可见 narrative 没有显示它们;旧生产版本还会调用模型生成同类泛化开场。
|
||||
- 根因:BUG-072 的快速首轮正确保留了候选范围,却只把范围写入结构化 `candidate`;首页不单独渲染该字段,固定 narrative 仍沿用了不含范围的旧提问。
|
||||
- 修复:复用首轮已经计算出的声明范围,在确定性 narrative 中明确显示当前待核对边界,并说明它不是已确认分钟;继续只问一件带年月的重要经历,不恢复零证据模型调用或分钟扫描。
|
||||
- 验证:Orchestrator 回归断言首轮正文包含真实 `rangeStart–rangeEnd`、未确认边界和单事件提问;聚焦测试、目标 ESLint 与 `git diff --check` 通过。
|
||||
- 防复发:只要首轮已向用户展示生时校正状态,可见文案必须同时呈现结构化候选边界;不得只在隐藏状态中保存范围,也不得为了润色首问重新引入模型调用。
|
||||
- 相关记录:BUG-055、BUG-067、BUG-072
|
||||
- 修复版本:待提交(本地可测)
|
||||
|
||||
@@ -603,7 +603,7 @@ function openingRectificationState(input: {
|
||||
journeyProtocol: "conversational-evidence-v3",
|
||||
status: "active",
|
||||
turnVersion: 0,
|
||||
narrative: "我们先从一件时间最明确、影响比较大的真实经历开始。请只说一件,并告诉我大约发生在哪一年、哪一月?",
|
||||
narrative: `根据你填写的出生时间信息,当前先核对 ${range.startTime}–${range.endTime}。这只是待核对范围,还不能把其中某一分钟当作已确认出生时间。请先说一件时间最明确、影响比较大的真实经历,并尽量告诉我发生的年月。`,
|
||||
candidate: {
|
||||
status: "pending_validation",
|
||||
representativeTime,
|
||||
|
||||
@@ -523,6 +523,9 @@ test("start creates a deterministic opening without scanning or narrative genera
|
||||
assert.equal(turn.candidate.representativeTime, "05:20");
|
||||
assert.equal(turn.candidate.rangeStart, "04:50");
|
||||
assert.equal(turn.candidate.rangeEnd, "05:50");
|
||||
assert.match(turn.narrative, /当前先核对 04:50–05:50/);
|
||||
assert.match(turn.narrative, /还不能把其中某一分钟当作已确认出生时间/);
|
||||
assert.match(turn.narrative, /请先说一件/);
|
||||
assert.deepEqual(turn.technicalReceipt, {
|
||||
calculationVersion: "rectification-opening-v1",
|
||||
stableLayers: [],
|
||||
|
||||
Reference in New Issue
Block a user