docs(tasks): accept 4e0db55f (stale compare fix, BUG-577~580)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
This commit is contained in:
Jesse_Chen
2026-09-07 07:53:46 +00:00
parent 84a2975473
commit 63eba4208e
2 changed files with 22 additions and 1 deletions
+1 -1
View File
@@ -68,7 +68,7 @@
| `TASK-rectification-unknown-time-20260906.md` | `PROGRESS-rectification-unknown-time-20260906.md` | 完全不知道出生时间的两段式路线:`stage=block_scan` 以 10 分钟步长扫 24 小时只做事件计分、出五时段四选卡(不写账本不采用),选定后进现有分钟流程;引擎加 `minute_step`;开场读 `birth_time_clue`;删 intake 劝退文案 | 已验收(带修复单:时段支持度按段长偏置,下午段先天 25%,P1) | `814c924e`;修复单 `TASK-rectification-capability-fix-20260907.md`BUG-570 |
| `TASK-rectification-capability-fix-20260907.md` | `PROGRESS-rectification-capability-fix-20260907.md` | 能力补齐修复单:答后旁白把 `range_start/range_end`(搜索窗口)当范围比较,每题都说「范围没变」;`block_scan` 五段支持度按段内原始分求和,长时段先天占优(24/24/36/30/30 个候选);`TRACK_LABEL` 音译与产品 Vimshottari/Narayana 口径不一;BLK-001 写到 `docs/BLOCKED.md` 应回根目录 | 已验收通过(P2block_scan 15 s 壁钟断言在门禁里可能间歇红) | `517df002`BUG-569570);staging 未部署,需先 Migrate Staging Database |
| `TASK-rectification-declared-uncertainty-20260907.md` | `PROGRESS-rectification-declared-uncertainty-20260907.md` | 出生时间「有多确定」只在 intake 问一次:三档(医院记录 / 家人大概 ±15·30·60·120 / 时段或未知),校正窗口读档案(现在有钟点一律 ±15,声明值被忽略,BUG-571);吻合率 <60% 且代表分钟贴窗口边缘时出服务端一键放宽卡,放宽后重算并写回档案(BUG-572);窗口 >120 分钟先切三子段迭代到 ≤120 再进分钟(BUG-573);日级事件问一次可靠度;四个脚本化手测场景进 docs/testing | 已验收通过(2 P3 建议:可靠度正则去掉「记得」、档案写回改走 account-profile-patch | `8e31680b`BUG-571573);迁移 `20260907020000` 待应用,部署前先 Migrate Staging Database |
| `TASK-rectification-stale-compare-fix-20260907.md` | `PROGRESS-rectification-stale-compare-fix-20260907.md` | **P0**BUG-559 把过长 `candidate_split_hash` 塞进引擎比较键,答完性格/边界卡后比较静默失败;快照过期压过用户停止;holdout 用过期领域被改写成「再说一件事」;采集轮正文双写 | 验收(当天须合入部署) | `codex/rectification-stale-compare-fix-20260907`BUG-577580;任务书仍写 575578,开工时 575/576 已被占用) |
| `TASK-rectification-stale-compare-fix-20260907.md` | `PROGRESS-rectification-stale-compare-fix-20260907.md` | **P0**BUG-559 把过长 `candidate_split_hash` 塞进引擎比较键,答完性格/边界卡后比较静默失败;快照过期压过用户停止;holdout 用过期领域被改写成「再说一件事」;采集轮正文双写 | 验收通过(P2 正文双写根因未拆、P3 重算节流 Map 只增不减) | `4e0db55f`(落地编号 BUG-577580);staging 未部署 |
| `TASK-api-not-configured-mislabel-20260904.md` | `PROGRESS-api-not-configured-mislabel-20260904.md` | 16 处路由把数据库瞬断(部署切换窗口)兜底翻译成 503「服务尚未配置」;改为仅配置错误用该文案,其余 `service_unavailable`,收敛为共享 helper | 已验收 | `5483649b`(BUG-542);2 条子进程测试留 CI Node 22 复核 |
| `TASK-rectification-ux-20260902.md` | `PROGRESS-rectification-ux-20260903.md` | 会话面空白假死与交互摩擦 | 已验收 | `d159f08e`(09-03 在新基线重做后合入,BUG-505509 |
@@ -90,3 +90,24 @@ ln -s /workspace/Jyotisha/.venv .venv
.venv/bin/python -m pytest tests/test_rectification_input_contract.py tests/test_rectification_v5_services.py -q
cd frontend && ls tests/rectification-*.test.ts tests/consultation-*.test.ts tests/agent-voice-copy-contract.test.ts | grep -v database | xargs npx tsx --test 2>&1 | grep -E "^# (tests|pass|fail)"
```
## 验收(Claude2026-09-07`origin/staging` @ `84a29754`,实现 `4e0db55f`;落地编号 BUG-577580
| 门 | 结果 |
| --- | --- |
| tsc / lint | 0 错 / 0 error84 warning,既有类型) |
| 前端 rectification + consultation + birth-time + voice(非 DB | 1556 / 0 |
| Python input_contract / v5_services / event_probes / engine_convergence / growth contract | 全绿 |
| 引擎实测:把事故里 128 字符的 varga split hash + 一个 250 字符键传给 `normalize_rectification_request` | 不再 400:128 字符保留,250 字符跳过并计数 `dropped_asked_probe_keys=1``score_candidates` 正常返回,receipt 带计数 |
| `minute_step=1` 字节级不变(虚构 7 件事新旧复跑) | candidate_scores / result_id / spec_hash 全等 |
| 项 | 结论 |
| --- | --- |
| 5.1 BUG-577 | 通过。TS 只传 `semantic_key` + 账本年份键,再过滤 `:varga.` 与 >200;引擎上限 200、超长跳过计数。与任务书"跳过 128"冲突处按决策 1(上限 200)处理,执行方已写明 |
| 5.2 BUG-578 | 通过。失败 receipt 带 `safe_error_code` + `engine_message`(120 字);正文追加固定句;闲置/非终止退出在快照过期时先重算,同 case+指纹+turn 只一次 |
| 5.3 BUG-579 | 通过。`userStopped && ranked>0` 提前;STOP 与无焦点停止先重算,失败则按上一次成功比较交付并加旁白 |
| 5.4 BUG-580 | 通过。holdout 领域排除账本已有带年月事件;题干改 `USER_COLLECT_QUESTION[domain]` 口述采集。执行方没把决策层改成 `unavailable`(避免落到无卡的 offer),理由成立 |
| 5.5 P2 正文双写 | 部分:只做了与题干近重复句的删除;两段复述的根因(`intent.classified` 双触发)未拆,执行方如实记为偏离 |
| P3 | `rescoreAttempts` 是进程内 Map,只增不减(有测试用 reset 钩子),长期运行会缓慢增长;建议加上限或按 case 清理 |
部署:staging 当前 `3f4d38d4`,本轮无迁移,直接部署即可;部署后按 `docs/testing/rectification-scenarios-20260907.md` 第 0 条先复现"答完性格卡再说一件事"。