Full TAP failed because invite_more is not a target_kind enum value, and exhaustion re-decide after skipped targeted persist must reuse decideAfterInferenceChange. Co-authored-by: Cursor <cursoragent@cursor.com>
37 lines
2.2 KiB
Markdown
37 lines
2.2 KiB
Markdown
# 进度 · 修复单:采集焦点 kind、剩余候选刷新、刷新尝试落库(2026-09-12)
|
||
|
||
## 范围
|
||
|
||
- 分支:`codex/rectification-targeted-collect-persist-fix-20260911`(基于 `origin/staging` @ `2b6d28e7`)
|
||
- 任务单:`docs/tasks/TASK-rectification-targeted-collect-persist-fix-20260911.md`
|
||
- BUG-656:采集焦点 `kind` 映射到表 CHECK
|
||
- BUG-657:引擎刷新按剩余候选
|
||
- BUG-658:刷新尝试落库、等待收窄按已问过判定、落库失败同一事务出卡
|
||
- T1 与 T3 不可省;T2 已一并做完
|
||
|
||
## 完成
|
||
|
||
- T1 `collectFocusTargetKind`:`targeted:` / `anchor:` / `generic:` 写入 CHECK 枚举;原 hint 进 `collect_kind`
|
||
- T2 `build_refinement_packet`:`refresh_probes` 且 `column_times` 非空时用剩余分钟生成探针;回执 `refresh_result`
|
||
- T3 `refresh_attempts` 以 `already_answered` 持久化;`refreshExhausted` / `shouldRefreshDatedPool` 同源;定向 persist `skipped` 出「目前范围」;`collect_waiting` 覆盖无 stopReason 的采集缺口
|
||
- T4 BUG-656~658、CHANGELOG、本文件、场景 0c
|
||
|
||
## 验收(本机,未部署)
|
||
|
||
- `frontend` `tsc --noEmit` 0 错
|
||
- eslint 变更文件 0 error(既有 unused-import warning 仍在)
|
||
- `rectification-server-focus.test.ts` + `rectification-probe-pool-exhausted-20260911.test.ts` + `rectification-surface-state.test.ts` + `rectification-replay-20260911.test.ts`:**51 / 51**
|
||
- Python:`test_candidate_discriminator_contract.py` + `test_rectification_event_probes.py`,fail=0(`.venv/bin/python -m pytest`)
|
||
|
||
## 门禁跟进(2026-09-12)
|
||
|
||
- Independent Staging Quality Gate run 2568 / SHA `eae049d0`:validate 失败,`npm test --prefix frontend` **fail 4 / 3132**
|
||
- 原因不是基础设施:全量 TAP 才跑到的既有用例被 CHECK 映射和第三次 `decideFromDossier` 打坏
|
||
- `invite_more` 不再写入 `target_kind`(CHECK 不允许),改断言 `null` + `collect_kind=invite_more`
|
||
- `persistExhaustionCollect` 定向 persist skipped 后改走已有的 `decideAfterInferenceChange`,idle 源码切片仍是两次 `decideFromDossier`(BUG-653)
|
||
- 本机补跑上述 4 个失败套件后再推 staging
|
||
|
||
## 未做
|
||
|
||
- 未部署后按场景 0c 真机走一遍
|