Files
Jyotisha/docs/tasks/PROGRESS-rectification-delivery-report-facts-20260908.md
T
Jesse_ChenandCursor 06e4410431
Independent Staging Quality Gate / validate (push) Successful in 15m5s
Independent Staging Quality Gate / publish (push) Has been cancelled
fix(rectification): make delivery report use inference-window facts (BUG-593)
The verification template was still quoting the engine's pre-inference span and eliminated dasha tops, and D9/D10 signs were left for the model to guess from transition clocks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 15:33:48 +08:00

45 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# PROGRESS · 交付轮验证报告跟卡片用同一套事实(2026-09-08)
工作树:`.worktrees/rectification-delivery-report-facts-20260908`
分支:`codex/rectification-delivery-report-facts-20260908`
任务书:`docs/tasks/TASK-rectification-delivery-report-facts-20260908.md`
基线:`origin/staging` @ `f17af254`(任务书;代码头 `7ca6ade2`
本单状态:**待验收**。本提交交付到 staging。
未改:确认门、`confirmation_allowed` 算法、`MIN_SEPARATION_LEAD``_relative_support``minute_step=1`、四选项合同、`SCORE_DELTA`。Skill 从 10.0.15 升到 **10.0.16**
## 做了什么
- **决策 1** 有 `inference_state` 时,验证报告 `width_minutes``credible_range` 含两端分钟数;`dasha_agreement` 只在 active 分钟上过滤引擎双轨 top,引擎原值只留 `dasha_agreement_pre_inference`(Agent 投影剥掉)。顶层宽度改名 `engine_indistinguishable_width_minutes`
- **决策 2** 报告增加 `sign_by_candidate`,与分歧面板共用 `signFromTransitions``skill_verification_report` 改为 `{ markdown, width_minutes, dasha_agreement, sign_by_candidate }`。Skill 10.0.16 要求分盘上升只抄该表。
- **决策 3** 边界句「不是已确认的唯一出生分钟」保留;确认门仍看引擎候选跨度。
## 三栏(被触碰断言)
| 用例 | 原值 | 新值 | 理由 |
| --- | --- | --- | --- |
| 事故形状报告宽度 | `29 分钟`(引擎 `tied_minute_count` | `width_minutes === 3`,正文「3 分钟」 | 决策 104:5104:53 含两端 |
| 报告双轨 top | 05:06 / 04:59`conflict` | 只含 04:51/04:53,或两端都淘汰则 `agree`+空 top | 决策 1,过滤不是矩阵重算 |
| 04:53 D10 | 模型按 05:00 换升写成狮子座 | `sign_by_candidate["04:53"].d10 === "巨蟹座"` | 决策 2 |
| 投影宽度字段名 | `indistinguishable_width_minutes` | `engine_indistinguishable_width_minutes` | 决策 1;确认门内部字段不改 |
| `confirmation_allowed` | `false`(宽 29 | 仍 `false` | 决策 3 |
## 测试
- `frontend` `./node_modules/.bin/tsc --noEmit`exit 0
- `npm run lint`0 error / 103 warning(仓库既有 warning 未清)
- 任务书指定 TS 切片(`tests/rectification-*.test.ts` + `agent-voice-copy-contract.test.ts` + `skill-registry.test.ts`,排除 database):**1027 passed / 0 failed**
- 新文件 `frontend/tests/rectification-delivery-report-facts.test.ts` 覆盖事故三处事实
- Docker `database-rectification-*.test.ts`:本机未跑,记 blocked
- 浏览器真人走查:无登录态,见 `docs/testing/rectification-scenarios-20260907.md` §9
Skill 10.0.16 SHA256`b25dca7fe3630aceaf152ec99d37a2d946e4d71f1f191fc9071e11bc297e763f`。live 树与 `versions/10.0.16` 字节一致。
## 偏离
1. 双轨重算是 **active 集合过滤**,不是 Python 矩阵重打分。两个引擎 top 都不在 active 里时 `status="agree"`、top 为 `null`,正文不点名已淘汰分钟。
2. `skill_verification_report` 从 markdown 字符串改成对象;旧用例读 `.markdown`
3. 本机主仓停在 `codex/minute-rectification-p0` 且有脏文件,未 checkout/resetERR-008)。本单在独立 worktree 基于 `origin/staging` 做。
4. 预检 `python3 scripts/pre_work_check.py` 在本机 python 3.14 / 缺 pytest 时失败;远端可见性仍 verified。不把预检失败写成云端未同步。