Files
gaokao-volunteer-system/data/rules/models.py
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

38 lines
965 B
Python

from __future__ import annotations
from dataclasses import dataclass, field
from typing import Any
@dataclass(frozen=True)
class LoadedRule:
rule_id: str
title: str
severity: str
value: dict[str, Any]
source_evidence_id: str
effective_date: str
status: str
scope: str
province: str | None = None
year: int = 2026
version: str = "2026.1"
last_verified_at: str = "2026-06-17"
evidence_path: str | None = None
evidence_exists: bool = False
@dataclass(frozen=True)
class RulesStatus:
province_count: int
national_rule_count: int
active_provinces: list[str]
national_version: str = "2026.1"
province_versions: dict[str, str] = field(default_factory=dict)
active_rule_count: int = 0
stale_rule_max_age_days: int = 90
stale_rule_count: int = 0
stale_rule_ids: list[str] = field(default_factory=list)
evidenced_rule_count: int = 0
missing_evidence_rule_count: int = 0