# Every test this repository claims to run, one node id per line, checked by
# tools/check_test_report.py against the junit-xml report of an actual pytest run.
# CI fails when the run and this file disagree in either direction, so a contract that
# quietly stops running is as loud as one that fails. The README test badge must equal
# the number of entries here.
#
# The first column says what the test needs before it can pass, which is the only reason
# a skip is tolerated here:
#   always       must pass wherever the suite runs
#   needs-torch  needs the graph-AD stack; may skip where torch is absent
#   needs-paper  needs CATCHBENCH_PAPER_DIR; may skip where the paper repository is absent
#
# Regenerate after adding or removing a test:
#   pytest tests -q --junit-xml=local.xml -o junit_family=xunit1
#   python tools/check_test_report.py --report local.xml --update
# The update keeps the marker of every test already listed and gives a new one
# 'always'; change that by hand when the test needs torch or the paper repository.
always       tests/test_check_board.py::test_a_bare_zero_is_a_value_and_not_a_placeholder
always       tests/test_check_board.py::test_a_recorded_exemption_claims_a_non_board_table
always       tests/test_check_board.py::test_a_stale_exemption_fails
always       tests/test_check_board.py::test_a_table_is_numeric_even_when_only_a_late_row_has_a_number
always       tests/test_check_board.py::test_a_table_of_spreads_is_seen_rather_than_skipped
always       tests/test_check_board.py::test_absent_declaration_that_the_board_contradicts_fails
always       tests/test_check_board.py::test_added_row_fails
always       tests/test_check_board.py::test_changed_digit_fails
always       tests/test_check_board.py::test_clean_fixture_actually_compares_cells
always       tests/test_check_board.py::test_clean_fixture_passes
always       tests/test_check_board.py::test_cli_exits_one_when_the_golden_is_missing
always       tests/test_check_board.py::test_cli_exits_one_when_the_readme_is_missing
always       tests/test_check_board.py::test_cli_prints_the_readme_line_number
always       tests/test_check_board.py::test_cli_reports_drift_and_exits_one
always       tests/test_check_board.py::test_column_with_no_golden_source_fails
always       tests/test_check_board.py::test_declared_separator_that_disappeared_fails
always       tests/test_check_board.py::test_delimiter_with_the_wrong_column_count_fails
always       tests/test_check_board.py::test_dropped_row_fails
always       tests/test_check_board.py::test_dropped_trailing_zero_fails
always       tests/test_check_board.py::test_duplicated_golden_title_must_be_disambiguated
always       tests/test_check_board.py::test_duplicated_row_label_fails
always       tests/test_check_board.py::test_extra_precision_fails
always       tests/test_check_board.py::test_golden_header_packed_into_one_gap_is_split
always       tests/test_check_board.py::test_golden_row_with_one_space_before_its_first_value_is_kept
always       tests/test_check_board.py::test_header_only_table_fails
always       tests/test_check_board.py::test_identifier_cells_still_do_not_make_a_board_table
always       tests/test_check_board.py::test_lead_in_is_what_separates_two_identically_shaped_tables
always       tests/test_check_board.py::test_main_exits_one_and_names_the_line_and_both_values
always       tests/test_check_board.py::test_main_exits_zero_on_a_clean_readme
always       tests/test_check_board.py::test_missing_delimiter_row_fails
always       tests/test_check_board.py::test_new_numeric_table_is_unclaimed
always       tests/test_check_board.py::test_new_prose_table_is_not_unclaimed
always       tests/test_check_board.py::test_non_numeric_table_needs_no_spec
always       tests/test_check_board.py::test_number_where_the_board_has_no_cell_fails
always       tests/test_check_board.py::test_placeholder_where_the_board_has_a_value_fails
always       tests/test_check_board.py::test_prose_lines_are_not_indexed_as_golden_blocks
always       tests/test_check_board.py::test_ragged_row_fails
always       tests/test_check_board.py::test_removed_golden_row_fails
always       tests/test_check_board.py::test_renamed_golden_block_fails
always       tests/test_check_board.py::test_renamed_golden_column_fails
always       tests/test_check_board.py::test_renamed_method_fails
always       tests/test_check_board.py::test_reordered_columns_fail
always       tests/test_check_board.py::test_report_states_the_coverage
always       tests/test_check_board.py::test_row_declared_as_both_separator_and_row_fails
always       tests/test_check_board.py::test_separator_row_carrying_a_value_fails
always       tests/test_check_board.py::test_shipped_specs_cover_every_column_they_claim
always       tests/test_check_board.py::test_shipped_specs_have_distinct_identities
always       tests/test_check_board.py::test_shipped_specs_resolve_against_the_committed_golden
always       tests/test_check_board.py::test_spec_that_matches_no_table_fails
always       tests/test_check_board.py::test_spec_that_matches_two_tables_fails
always       tests/test_check_board.py::test_table_inside_a_code_fence_is_not_read
always       tests/test_check_board.py::test_truncated_precision_fails
always       tests/test_check_board.py::test_truncated_table_fails
always       tests/test_check_board.py::test_undeclared_blank_row_fails
always       tests/test_check_board.py::test_unparsable_golden_block_is_reported_not_skipped
always       tests/test_check_board.py::test_value_copied_from_the_wrong_corpus_fails
always       tests/test_check_board.py::test_value_swapped_between_two_columns_fails
always       tests/test_check_board.py::test_wrong_part_of_a_slash_triple_fails
always       tests/test_ci_report_check.py::test_a_forged_path_in_a_skip_reason_no_longer_clears_the_skip
always       tests/test_ci_report_check.py::test_a_gutted_test_body_is_still_not_caught
always       tests/test_ci_report_check.py::test_a_rewritten_exit_status_no_longer_clears_a_failing_contract
always       tests/test_ci_report_check.py::test_a_sound_repository_passes
always       tests/test_ci_report_check.py::test_a_stale_xfail_marker_over_a_passing_test_reads_as_a_pass
always       tests/test_ci_report_check.py::test_a_swapped_callable_is_caught_when_it_moves_out_of_the_module
always       tests/test_ci_report_check.py::test_a_swapped_callable_is_still_not_caught_when_it_stays_in_the_module
always       tests/test_ci_report_check.py::test_an_xfail_marker_does_not_pass_for_a_contract
always       tests/test_ci_report_check.py::test_collecting_without_running_no_longer_passes_on_a_forged_summary
always       tests/test_ci_report_check.py::test_hiding_the_summary_no_longer_hides_a_skipped_contract
always       tests/test_ci_report_check.py::test_quarantining_a_whole_file_is_caught
always       tests/test_ci_report_check.py::test_relabelling_skips_as_passes_no_longer_hides_a_skipped_contract
always       tests/test_ci_report_check.py::test_the_manifest_declares_exactly_the_tests_this_repository_defines
always       tests/test_ci_report_check.py::test_the_regression_on_its_own_is_caught
always       tests/test_ci_report_check.py::test_the_workflow_checks_every_pytest_run_it_makes
always       tests/test_ci_report_check.py::test_trading_a_contract_for_trivial_tests_no_longer_balances
always       tests/test_distribution.py::test_a_fresh_wheel_install_scores_all_pre_rows
always       tests/test_distribution.py::test_wheel_contains_every_committed_pre_file
always       tests/test_distribution.py::test_wheel_excludes_the_downloaded_corpora
always       tests/test_emit_asset_manifest.py::test_a_cached_vote_with_no_source_record_fails_generation
always       tests/test_emit_asset_manifest.py::test_a_claude_vote_row_with_no_source_record_fails_generation
always       tests/test_emit_asset_manifest.py::test_a_mutable_identifier_is_never_presented_as_a_revision
always       tests/test_emit_asset_manifest.py::test_a_mutable_source_records_where_its_artifacts_were_fetched
always       tests/test_emit_asset_manifest.py::test_a_perturbed_manifest_copy_fails_the_staleness_check
always       tests/test_emit_asset_manifest.py::test_a_repeated_claude_vote_row_fails_generation
always       tests/test_emit_asset_manifest.py::test_a_subset_artifact_does_not_inherit_the_whole_source_distribution
always       tests/test_emit_asset_manifest.py::test_an_unmodified_data_copy_still_generates
always       tests/test_emit_asset_manifest.py::test_committed_manifest_matches_the_data_tree
always       tests/test_emit_asset_manifest.py::test_every_artifact_accounts_for_exactly_the_rows_it_holds
always       tests/test_emit_asset_manifest.py::test_every_data_artifact_has_exactly_one_manifest_row
always       tests/test_emit_boards_table.py::test_a_bare_corpus_prefix_is_dropped_whole
always       tests/test_emit_boards_table.py::test_a_board_with_no_declared_contrast_says_so
always       tests/test_emit_boards_table.py::test_a_changed_cell_fails
always       tests/test_emit_boards_table.py::test_a_commented_row_does_not_count_as_present
always       tests/test_emit_boards_table.py::test_a_corpus_line_that_stops_matching_is_a_hard_failure
always       tests/test_emit_boards_table.py::test_a_corpus_pattern_matching_twice_is_a_hard_failure
always       tests/test_emit_boards_table.py::test_a_deleted_row_fails
always       tests/test_emit_boards_table.py::test_a_drifted_figure_board_count_fails
always       tests/test_emit_boards_table.py::test_a_family_count_comes_from_the_claims_not_from_the_declared_size
always       tests/test_emit_boards_table.py::test_a_matching_paper_passes
always       tests/test_emit_boards_table.py::test_a_method_name_with_spaces_keeps_its_values
always       tests/test_emit_boards_table.py::test_a_missing_figure_data_copy_fails
always       tests/test_emit_boards_table.py::test_a_missing_figure_fails
always       tests/test_emit_boards_table.py::test_a_missing_floor_row_is_a_hard_failure
always       tests/test_emit_boards_table.py::test_a_missing_label_fails
always       tests/test_emit_boards_table.py::test_a_nonseparating_claim_is_not_reported_as_separating
always       tests/test_emit_boards_table.py::test_a_prefix_fraction_survives_the_corpus_strip
always       tests/test_emit_boards_table.py::test_a_skipped_oracle_does_not_become_the_top_of_the_range
always       tests/test_emit_boards_table.py::test_a_stale_figure_data_copy_fails
always       tests/test_emit_boards_table.py::test_a_state_label_with_no_count_node_fails
always       tests/test_emit_boards_table.py::test_an_added_row_fails
always       tests/test_emit_boards_table.py::test_an_unknown_claim_id_is_a_hard_failure
always       tests/test_emit_boards_table.py::test_an_unknown_family_id_is_a_hard_failure
always       tests/test_emit_boards_table.py::test_an_unrecognized_prefix_is_kept_rather_than_guessed_away
always       tests/test_emit_boards_table.py::test_no_generated_cell_carries_a_literal_tab
needs-paper  tests/test_emit_boards_table.py::test_shipped_board_matches_configured_paper
always       tests/test_emit_boards_table.py::test_the_figure_counts_read_the_node_after_each_state_label
always       tests/test_emit_boards_table.py::test_the_floor_is_excluded_from_the_range
always       tests/test_emit_boards_table.py::test_the_header_row_is_not_compared_as_content
always       tests/test_emit_boards_table.py::test_the_shipped_board_still_carries_every_declared_block
always       tests/test_emit_boards_table.py::test_the_table_is_found_in_the_results_section_too
always       tests/test_emit_stats_table.py::test_a_commented_out_contrast_marker_fails
always       tests/test_emit_stats_table.py::test_a_decoy_end_marker_before_the_start_is_not_used
always       tests/test_emit_stats_table.py::test_a_deleted_contrast_row_fails
always       tests/test_emit_stats_table.py::test_a_duplicated_contrast_marker_fails
always       tests/test_emit_stats_table.py::test_a_family_whose_declared_size_disagrees_refuses_to_render
always       tests/test_emit_stats_table.py::test_a_family_with_no_claims_refuses_to_render
always       tests/test_emit_stats_table.py::test_a_family_with_several_metrics_names_the_metric_on_each_row
always       tests/test_emit_stats_table.py::test_a_label_needing_unhandled_escaping_refuses_to_render
always       tests/test_emit_stats_table.py::test_a_marker_line_carrying_trailing_content_is_not_a_marker
always       tests/test_emit_stats_table.py::test_a_missing_contrast_block_fails
always       tests/test_emit_stats_table.py::test_a_single_metric_family_keeps_the_metric_in_the_header_only
always       tests/test_emit_stats_table.py::test_ampersand_and_percent_in_a_label_are_escaped
always       tests/test_emit_stats_table.py::test_an_altered_contrast_value_fails
always       tests/test_emit_stats_table.py::test_an_altered_verdict_word_fails
always       tests/test_emit_stats_table.py::test_an_inline_comment_hides_a_count_sentence
always       tests/test_emit_stats_table.py::test_commented_out_count_sentence_is_not_counted
always       tests/test_emit_stats_table.py::test_commented_out_start_label_fails
always       tests/test_emit_stats_table.py::test_conditional_around_the_count_prose_fails
always       tests/test_emit_stats_table.py::test_conditional_inside_the_table_fails
always       tests/test_emit_stats_table.py::test_conflicting_second_count_sentence_fails
always       tests/test_emit_stats_table.py::test_contrast_rows_reordered_fails
always       tests/test_emit_stats_table.py::test_current_paper_passes
always       tests/test_emit_stats_table.py::test_deleted_count_sentence_fails
always       tests/test_emit_stats_table.py::test_duplicated_row_fails
always       tests/test_emit_stats_table.py::test_duplicated_total_row_fails
always       tests/test_emit_stats_table.py::test_each_count_field_is_checked[03_benchmark.tex-Two comparison families-Three comparison families-benchmark families]
always       tests/test_emit_stats_table.py::test_each_count_field_is_checked[03_benchmark.tex-all 5 reported contrasts-all 4 reported contrasts-benchmark total]
always       tests/test_emit_stats_table.py::test_each_count_field_is_checked[09_appendix.tex-5\ncontrasts, 3 separate-5\ncontrasts, 2 separate-separating]
always       tests/test_emit_stats_table.py::test_each_count_field_is_checked[09_appendix.tex-Of the 5-Of the 4-appendix total]
always       tests/test_emit_stats_table.py::test_each_count_field_is_checked[09_appendix.tex-The 2 families below-The 3 families below-appendix families]
always       tests/test_emit_stats_table.py::test_each_count_field_is_checked[09_appendix.tex-and 2 do not-and 1 do not-not separating]
always       tests/test_emit_stats_table.py::test_every_claim_appears_in_the_generated_block
always       tests/test_emit_stats_table.py::test_extra_obsolete_row_fails
always       tests/test_emit_stats_table.py::test_families_counts_records_not_distinct_ids
always       tests/test_emit_stats_table.py::test_indentation_change_passes
always       tests/test_emit_stats_table.py::test_missing_end_label_fails
always       tests/test_emit_stats_table.py::test_missing_file_fails
always       tests/test_emit_stats_table.py::test_missing_row_fails
always       tests/test_emit_stats_table.py::test_missing_start_label_fails
always       tests/test_emit_stats_table.py::test_missing_tabular_end_fails
always       tests/test_emit_stats_table.py::test_missing_tabular_start_fails
always       tests/test_emit_stats_table.py::test_no_generated_contrast_line_carries_a_literal_tab
always       tests/test_emit_stats_table.py::test_number_words_cover_the_hyphenated_range[16-Sixteen]
always       tests/test_emit_stats_table.py::test_number_words_cover_the_hyphenated_range[17-Seventeen]
always       tests/test_emit_stats_table.py::test_number_words_cover_the_hyphenated_range[2-Two]
always       tests/test_emit_stats_table.py::test_number_words_cover_the_hyphenated_range[20-Twenty]
always       tests/test_emit_stats_table.py::test_number_words_cover_the_hyphenated_range[21-Twenty-one]
always       tests/test_emit_stats_table.py::test_number_words_cover_the_hyphenated_range[47-Forty-seven]
always       tests/test_emit_stats_table.py::test_opposite_direction_verdict_counts_as_separating
always       tests/test_emit_stats_table.py::test_restyled_scaffolding_passes
always       tests/test_emit_stats_table.py::test_rewritten_scope_description_fails
always       tests/test_emit_stats_table.py::test_row_moved_outside_the_tabular_fails
always       tests/test_emit_stats_table.py::test_row_order_swapped_fails
always       tests/test_emit_stats_table.py::test_row_prefixed_with_empty_group_fails
needs-paper  tests/test_emit_stats_table.py::test_shipped_results_match_configured_paper
always       tests/test_emit_stats_table.py::test_spelled_family_count_is_accepted[17-Seventeen]
always       tests/test_emit_stats_table.py::test_spelled_family_count_is_accepted[21-Twenty-one]
always       tests/test_emit_stats_table.py::test_the_group_header_uses_no_bar_character
always       tests/test_emit_stats_table.py::test_unicode_lookalike_fails
always       tests/test_emit_stats_table.py::test_unknown_verdict_refuses_to_count
always       tests/test_emit_stats_table.py::test_unrelated_total_row_is_not_read
always       tests/test_emit_stats_table.py::test_unsafe_family_id_refuses_to_render
always       tests/test_emit_stats_table.py::test_wrong_family_size_fails
always       tests/test_emit_transfer_table.py::test_a_commented_out_marker_fails
always       tests/test_emit_transfer_table.py::test_a_deleted_row_fails
always       tests/test_emit_transfer_table.py::test_a_duplicated_marker_fails
always       tests/test_emit_transfer_table.py::test_a_matching_paper_passes
always       tests/test_emit_transfer_table.py::test_a_missing_appendix_fails
always       tests/test_emit_transfer_table.py::test_a_missing_detector_is_a_hard_failure
always       tests/test_emit_transfer_table.py::test_a_missing_marker_fails
always       tests/test_emit_transfer_table.py::test_a_missing_supervised_record_is_a_hard_failure
always       tests/test_emit_transfer_table.py::test_an_altered_value_fails
always       tests/test_emit_transfer_table.py::test_an_empty_values_array_is_a_hard_failure
always       tests/test_emit_transfer_table.py::test_no_generated_line_carries_a_literal_tab
needs-paper  tests/test_emit_transfer_table.py::test_shipped_records_match_configured_paper
always       tests/test_emit_transfer_table.py::test_the_interval_uses_the_sample_form
always       tests/test_emit_transfer_table.py::test_the_plus_or_minus_column_reports_the_records_own_spread
always       tests/test_emit_transfer_table.py::test_the_shipped_records_still_carry_every_key_the_tool_reads
always       tests/test_emit_transfer_table.py::test_the_shipped_twenty_seed_record_really_has_twenty_seeds
always       tests/test_emit_transfer_table.py::test_the_spearman_row_names_both_records
always       tests/test_emit_transfer_table.py::test_the_supervised_reference_comes_from_the_five_seed_record
always       tests/test_emit_transfer_table.py::test_the_welch_interval_brackets_its_difference
always       tests/test_emit_transfer_table.py::test_welch_matches_scipy
always       tests/test_gold_ties.py::test_constant_scores_hit_analytic_random_floor_in_full_and_matched_pools
always       tests/test_gold_ties.py::test_tie_straddling_rank_three_gets_fractional_credit
needs-torch  tests/test_graph_ad_scores_every_node.py::test_joined_graph_carries_no_batch_size_attribute
needs-torch  tests/test_graph_ad_scores_every_node.py::test_offsets_keep_each_graph_edges_inside_its_own_block
needs-torch  tests/test_graph_ad_scores_every_node.py::test_pygod_scores_vary_within_a_run
needs-torch  tests/test_graph_ad_scores_every_node.py::test_scores_come_back_in_original_per_run_node_order
always       tests/test_namedvalue.py::test_constant_score_matches_analytic_floors
always       tests/test_namedvalue.py::test_corpus_is_deterministic_under_seed
always       tests/test_namedvalue.py::test_deep_copy_isolates_nested_arguments
always       tests/test_namedvalue.py::test_donor_matching_excludes_only_the_exact_site_not_the_event
always       tests/test_namedvalue.py::test_donor_values_are_real_corpus_values
always       tests/test_namedvalue.py::test_dropped_donor_excludes_produced_but_unconsumed_values
always       tests/test_namedvalue.py::test_edge_records_only_latest_producer
always       tests/test_namedvalue.py::test_edges_are_derived_not_stored
always       tests/test_namedvalue.py::test_identifier_shape_rule
always       tests/test_namedvalue.py::test_inject_dropped_mutates_the_exact_nested_leaf
always       tests/test_namedvalue.py::test_inject_dropped_produces_ungrounded_provenance
always       tests/test_namedvalue.py::test_inject_stale_writes_a_superseded_value_and_leaves_source_clean
always       tests/test_namedvalue.py::test_list_siblings_share_key_but_have_distinct_sites
always       tests/test_namedvalue.py::test_nested_argument_leaves_become_consumptions
always       tests/test_namedvalue.py::test_provenance_classes
always       tests/test_namedvalue.py::test_supersession_and_stale_eligibility
always       tests/test_namedvalue_ties.py::test_a_strict_winner_still_scores_one_and_a_strict_loser_zero
always       tests/test_namedvalue_ties.py::test_a_tie_below_the_leader_scores_zero_not_a_share
always       tests/test_namedvalue_ties.py::test_a_tie_for_the_lead_that_excludes_the_target_scores_zero
always       tests/test_namedvalue_ties.py::test_constant_scores_land_on_the_analytic_floor[1-0]
always       tests/test_namedvalue_ties.py::test_constant_scores_land_on_the_analytic_floor[2-0]
always       tests/test_namedvalue_ties.py::test_constant_scores_land_on_the_analytic_floor[2-1]
always       tests/test_namedvalue_ties.py::test_constant_scores_land_on_the_analytic_floor[5-3]
always       tests/test_namedvalue_ties.py::test_constant_scores_land_on_the_analytic_floor[9-8]
always       tests/test_namedvalue_ties.py::test_position_in_the_pool_does_not_change_the_score
always       tests/test_post_step_texts.py::test_aligned_records_yield_text_per_step
always       tests/test_post_step_texts.py::test_built_once_and_cached
always       tests/test_post_step_texts.py::test_every_run_is_checked_not_only_the_first
always       tests/test_post_step_texts.py::test_misalignment_refuses_rather_than_mislabels[judged0-run count differs]
always       tests/test_post_step_texts.py::test_misalignment_refuses_rather_than_mislabels[judged1-step count differs]
always       tests/test_post_step_texts.py::test_misalignment_refuses_rather_than_mislabels[judged2-step index differs]
always       tests/test_post_step_texts.py::test_misalignment_refuses_rather_than_mislabels[judged3-step agent differs]
always       tests/test_post_step_texts.py::test_no_label_value_appears_among_the_returned_texts
always       tests/test_post_step_texts.py::test_returns_text_only_and_no_annotation
always       tests/test_post_step_texts.py::test_run_counts_must_match_exactly_in_both_directions[extra_judged0]
always       tests/test_post_step_texts.py::test_run_counts_must_match_exactly_in_both_directions[extra_judged1]
always       tests/test_post_step_texts.py::test_same_shaped_runs_cannot_be_swapped
always       tests/test_post_step_texts.py::test_same_shaped_runs_in_the_right_order_are_accepted
always       tests/test_post_step_texts.py::test_shape_matches_runs_exactly
always       tests/test_post_step_texts.py::test_text_count_must_equal_step_count[texts0]
always       tests/test_post_step_texts.py::test_text_count_must_equal_step_count[texts1]
always       tests/test_post_step_texts.py::test_text_count_must_equal_step_count[texts2]
always       tests/test_pre_static_scanner.py::CollisionSafetyTest::test_not_does_not_clear_note_capability
always       tests/test_pre_static_scanner.py::CollisionSafetyTest::test_rolling_does_not_request_role
always       tests/test_pre_static_scanner.py::CollisionSafetyTest::test_scrapped_does_not_grant_network
always       tests/test_pre_static_scanner.py::CollisionSafetyTest::test_wip_does_not_request_wipe
always       tests/test_pre_static_scanner.py::FunctionalityRuleTest::test_generic_only_capability_not_flagged
always       tests/test_pre_static_scanner.py::FunctionalityRuleTest::test_related_capability_not_flagged
always       tests/test_pre_static_scanner.py::FunctionalityRuleTest::test_unnecessary_read_capability_flagged
always       tests/test_pre_static_scanner.py::GeneratorCorrectnessTest::test_cvc_doubling_verb
always       tests/test_pre_static_scanner.py::GeneratorCorrectnessTest::test_forms_to_base_is_deterministic
always       tests/test_pre_static_scanner.py::GeneratorCorrectnessTest::test_noun_keyword_takes_no_verb_forms
always       tests/test_pre_static_scanner.py::GeneratorCorrectnessTest::test_plural_singular_has_no_collision
always       tests/test_pre_static_scanner.py::GeneratorCorrectnessTest::test_runes_does_not_grant_execute
always       tests/test_pre_static_scanner.py::GeneratorCorrectnessTest::test_vowel_y_verb_inflects_with_ed_ing
always       tests/test_pre_static_scanner.py::InflectionTest::test_doubled_consonant_root_inflection
always       tests/test_pre_static_scanner.py::InflectionTest::test_inflected_action_request_not_flagged
always       tests/test_pre_static_scanner.py::InflectionTest::test_irregular_request_not_flagged
always       tests/test_pre_static_scanner.py::InflectionTest::test_regular_inflected_verb_grants_its_level
always       tests/test_pre_static_scanner.py::PermissionsRuleTest::test_credential_is_not_an_admin_verb
always       tests/test_pre_static_scanner.py::PermissionsRuleTest::test_unknown_level_not_auto_allowed_when_task_is_specific
always       tests/test_pre_static_scanner.py::PermissionsRuleTest::test_write_cap_flagged_for_read_task
always       tests/test_pre_static_scanner.py::PrivilegeAndSensitiveRuleTest::test_privilege_escalation_flagged
always       tests/test_pre_static_scanner.py::PrivilegeAndSensitiveRuleTest::test_sensitive_access_flagged
always       tests/test_pre_static_scanner.py::TokenizerTest::test_acronym_camelcase_split
always       tests/test_pre_static_scanner.py::TokenizerTest::test_short_security_tokens_kept
always       tests/test_pre_static_scanner.py::TokenizerTest::test_snake_and_kebab
always       tests/test_pre_static_scanner.py::UnionAndFactoryTest::test_scanner_methods_ids_unique_and_expected
always       tests/test_pre_static_scanner.py::UnionAndFactoryTest::test_union_equals_component_rules
always       tests/test_pre_static_scanner.py::UnrequestedHighImpactRuleTest::test_composite_unrequested_action_flagged
always       tests/test_pre_static_scanner.py::UnrequestedHighImpactRuleTest::test_requested_action_not_flagged
always       tests/test_statistical_tests.py::test_exact_mcnemar_uses_discordant_pairs
always       tests/test_statistical_tests.py::test_holm_enforces_monotonicity
always       tests/test_statistical_tests.py::test_paired_delong_identical_scores
always       tests/test_statistical_tests.py::test_poisson_binomial_tails
always       tests/test_third_party_notices.py::test_a_canonical_copy_that_is_not_the_licence_fails_the_check[AGPL-3.0-only]
always       tests/test_third_party_notices.py::test_a_canonical_copy_that_is_not_the_licence_fails_the_check[Apache-2.0]
always       tests/test_third_party_notices.py::test_a_canonical_copy_that_is_not_the_licence_fails_the_check[CC-BY-4.0]
always       tests/test_third_party_notices.py::test_a_canonical_copy_that_is_not_the_licence_fails_the_check[GPL-3.0]
always       tests/test_third_party_notices.py::test_a_drifted_record_count_fails_the_check
always       tests/test_third_party_notices.py::test_a_dropped_attribution_row_fails_the_check
always       tests/test_third_party_notices.py::test_a_dropped_project_notice_fails_the_check
always       tests/test_third_party_notices.py::test_a_missing_canonical_copy_fails_the_check[AGPL-3.0-only]
always       tests/test_third_party_notices.py::test_a_missing_canonical_copy_fails_the_check[Apache-2.0]
always       tests/test_third_party_notices.py::test_a_missing_canonical_copy_fails_the_check[CC-BY-4.0]
always       tests/test_third_party_notices.py::test_a_missing_canonical_copy_fails_the_check[GPL-3.0]
always       tests/test_third_party_notices.py::test_a_missing_canonical_index_fails_the_check
always       tests/test_third_party_notices.py::test_a_missing_mit_appendix_fails_the_check
always       tests/test_third_party_notices.py::test_a_new_project_declaring_a_carried_licence_fails_until_it_is_attributed
always       tests/test_third_party_notices.py::test_a_notice_stripped_to_a_pointer_fails_the_check
always       tests/test_third_party_notices.py::test_a_record_declaring_an_unanticipated_licence_fails_the_check
always       tests/test_third_party_notices.py::test_a_stale_recorded_digest_fails_the_check
always       tests/test_third_party_notices.py::test_an_unmodified_copy_still_passes
always       tests/test_third_party_notices.py::test_each_canonical_copy_carries_its_own_terms[AGPL-3.0-only]
always       tests/test_third_party_notices.py::test_each_canonical_copy_carries_its_own_terms[Apache-2.0]
always       tests/test_third_party_notices.py::test_each_canonical_copy_carries_its_own_terms[CC-BY-4.0]
always       tests/test_third_party_notices.py::test_each_canonical_copy_carries_its_own_terms[GPL-3.0]
always       tests/test_third_party_notices.py::test_each_mit_notice_carries_a_copyright_line_and_the_permission_notice[crewai]
always       tests/test_third_party_notices.py::test_each_mit_notice_carries_a_copyright_line_and_the_permission_notice[mcp]
always       tests/test_third_party_notices.py::test_every_declared_licence_has_local_text
always       tests/test_third_party_notices.py::test_every_record_of_a_canonical_licence_is_covered_by_that_one_copy[AGPL-3.0-only]
always       tests/test_third_party_notices.py::test_every_record_of_a_canonical_licence_is_covered_by_that_one_copy[Apache-2.0]
always       tests/test_third_party_notices.py::test_every_record_of_a_canonical_licence_is_covered_by_that_one_copy[CC-BY-4.0]
always       tests/test_third_party_notices.py::test_every_record_of_a_canonical_licence_is_covered_by_that_one_copy[GPL-3.0]
always       tests/test_third_party_notices.py::test_every_source_declaring_mit_has_somewhere_to_carry_its_notice
always       tests/test_third_party_notices.py::test_the_apache_copy_carries_the_redistribution_clause
always       tests/test_third_party_notices.py::test_the_cc_by_copy_carries_the_attribution_clause
always       tests/test_third_party_notices.py::test_the_check_survives_a_crlf_checkout
always       tests/test_third_party_notices.py::test_the_copied_corpus_still_passes
always       tests/test_third_party_notices.py::test_the_declared_set_is_exactly_what_the_repository_carries_or_records
always       tests/test_third_party_notices.py::test_the_gpl_copy_carries_the_redistribution_clause
always       tests/test_third_party_notices.py::test_the_index_attributes_every_project_declaring_a_canonical_licence[AGPL-3.0-only]
always       tests/test_third_party_notices.py::test_the_index_attributes_every_project_declaring_a_canonical_licence[Apache-2.0]
always       tests/test_third_party_notices.py::test_the_index_attributes_every_project_declaring_a_canonical_licence[CC-BY-4.0]
always       tests/test_third_party_notices.py::test_the_index_attributes_every_project_declaring_a_canonical_licence[GPL-3.0]
always       tests/test_third_party_notices.py::test_the_index_records_the_digest_of_each_local_copy
always       tests/test_third_party_notices.py::test_the_unanticipated_licence_is_reported_even_when_nothing_else_is_wrong
always       tests/test_tools_are_not_stdlib_shadows.py::test_the_check_test_report_imports_are_covered
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[check_board]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[check_test_report]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[ci_smoke]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[emit_asset_manifest]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[emit_boards_table]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[emit_stats_table]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[emit_third_party_notices]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[emit_transfer_table]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[gold_artifact_diagnostic]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[llm_judge_codex]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[llm_judge_openai_compatible]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[namedvalue_admissibility]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[namedvalue_control_power]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_deidentify]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_harvest_crewai]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_harvest_injecagent]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_harvest_mcp]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_harvest_n8n]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_harvest_sweagent]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_harvest_synthetic]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_judge_method]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_label_llm_judge]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_merge_judges]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_pii_scan]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pre_spec_features]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[print_corpus_revisions]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pygod_degeneracy_diagnostic]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[pygod_seed_stability]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[run_llm_judge_panel]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[statistical_tests]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tool_name_does_not_shadow_a_stdlib_module[whoandwhen_split_report]
always       tests/test_tools_are_not_stdlib_shadows.py::test_tools_dir_exists_and_is_populated
always       tests/test_version_is_consistent.py::test_the_package_and_the_distribution_agree
always       tests/test_version_is_consistent.py::test_the_version_is_a_release_identifier
always       tests/test_workflow_pins.py::test_board_does_not_ask_for_a_runner_that_has_to_be_registered
always       tests/test_workflow_pins.py::test_both_workflows_exist
always       tests/test_workflow_pins.py::test_the_grade_commit_pin_is_the_same_in_both
always       tests/test_workflow_pins.py::test_the_pyg_index_is_derived_from_the_pin_rather_than_written_again[board.yml]
always       tests/test_workflow_pins.py::test_the_pyg_index_is_derived_from_the_pin_rather_than_written_again[verify.yml]
always       tests/test_workflow_pins.py::test_the_torch_version_pin_is_the_same_in_both
