test_absent_approval (test_pack_guard.Tests.test_absent_approval) ... ok
test_ai_approval_rejected (test_pack_guard.Tests.test_ai_approval_rejected) ... ok
test_blocked_no_export_or_review (test_pack_guard.Tests.test_blocked_no_export_or_review) ... ok
test_blocked_with_status_copy_rejected (test_pack_guard.Tests.test_blocked_with_status_copy_rejected) ... ok
test_changed_body_invalidates (test_pack_guard.Tests.test_changed_body_invalidates) ... ok
test_changed_notes_invalidates (test_pack_guard.Tests.test_changed_notes_invalidates) ... ok
test_changed_source_invalidates (test_pack_guard.Tests.test_changed_source_invalidates) ... ok
test_cli_roundtrip_and_refusal_no_file (test_pack_guard.Tests.test_cli_roundtrip_and_refusal_no_file) ... ok
test_duplicate_angles (test_pack_guard.Tests.test_duplicate_angles) ... ok
test_duplicate_bodies (test_pack_guard.Tests.test_duplicate_bodies) ... ok
test_duplicate_json_keys (test_pack_guard.Tests.test_duplicate_json_keys) ... ok
test_export_body_only (test_pack_guard.Tests.test_export_body_only) ... ok
test_legacy_format (test_pack_guard.Tests.test_legacy_format) ... ok
test_missing_asset (test_pack_guard.Tests.test_missing_asset) ... ok
test_missing_check (test_pack_guard.Tests.test_missing_check) ... ok
test_missing_reviewer (test_pack_guard.Tests.test_missing_reviewer) ... ok
test_semantic_limits_explicit (test_pack_guard.Tests.test_semantic_limits_explicit) ... ok
test_unknown_field (test_pack_guard.Tests.test_unknown_field) ... ok

----------------------------------------------------------------------
Ran 18 tests in 0.569s

OK
