# PROGRESS · 生时校正:健康区分题写入失败 + 按盘型挑题默认开启(2026-10-01) 执行:Claude 直接执行(产品负责人 2026-10-01「同意」:前后 10 分钟先开、修复后重测前后 30 分钟,过红线再放开)。分支 `codex/rectification-segment-order-20261001`。无单独任务书;背景见 `TASK-rectification-varga-resolution-20260930.md` T5 与 `docs/research/rectification_varga_resolution_2026_09_30.md` §4。BUG-1143、BUG-1144。 ## 经过 1. 77 例 × ±10 / ±30 真库持久回放(PostgreSQL 17 替身;`frontend/tests/research/rectification-segment-persisted-replay.ts` 经 `scripts/research/varga_resolution_persisted_replay.py`)比较按段选题关 / 开:±10 开启头段多命中 6 例、真值段 0 丢失;±30 开启丢 3 例真值段(`docs/research/varga_resolution_persisted_onoff_before_fix_2026_10_01.json`)。 2. 逐例插桩(临时,未提交):丢失不是排序删题。区分类健康题写焦点时 `target_domain=health_pressure` 违反表约束,写入失败被吞,流程从 exhaustion 出口提前交付;开启排序只是把健康题排到第一位、更早撞上。默认顺序下同样发生(BUG-1143,BUG-672 同族复发)。 3. 修 BUG-1143 后重跑(`…after_fix_2026_10_01.json`)。 ## 77 例真库持久回放(修前 → 修后) | 窗口 / 顺序 | 平均问题数 | 问满 6 题 | D9 头段命中 | D10 头段命中 | 真值段保留 D9 / D10 | | --- | --- | --- | --- | --- | --- | | ±10 默认 | 2.82 → 4.56 | 21 → 50 | 65 → 70 | 64 → 65 | 76/76 → 76/76 | | ±10 按段 | 2.87 → 4.61 | 22 → 52 | 68 → 71 | 67 → 67 | 76/76 → 76/76 | | ±30 默认 | 3.58 → 5.43 | 30 → 69 | 38 → 46 | 39 → 52 | 76/76 → 76/76 | | ±30 按段 | 3.53 → 5.43 | 29 → 69 | 41 → 51 | 40 → 55 | 74/75 → 76/76 | 修后日志 `retry next focus failed`:0 条。±60 未回放(排序包络上限 61 分钟,>61 不启用)。 ## 改动 | 文件 | 改动 | | --- | --- | | `v9/server-focus.ts` | 新增 `focusTargetDomain`,所有意图焦点写入经 `persistableFocusDomain` | | `v9/method-followup.ts` | 三处焦点 ↔ 探针领域比较改 `sameCollectDomain` | | `core/segment-probe-order.ts` | `segmentOrderEnabledFor(window, flag)`:默认 ≤ 61 分钟开、`off` 关、`on` 研究包络 | | `v9/score-persist.ts` | 用上面函数代替 `RECTIFICATION_SEGMENT_ORDER === "on"` | | 测试 | `rectification-focus-target-domain-20261001.test.ts`(3)、`rectification-segment-order-default-20261001.test.ts`(2) | 既有断言改动:无。 ## 门禁(对 `origin/staging`,替身真库除外均为本机) | 检查 | 基线 | 本分支 | | --- | --- | --- | | tsc / lint | 0 / 0 error、126 warning | 0 / 0 error、126 warning | | npm test | 4846 / fail 24 | 4851 / fail 24;失败清单逐名相同,基线名 0 丢失,新增 5 | | 按镜像 COPY 清单构建 | — | exit 0 | | `/` / 首屏 gzip | Static / JS 555,622、CSS 68,813 | Static / 相同 | | 快速门 | — | Python 1036 passed / 1 skipped / 0 failed | 默认窗口由 21 放宽到 61 后:受影响 6 个测试文件 322 / 322、tsc 0。 ## 缺口 - 真库证据为 PostgreSQL 17 替身;本次不改数据库结构。 - 真机:部署后在 staging 走一次前后 30 分钟窗口的校正,确认能问到健康题、能问满几题。