baodan/docs/PPT与海报首迭代Schema评审记录_20260802.md
wsb1224 7a3e2870dc 主要成果:
海报确认、文案生成、海报生成增加服务端失败关闭门禁,绑定文件哈希、解析快照哈希和确认数据哈希,并返回 422 业务错误。[validators.py (line 65)](D:/work/code/python/coding/baodanagent/api/insurance/plan_data/validators.py:65)
缺失金额不再转换为 0;删除错误字段兜底和“年缴×年期=合同总保费”事实推导;里程碑冲突会阻断确认。[normalizer.py (line 14)](D:/work/code/python/coding/baodanagent/api/insurance/ppt/normalizer.py:14)
PPT 渲染器支持可空金额和实际币种,缺失值显示“待确认”,避免 float(None)、空值除法等异常。
模板必须覆盖全部输入保司和产品;自动选择排序确定化,同优先级歧义时阻断。[template_selection.py (line 4)](D:/work/code/python/coding/baodanagent/api/insurance/ppt/template_selection.py:4)
场景判定写入 scenarioOverrideTrace,记录请求、模板、服务端及 Worker 最终判定。[routes.py (line 555)](D:/work/code/python/coding/baodanagent/api/insurance/ppt/routes.py:555)
前端增加哈希提交、人工调整原因、模板歧义提示及真实能力说明。
冻结三份核心 Schema,并建立 Goldens manifest、说明和评估脚本。
验证结果:
后端目标回归:111 passed, 1 skipped
PPT 运行时回归:81 passed
前端生产构建和 vue-tsc:通过
Python compileall:通过
三份 Schema JSON:解析通过
git diff --check:通过,仅有换行符提示
2026-08-02 12:58:41 +08:00

1.2 KiB
Raw Blame History

PPT 与海报首迭代 Schema 评审记录

评审范围

  • docs/schemas/document-ir.schema.json
  • docs/schemas/field-value.schema.json
  • docs/schemas/plan-data-snapshot.schema.json

已冻结约束

  1. 未知值使用 null + missing,真实数值 0 保留为数值;非法数字不能进入 FieldValue。
  2. conflict 必须保留候选,不得静默覆盖;derived 必须记录公式且默认不参与排名、对账和结论。
  3. 关键金额通过 EvidenceRef 指向文档页和 bbox人工覆盖使用 confirmed + overrideReason
  4. Document IR 只保存版面事实,不决定保险业务字段最终值。
  5. confirmed snapshot 的阻断数和冲突数必须为 0并绑定 document SHA-256 与规范化 snapshot hash。
  6. benefit row 的业务主键必须包含场景,后续迁移不得只按保单年度去重。

尚待业务确认

  • 各险种的完整必填字段与合理范围;
  • 可用于强校验的公式清单;
  • 非保证场景、演示利率和提取前后口径;
  • 跨产品可比条件;
  • 文档、快照、证据和成品留存天数。

这些决策未完成前不创建 migrate_036~037,避免把未确认口径固化进数据库。