← Về thư mục
scripts/test_citation_existence_policy.py
- _ro · function · L59-L66 — def _ro(**overrides)
- policy_hash_slug · function · L84-L100 — def policy_hash_slug(terminal_policies: dict | None) -> str | None
- would_terminal_block · function · L103-L108 — def would_terminal_block(lookup_verified: str, citation_existence: str) -> bool
- citation_existence_terminal_token · function · L111-L116 — def citation_existence_terminal_token(policy_hash: str) -> str
- tp_schema · function · L124-L126 — def tp_schema()
- tp_validator · function · L130-L132 — def tp_validator(tp_schema)
- test_schema_citation_existence_enum_closed · function · L135-L137 — def test_schema_citation_existence_enum_closed(tp_schema)
- test_schema_citation_existence_no_strict_articles_only · function · L140-L143 — def test_schema_citation_existence_no_strict_articles_only(tp_validator): # citation needs no venue subdivision (the narrowed false carries the precision).
- test_schema_citation_existence_no_json_schema_default · function · L146-L149 — def test_schema_citation_existence_no_json_schema_default(tp_schema): # Per-key absence advisory is a RUNTIME convention, not a JSON-Schema default # (JSON-Schema default is non-operational — would be false safety).
- test_schema_object_stays_closed_with_new_key · function · L152-L155 — def test_schema_object_stays_closed_with_new_key(tp_validator)
- test_schema_advisory_and_strict_both_valid · function · L158-L160 — def test_schema_advisory_and_strict_both_valid(tp_validator)
- test_lint_helper_accepts_citation_existence · function · L163-L165 — def test_lint_helper_accepts_citation_existence(tp_schema): # The extended check_v3_10_policy lint must pass on the real schema.
- test_citation_existence_terminal_marker_parses_and_refuses · function · L172-L189 — def test_citation_existence_terminal_marker_parses_and_refuses()
- test_citation_existence_advisory_marker_does_not_refuse · function · L192-L201 — def test_citation_existence_advisory_marker_does_not_refuse()
- test_two_policy_co_emit_dedupes_to_one_affected_ref · function · L204-L223 — def test_two_policy_co_emit_dedupes_to_one_affected_ref()
- test_bare_prose_citation_existence_token_does_not_refuse · function · L226-L232 — def test_bare_prose_citation_existence_token_does_not_refuse()
- test_reducer_case_a_id_keyed_unmatched_is_false · function · L239-L242 — def test_reducer_case_a_id_keyed_unmatched_is_false()
- test_reducer_case_a_title_only_unmatched_is_unresolvable_not_false · function · L245-L249 — def test_reducer_case_a_title_only_unmatched_is_unresolvable_not_false()
- test_reducer_case_f_manual_all_skipped_is_unresolvable · function · L252-L255 — def test_reducer_case_f_manual_all_skipped_is_unresolvable()
- test_reducer_matched_wins_is_true · function · L258-L260 — def test_reducer_matched_wins_is_true()
- test_oracle_b_d_advisory_never_blocks · function · L267-L271 — def test_oracle_b_d_advisory_never_blocks()
- test_oracle_c_d_strict_blocks_only_false · function · L274-L279 — def test_oracle_c_d_strict_blocks_only_false()
- test_oracle_f_unresolvable_never_blocks_under_strict · function · L282-L284 — def test_oracle_f_unresolvable_never_blocks_under_strict()
- test_oracle_slug_single_policy · function · L287-L288 — def test_oracle_slug_single_policy()
- test_oracle_slug_two_policies_sorted_by_key · function · L291-L298 — def test_oracle_slug_two_policies_sorted_by_key()
- test_oracle_slug_advisory_key_omitted · function · L301-L306 — def test_oracle_slug_advisory_key_omitted()
- test_oracle_slug_all_advisory_is_none · function · L309-L313 — def test_oracle_slug_all_advisory_is_none()
- test_oracle_slug_submission_package_never_enters · function · L316-L327 — def test_oracle_slug_submission_package_never_enters()
- test_oracle_h_recompute_is_pure_no_cache · function · L330-L342 — def test_oracle_h_recompute_is_pure_no_cache()
- orchestrator_text · function · L353-L354 — def orchestrator_text()
- formatter_text · function · L358-L359 — def formatter_text()
- test_finalizer_prompt_declares_citation_existence_terminal · function · L362-L369 — def test_finalizer_prompt_declares_citation_existence_terminal(orchestrator_text)
- test_finalizer_prompt_declares_recompute_each_pass · function · L372-L380 — def test_finalizer_prompt_declares_recompute_each_pass(orchestrator_text)
- test_finalizer_lint_passes_with_citation_existence · function · L383-L386 — def test_finalizer_lint_passes_with_citation_existence(orchestrator_text)
- test_formatter_has_no_per_policy_citation_existence_refusal · function · L389-L400 — def test_formatter_has_no_per_policy_citation_existence_refusal(formatter_text)
- test_mutation_M1_title_only_as_false_must_fail_case_a · function · L408-L429 — def test_mutation_M1_title_only_as_false_must_fail_case_a()
- trivial_reduce_unmatched_is_false · function · L413-L421 — def trivial_reduce_unmatched_is_false(ro)
- test_mutation_M2_accept_all_ignores_policy_must_fail_case_d · function · L432-L478 — def test_mutation_M2_accept_all_ignores_policy_must_fail_case_d()
- trivial_accept_all · function · L475-L476 — def trivial_accept_all(lookup_verified, citation_existence)