Files
Jyotisha/docs/tasks/PROGRESS-rectification-latent-audit-20260910.md
T

5.2 KiB
Raw Blame History

PROGRESS · 生时校正顺带审计:同年去重、双轨按簇、簇宽、代表分钟(2026-09-10)

工作树:.worktrees/rectification-unwritten-evidence-claim-20260910 分支:codex/rectification-unwritten-evidence-claim-20260910 任务书:docs/tasks/TASK-rectification-latent-audit-20260910.md 基线:任务书写 origin/staging @ a15fc3ef;本工作树同时交付 BUG-635/636。BUG 编号从 637 起,与任务书一致。

开工回执

  • 编号 BUG-637P2/ BUG-638P2/ BUG-639P3/ BUG-640P3)。
  • 观察项 §5 未立单。
  • 与 BUG-635/636 不改同一代码文件;文档与本单一起验收。

决策(BUG-638

Python 按 argmax 映射到所在簇 比较,不改成代表分钟列表。两轨峰值同簇即 agree;没有簇时仍按分钟比较。确认门不因本次 agree 从关到开。

已完成

  • BUG-637:账本派生的精确 domain.year 键只拦存在性探针。known_event_quality / event_qualityaskedKeysForSameYearDedup 去掉这些键后再做同年去重;已答质量键仍丢。remainingConflictProbes 本来就跳过质量题,未改。不改 SCORE_DELTA、四选项、确认门。
  • BUG-638dasha_agreement(..., clusters=) 与 TS dashaAgreementAmongActive(..., clusters) 按簇比较。decision_policycandidate_decisions 传入 build_refinement_packet。引擎原值仍是 dasha_agreement_pre_inference。BUG-593 记录已补正。
  • BUG-639indistinguishable_width_minutes / indistinguishableWidthMinutesmax(cluster_end)-min(cluster_start)+1;缺字段回退到 timetied_minute_count 不动。decideFromDossierparseRectificationCandidateResultclusterStart / clusterEnd 传进确认门,避免刷新路径只按代表分钟少算。
  • BUG-640:推断代表分钟 ≠ 引擎代表分钟时,公开 house_table / natal_recast 跟推断分钟;引擎原值改名 *_pre_inference。Agent 可见投影剥掉这三个字段。不改引擎。
  • 记录:BUG-389/593/637640、CHANGELOG、本文件。Skill 版本不变(10.0.21)。

验收命令(实测)

工作树 codex/rectification-unwritten-evidence-claim-20260910

命令 结果
.venv pytest tests/test_rectification_refinement_packet.py tests/test_rectification_confirmation_and.py 23/23 pass
frontend tsx --test 探针去重 / 收敛 / 确认门 / 交付报告 / ingest-p0 38/38 pass
frontend ./node_modules/.bin/tsc --noEmit 0 error
frontend npm run lint 0 error / 111 warning(既有债)
git diff --check 干净

既有断言改动

  • tests/test_rectification_refinement_packet.py test_decision_receipt_downgrades_confidence_on_dasha_conflict:原值 05:13 vs 05:14、两分钟同 d1;新值 05:13 vs 05:20、d1=1 vs d1=2。原因:BUG-638 同簇改为 agree,相邻 1 分钟会被并成一簇,必须改成跨簇才能继续锁 conflict。

环境缺口

  • 无登录态:未做真人走查。
  • 未跑 next build,未核 / 是否仍 ○ Static、首屏 gzip ±2%。
  • 未跑 run_quality_gate.py --profile quick

未做

  • 观察项 §5 未立产品单。
  • 未提升 main。Skill 未升版。

验收结论(Claude2026-09-10,基线 origin/staging @ 8f9eb587staging 已部署同 SHA

结论
BUG-637 账本 domain.year 键只拦存在性探针,三处判定点(inspectDiscriminatorProbes / renderableEventProbe / remainingReverseVerifyProbes)均经 askedKeysForSameYearDedup;已答质量键仍丢;BUG-389 记「复发自 BUG-592」 通过(rectification-probe-year-dedupe-20260906.test.ts 两条新用例)
BUG-638 Python dasha_agreement(clusters=) 按簇比较、decision_policycandidate_decisionsTS dashaAgreementAmongActive(..., clusters)dasha_agreement_pre_inference 真实存在;BUG-593 记录补正;确认门不因 agree 打开 通过(Python 4 条新用例 + test_same_cluster_dasha_peaks_agree_without_opening_confirmation;既有冲突用例改成跨簇并写明原值/新值/原因)
BUG-639 宽度 = max(cluster_end)-min(cluster_start)+1Python 与 TS 同改;clusterStart/End 进确认门解析与 decideFromDossier 通过(test_indistinguishable_width_uses_cluster_span_not_representatives + 3 条 TS 用例)
BUG-640 公开 house_table / natal_recast 跟推断代表分钟;引擎原值 *_pre_inferenceAgent 可见投影剥掉 通过(public house table follows the inference representative minute
Python 定向 test_rectification_refinement_packet.py + test_rectification_confirmation_and.py 23/23
run_quality_gate.py --profile quick 729 过 / 1 失败:test_shadbala_endpoint_returns_ranked_planet_strength「timezone inference dependency unavailable」,基线 d96b24c2 同环境同样失败,环境缺口,与本轮无关
前端门禁 与 BUG-635/636 单同一次运行:tsc 0 错、lint 0 error、全套失败 27 条均为环境项(见那份进度记录)
部署 /api/health deployment.gitCommit = 8f9eb587

环境缺口:未跑 next build;无登录态未做真人走查。观察项 §5 未立单,维持原状。