Files
gaokao-volunteer-system/docs/RULES_SOURCE_OF_TRUTH.md
Hermes Agent 246f21c7f2
Some checks failed
CI / pytest (Python 3.10) (push) Has been cancelled
CI / pytest (Python 3.11) (push) Has been cancelled
CI / pytest (Python 3.12) (push) Has been cancelled
feat(review): land unified remediation and rules evidence closure
2026-06-18 10:21:38 +08:00

5.8 KiB
Raw Blame History

RULES_SOURCE_OF_TRUTH

最后更新: 2026-06-18 真相源: 本文件是"规则"维度的入口索引。 设计上下文: docs/DESIGN_RULES_TRUSTED_CLI_2026-06-16.md §2 执行上下文: docs/ACTIVE_EXECUTION_BOARD_2026-06-17.md §1.1


1. 范围

本文件收敛以下四类信息:

  • 国家级规则
  • 省级规则
  • 规则证据链
  • 统一审计入口

2. 当前真相源路径

类别 路径 格式 写入方式
国家级规则 rules/_truth/national.yaml YAML 人工摘录 + 官方文件校对
省级规则 rules/_truth/province/<slug>.yaml YAML 人工摘录 + 招生考试院校对
规则证据层 rules/_evidence/<prov>/<year>-<topic>.md Markdown 待补建(设计层 Phase 1.5 要求)
旧规则字典 scripts/gaokao-checker PROVINCE_RULES Python 过渡期镜像,已迁移到 _truth
错误码字典 rules/errors/ERRORS.md Markdown 人工维护

2.1 当前已落地范围2026-06-18

  • 已落地 rules/_truth/national.yaml(国家级)
  • 已落地 rules/_truth/province/<slug>.yaml27 省2026 版)
  • 已落地 data/rules/loader.py RuleLoader.from_truth_root
  • 已落地 data/rules/audit_engine.py AuditEngine
  • 已落地 data/rules/cli.py rules {status,verify,list,explain,scaffold-evidence}
  • 已落地 scripts/migrate_province_rules_to_truth.py(从 PROVINCE_RULES 一次性迁移)
  • 已落地 tests/test_rules_truth_phase1.py + tests/test_rules_cli_phase1.py(部分)

2.2 尚未落地

  • rules/_evidence/<prov>/<year>-<topic>.md 完整官方摘录 — 已落湖南 11 条样本 + 北京 11 条样本 + 江苏 11 条样本 + 浙江 11 条样本 + 上海 11 条样本 + 安徽 11 条样本 + 山东 11 条样本 + 广东 11 条样本 + 湖北 11 条样本 + 河北 11 条样本 + 海南 11 条样本 + 福建 11 条样本 + 四川 11 条样本 + 江西 11 条样本 + 甘肃 11 条样本 + 贵州 11 条样本 + 云南 11 条样本 + 辽宁 11 条样本 + 吉林 11 条样本 + 黑龙江 11 条样本 + 广西 11 条样本 + 青海 11 条样本 + 西藏 11 条样本 + 新疆 11 条样本 + 天津 11 条样本 + 河南 11 条样本 + 重庆 11 条样本 + national 1 条样本;重庆则依据《录取批次及志愿设置》《录取顺序是怎样安排的》、2026-06-09 考后时间节点安排与重庆市教委 2025 实施办法闭环 11/11,将 batch普通批 修正为 本科批collection_count1 修正为动态机读口径 null,并确认 专业+学校 / 96 / 无调剂 / 分数优先、遵循志愿、一次投档 / 3+1+2 / 750 口径;当前 active 省份已无 evidence 缺口,剩余工作转为内蒙古 / 陕西 / 宁夏 3 省 truth 与 evidence 首次建档
  • 逐省证据链审计报告 — 当前仍未启动
  • 逐省 stale 规则的证据补建与人工复核流程

3. 数据模型

3.1 Ruledata/rules/models.py

Rule:
  rule_id: str             # e.g. "HUNAN.max_volunteers"
  scope: "national" | "province"
  province: str | None     # 当 scope=province 时
  year: int                # 2026
  title: str
  description: str
  severity: "fatal" | "critical" | "warning" | "info"
  value: dict              # 规则可机读形式
  source_evidence_id: str  # 证据链引用
  effective_date: date
  last_verified_at: datetime
  version: str             # "2026.1"
  status: "active" | "draft" | "deprecated"

3.2 AuditIssuedata/rules/models.py

AuditIssue:
  rule_id: str
  severity: RuleSeverity
  title: str
  message: str
  evidence_quote: str | None
  suggestion: str | None

4. 接入策略

4.1 国家级

  • 首选源: 教育部 / 教育考试院公开规则文件
  • 覆盖范围: 平行志愿、一次投档、退档机制、体检要求等
  • 接入节奏: 年度全量 + 差异更新

4.2 省级

  • 首选源: 各省招生考试院/教育考试院 2026 招生工作通知
  • 覆盖范围: 27 省(与 PROVINCE_RULES 对齐)
  • 接入节奏: 月度差异更新

4.3 证据层

  • 首选源: 上述官方文件原文
  • 存储格式: Markdown 摘录 + 官方文件 URL
  • 校验: 每条规则必须能引用至少一个证据条目

5. 统一审计入口

  • gaokao-cli rules status --json — 27 省 + national 状态摘要 + 版本/证据覆盖摘要 + stale 明细
  • gaokao-cli rules verify --jsonnational.yaml + province/ 完整性 + stale/evidence 检查
  • gaokao-cli rules list --province <p> --json — 枚举某省已加载规则
  • gaokao-cli rules explain <rule_id> --json — 输出某条规则与证据绑定
  • gaokao-cli rules scaffold-evidence [--province] --json — 为缺失证据生成 draft_template 模板与索引
  • gaokao-cli doctor --json — 会联动 rules verifystale 规则会直接拉低总健康状态
  • gaokao-cli audit run --province <p> --plan <json> --truth-root <path> --catalog-root <path> --json — 完整审计

6. 下一阶段(执行 Phase 1 收口后的 Batch 候选清单)

已在 Phase 1 / 1.5 中完成的事项不再列入"必须收口"清单。

  • 内蒙古 / 陕西 / 宁夏 3 省 truth yaml 与证据层首建 — Batch 4 候选
  • 逐省证据链审计报告 — Batch 4 候选
  • 把其它 3draft_template 真正补成官方摘录后完成人工复核 — Batch 4 候选

7. 风险

  • 证据层未建导致规则可信度依赖 yaml 自描述
  • PROVINCE_RULES 字典与新 _truth 字典需要保持同步过渡
  • 月度刷新流程目前依赖人工 cron未与 gaokao-cli rules status 联动