ba97766d45
tests/policy/ 7개 테스트 파일 + conftest + __init__. 98 tests passed. 커버: - test_policy_loader_schema.py (9) — yaml 로드, cross-reference, unknown flag reject, invalid UI category reject, synthesis_directive 500 chars 초과 reject - test_self_declare_add_only.py (4) — INV-1 invariant 엄격 검증 - test_routing_decisions.py (27) — INV-2~6 + low_confidence + 도메인 × 시나리오 parametrize (9 도메인 x 기본 시나리오) - test_audit_patterns.py (11) — detection_patterns 양성/음성, 도메인 미스매치, 빈 텍스트 엣지 - test_envelope_contract.py (6) — JSON round-trip, invalid from_stage reject, tuple 강제 - test_prompt_render.py (16) — 모든 템플릿 렌더, placeholder 치환, policy_version deterministic/yaml-sensitive hash - test_shadow_logger_inmem.py (5) — record/clear/multiple/extra/ Protocol 호환 conftest.py: autouse _clear_policy_cache fixture — lru_cache 로 인한 테스트 간 오염 방지. policy fixture 는 repo root domain_policy.yaml 로드. plan: ~/.claude/plans/wise-gliding-hippo.md Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>