Files
CM95/docs/CM95_PBF生产化阶段_v1_4_4.md

67 lines
1.6 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.
# CM95 PBF 生产化阶段 v1.4.4
## 状态
目标:解决 v1.4.3 全量 production 重建后剩余 45 个 `MVT encoder dropped features`。
v1.4.3 实测:
- jobs: 20,115
- PASS: 20,070
- FAILED: 45
- FSHHAV hard-gate: 已解决
- 剩余失败:全部 encoder drop
## 根因
v1.4.3 的 MVT 编码前预量化检查只能近似模拟 mapbox-vector-tile 的实际 geometry clean-up。
实际 encoder 内部仍可能把部分 line/polygon 清理为空,因此第一遍 encode/decode 仍发现 planned ID 缺失。
## 修复
采用两阶段真实 encoder reconciliation:
1. encode + decode;
2. 比较 planned IDs 与 actual IDs;
3. 对 dropped ID:
- 普通几何:显式 quantization omission;
- safety-preserving layer:point fallback;
4. 重建 planned set;
5. 重新 encode + decode;
6. 最终仍不一致则 fail-closed。
不会把 depth contour / baseline line 等普通线性对象伪造成 hazard point。
## Production plan 完整性修复
`builder_contract_version` 现在属于 immutable plan 内容,因此 builder 输出语义改变时 Plan ID / Release ID 会改变。
v1.4.4:
`cm95pbf-builder/0.4.4-encoder-reconcile`
这防止同一个 release 目录混用不同 encoder reconciliation 逻辑。
## Release Gate
允许:
- quantization omissions
- safety point fallbacks
- encoder probe candidates
禁止:
- final encoder_dropped_features
- hard_gate_unmapped
- planned/report/decode count mismatch
- unexpected encoder output IDs
## 恢复策略
从 v1.4.3 release 迁移:
`cm95-d1-bfa67dd5625f-289c62fbf758`
预期复用 20,070 PASS,只重建 45 FAILED。