[INFO] cloning repository https://github.com/thkt/gates
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/thkt/gates" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthkt%2Fgates", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthkt%2Fgates'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ab2935e85dc0801f1f5e6b75c1485b70b33feca6
[INFO] testing thkt/gates against 1.98.0-beta.1 for beta-1.98-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthkt%2Fgates" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/thkt/gates
[INFO] finished tweaking git repo https://github.com/thkt/gates
[INFO] tweaked toml for git repo https://github.com/thkt/gates written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/thkt/gates on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/thkt/gates already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1
[INFO] running `Command { std: "docker" "start" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling dragonbox_ecma v0.1.12
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling smawk v0.3.3
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling oxc_data_structures v0.138.0
[INFO] [stderr]    Compiling phf_shared v0.14.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling rustc-hash v2.1.3
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling cow-utils v0.1.3
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling nonmax v0.5.5
[INFO] [stderr]    Compiling unicode-id-start v1.4.0
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling num-bigint v0.4.8
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling seq-macro v0.3.6
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling phf_generator v0.14.0
[INFO] [stderr]    Compiling phf v0.14.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling oxc_estree v0.138.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling oxc-miette-derive v3.0.0
[INFO] [stderr]    Compiling oxc_ast_macros v0.138.0
[INFO] [stderr]    Compiling phf_macros v0.14.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling oxc-miette v3.0.0
[INFO] [stderr]    Compiling oxc_diagnostics v0.138.0
[INFO] [stderr]    Compiling regex v1.12.4
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling oxc_allocator v0.138.0
[INFO] [stderr]    Compiling oxc_index v5.0.0
[INFO] [stderr]    Compiling oxc_str v0.138.0
[INFO] [stderr]    Compiling oxc_span v0.138.0
[INFO] [stderr]    Compiling oxc_regular_expression v0.138.0
[INFO] [stderr]    Compiling oxc_syntax v0.138.0
[INFO] [stderr]    Compiling oxc_ast v0.138.0
[INFO] [stderr]    Compiling oxc_ecmascript v0.138.0
[INFO] [stderr]    Compiling oxc_parser v0.138.0
[INFO] [stderr]    Compiling litmus v0.3.0 (https://github.com/thkt/litmus.git?rev=aaa8512e7881af27e6e0605b1329520cf60dd50b#aaa8512e)
[INFO] [stderr]    Compiling gates v0.12.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 59.43s
[INFO] running `Command { std: "docker" "inspect" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling gates v0.12.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.52s
[INFO] running `Command { std: "docker" "inspect" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/gates-5754c93aabf486f1)
[INFO] [stdout] 
[INFO] [stdout] running 288 tests
[INFO] [stdout] test audit::tests::formats_leap_day ... ok
[INFO] [stdout] test audit::tests::formats_known_epoch ... ok
[INFO] [stdout] test audit::tests::formats_unix_epoch_zero ... ok
[INFO] [stdout] test audit::tests::renders_empty_entries_as_header_only ... ok
[INFO] [stdout] test circular::tests::ignores_bare_imports ... ok
[INFO] [stdout] test circular::tests::detects_simple_cycle ... ok
[INFO] [stdout] test audit::tests::renders_align_columns_by_char_count_for_non_ascii ... ok
[INFO] [stdout] test audit::tests::renders_table_with_header_and_failed_dash ... ok
[INFO] [stdout] test circular::tests::detects_three_node_cycle ... ok
[INFO] [stdout] test circular::tests::no_cycles_in_clean_project ... ok
[INFO] [stdout] test circular::tests::handles_reexports ... ok
[INFO] [stdout] test audit::tests::append_then_query_round_trips ... ok
[INFO] [stdout] test audit::tests::query_keeps_last_n_of_matched_set ... ok
[INFO] [stdout] test audit::tests::query_missing_file_returns_empty ... ok
[INFO] [stdout] test audit::tests::query_skips_corrupt_lines ... ok
[INFO] [stdout] test audit::tests::query_filters_by_decision ... ok
[INFO] [stdout] test circular::tests::empty_directory ... ok
[INFO] [stdout] test audit::tests::append_creates_missing_directory ... ok
[INFO] [stdout] test circular::tests::resolves_index_files ... ok
[INFO] [stdout] test circular::tests::skips_node_modules ... ok
[INFO] [stdout] test clone::tests::skips_unreadable_files ... ok
[INFO] [stdout] test clone::tests::detects_type2_structural_clone ... ok
[INFO] [stdout] test audit::tests::concurrent_appends_do_not_tear_lines ... ok
[INFO] [stdout] test color::tests::strip_ansi_preserves_plain ... ok
[INFO] [stdout] test color::tests::strip_ansi_removes_codes ... ok
[INFO] [stdout] test config::tests::coupling_disabled_has_no_threshold ... ok
[INFO] [stdout] test config::tests::gates_and_coupling_coexist ... ok
[INFO] [stdout] test config::tests::missing_clone_section_yields_none ... ok
[INFO] [stdout] test clone::tests::reports_source_line_numbers ... ok
[INFO] [stdout] test config::tests::missing_coupling_section_yields_none ... ok
[INFO] [stdout] test clone::tests::tolerates_syntax_error_file ... ok
[INFO] [stdout] test clone::tests::ignores_clone_below_min_lines ... ok
[INFO] [stdout] test clone::tests::counts_multiplicity_across_files ... ok
[INFO] [stdout] test clone::tests::prunes_nested_clone ... ok
[INFO] [stdout] test clone::tests::instances_sorted_by_path ... ok
[INFO] [stdout] test config::tests::missing_gates_section_enables_all_gates ... ok
[INFO] [stdout] test config::tests::non_bool_gate_values_are_ignored ... ok
[INFO] [stdout] test clone::tests::groups_sorted_by_node_count_desc ... ok
[INFO] [stdout] test config::tests::partial_clone_section ... ok
[INFO] [stdout] test clone::tests::no_clone_when_structures_differ ... ok
[INFO] [stdout] test config::tests::partial_jscpd_section ... ok
[INFO] [stdout] test clone::tests::ignores_clone_below_min_nodes ... ok
[INFO] [stdout] test clone::tests::renders_regex_payload_in_clone_path ... ok
[INFO] [stdout] test config::tests::missing_file_enables_all_gates ... ok
[INFO] [stdout] test clone::tests::detects_clone_when_one_copy_is_compacted_below_min_lines ... ok
[INFO] [stdout] test config::tests::reads_coupling_ca_threshold ... ok
[INFO] [stdout] test config::tests::missing_jscpd_section_yields_none ... ok
[INFO] [stdout] test coupling::tests::instability_ratio ... ok
[INFO] [stdout] test coupling::tests::isolated_module_instability_zero ... ok
[INFO] [stdout] test coupling::tests::pure_sink_instability_zero ... ok
[INFO] [stdout] test coupling::tests::threshold_boundary_not_flagged ... ok
[INFO] [stdout] test coupling::tests::equal_ca_tiebreaks_by_path ... ok
[INFO] [stdout] test coupling::tests::efferent_sums_internal_and_external ... ok
[INFO] [stdout] test config::tests::partial_gates_section ... ok
[INFO] [stdout] test config::tests::reads_clone_section ... ok
[INFO] [stdout] test clone::tests::detects_type1_exact_clone ... ok
[INFO] [stdout] test config::tests::invalid_json_enables_all_gates ... ok
[INFO] [stdout] test depgraph::tests::bare_import_counts_external ... ok
[INFO] [stdout] test config::tests::reads_gates_section ... ok
[INFO] [stdout] test coupling::tests::flags_module_above_threshold ... ok
[INFO] [stdout] test coupling::tests::god_modules_sorted_by_ca_desc ... ok
[INFO] [stdout] test coupling::tests::afferent_counts_importers ... ok
[INFO] [stdout] test depgraph::tests::empty_directory ... ok
[INFO] [stdout] test config::tests::reads_jscpd_section ... ok
[INFO] [stdout] test config::tests::unknown_gate_names_are_preserved ... ok
[INFO] [stdout] test depgraph::tests::duplicate_imports_record_single_edge ... ok
[INFO] [stdout] test depgraph::tests::excluded_dirs_is_pinned ... ok
[INFO] [stdout] test hook_exit::tests::advisory_is_one ... ok
[INFO] [stdout] test hook_exit::tests::blocking_is_two ... ok
[INFO] [stdout] test depgraph::tests::relative_import_records_edge ... ok
[INFO] [stdout] test depgraph::tests::excludes_node_modules ... ok
[INFO] [stdout] test depgraph::tests::mixed_internal_and_external ... ok
[INFO] [stdout] test hook_exit::tests::pass_is_zero ... ok
[INFO] [stdout] test project::tests::circular_gate_detects_cycle_inside_nested_package ... ok
[INFO] [stdout] test project::tests::excluded_dirs_matches_guarded_fixture ... ok
[INFO] [stdout] test project::tests::detects_both_files ... ok
[INFO] [stdout] test project::tests::detects_package_json_only ... ok
[INFO] [stdout] test project::tests::detects_tsconfig_only ... ok
[INFO] [stdout] test hook_exit::tests::input_error_is_sysexits_usage ... ok
[INFO] [stdout] test project::tests::discovery_skips_node_modules ... ok
[INFO] [stdout] test project::tests::discovery_skips_claude_dir ... ok
[INFO] [stdout] test reporter::tests::all_passed_one_line ... ok
[INFO] [stdout] test reporter::tests::blank_lines_excluded_from_preview ... ok
[INFO] [stdout] test reporter::tests::empty_slice_returns_empty ... ok
[INFO] [stdout] test project::tests::discovery_skips_all_hardcoded_excluded_names_but_keeps_control_pkg ... ok
[INFO] [stdout] test project::tests::uses_git_root_not_subdir ... ok
[INFO] [stdout] test project::tests::no_project_files ... ok
[INFO] [stdout] test hook_exit::tests::internal_is_sysexits_software ... ok
[INFO] [stdout] test project::tests::nested_monorepo_targets_the_tsconfig_owning_package ... ok
[INFO] [stdout] test project::tests::self_contained_tsconfig_root_targets_only_itself ... ok
[INFO] [stdout] test project::tests::self_contained_src_root_targets_only_itself ... ok
[INFO] [stdout] test depgraph::tests::reexport_records_edge ... ok
[INFO] [stdout] test reporter::tests::empty_when_all_skipped ... ok
[INFO] [stdout] test reporter::tests::failure_and_warning_show_both ... ok
[INFO] [stdout] test depgraph::tests::resolves_index_file ... ok
[INFO] [stdout] test depgraph::tests::excludes_remaining_hardcoded_dirs_but_collects_control_file ... ok
[INFO] [stdout] test reporter::tests::multiple_failures_plural ... ok
[INFO] [stdout] test reporter::tests::failure_empty_output_no_preview ... ok
[INFO] [stdout] test reporter::tests::failure_shows_only_failed_gates ... ok
[INFO] [stdout] test reporter::tests::failure_output_preview ... ok
[INFO] [stdout] test reporter::tests::failure_output_truncated ... ok
[INFO] [stdout] test reporter::tests::warning_only_is_advisory_not_blocked ... ok
[INFO] [stdout] test reporter::tests::no_advisory_when_no_warnings ... ok
[INFO] [stdout] test reporter::tests::skipped_gates_excluded_from_count ... ok
[INFO] [stdout] test reporter::tests::warning_excluded_from_pass_count ... ok
[INFO] [stdout] test resolve::tests::falls_back_to_bare_name ... ok
[INFO] [stdout] test reporter::tests::header_footer_separators_match_guardrails ... ok
[INFO] [stdout] test resolve::tests::skips_non_executable_bin ... ok
[INFO] [stdout] test resolve::tests::finds_bin_in_node_modules ... ok
[INFO] [stdout] test runner::tests::skipped_result ... ok
[INFO] [stdout] test runner::tests::warned_exposes_output ... ok
[INFO] [stdout] test runner::tests::warned_is_not_failure ... ok
[INFO] [stdout] test runner::tests::warned_is_not_skipped ... ok
[INFO] [stdout] test sanitize::tests::empty_input_returns_empty ... ok
[INFO] [stdout] test sanitize::tests::preserves_single_blank_line ... ok
[INFO] [stdout] test sanitize::tests::compresses_consecutive_blank_lines ... ok
[INFO] [stdout] test sanitize::tests::tail_keeps_last_n_lines_with_indicator ... ok
[INFO] [stdout] test sanitize::tests::tail_no_op_when_within_limit ... ok
[INFO] [stdout] test runner::tests::command_success ... ok
[INFO] [stdout] test runner::tests::join_or_skip_passes_results_through_on_success ... ok
[INFO] [stdout] test sanitize::tests::tail_exact_limit ... ok
[INFO] [stdout] test sanitize::tests::removes_ansi_escape_codes ... ok
[INFO] [stdout] test runner::tests::spawn_error_returns_skipped ... ok
[INFO] [stdout] test sanitize::tests::removes_complex_ansi_codes ... ok
[INFO] [stdout] test sanitize::tests::tail_single_line ... ok
[INFO] [stdout] test runner::tests::command_failure ... ok
[INFO] [stdout] test sanitize::tests::removes_trailing_whitespace ... ok
[INFO] [stdout] test snapshot::tests::digest_changes_on_target_file_add_t003 ... ok
[INFO] [stdout] test snapshot::tests::digest_changes_on_target_file_rename_t005 ... ok
[INFO] [stdout] test snapshot::tests::digest_changes_on_mts_and_cts_add_t008 ... ok
[INFO] [stdout] test snapshot::tests::digest_changes_on_nested_tsconfig_t009 ... ok
[INFO] [stdout] test sanitize::tests::tail_empty_string ... ok
[INFO] [stdout] test snapshot::tests::digest_changes_on_target_file_delete_t004 ... ok
[INFO] [stdout] test snapshot::tests::digest_changes_on_content_size_edit_t001 ... ok
[INFO] [stdout] test snapshot::tests::digest_unchanged_on_claude_dir_edit ... ok
[INFO] [stdout] test snapshot::tests::write_is_atomic_no_tmp_leftover_t013 ... ok
[INFO] [stdout] test snapshot::tests::stat_failed_file_contributes_sentinel_t022 ... ok
[INFO] [stdout] test snapshot::tests::digest_unchanged_on_excluded_dir_edit_t007 ... ok
[INFO] [stdout] test snapshot::tests::read_stored_missing_dir_is_none_t020 ... ok
[INFO] [stdout] test snapshot::tests::read_stored_corrupt_file_is_none_t011 ... ok
[INFO] [stdout] test snapshot::tests::digest_unchanged_on_non_target_file_edit_t006 ... ok
[INFO] [stdout] test tests::all_pass_allows_completion ... ok
[INFO] [stdout] test tests::changed_no_op_when_no_enabled_gates_t016 ... ok
[INFO] [stdout] test snapshot::tests::digest_changes_when_mtime_restored_to_past_t002 ... ok
[INFO] [stdout] test tests::changed_emits_block_json_on_failure_t017 ... ok
[INFO] [stdout] test tests::changed_skips_when_unchanged_t014 ... ok
[INFO] [stdout] test tests::circular_fans_out_into_nested_package_and_labels_scope ... ok
[INFO] [stdout] test tests::changed_fires_after_sed_edit_t021 ... ok
[INFO] [stdout] test tests::changed_runs_and_updates_digest_when_changed_t015 ... ok
[INFO] [stdout] test tests::dispatch_changed_rejects_missing_dir_t002 ... ok
[INFO] [stdout] test tests::dispatch_default_rejects_missing_dir_t003 ... ok
[INFO] [stdout] test tests::dispatch_default_rejects_too_many_args_t004 ... ok
[INFO] [stdout] test tests::dispatch_has_no_post_bash_alias_t005 ... ok
[INFO] [stdout] test snapshot::tests::read_stored_missing_file_is_none_t010 ... ok
[INFO] [stdout] test tests::dispatch_routes_show_usage_error_t001 ... ok
[INFO] [stdout] test snapshot::tests::digest_ignores_all_hardcoded_excluded_dirs_but_tracks_control_file ... ok
[INFO] [stdout] test snapshot::tests::write_then_read_round_trips_t012 ... ok
[INFO] [stdout] test snapshot::tests::write_then_read_matches_so_followup_skips_t018 ... ok
[INFO] [stdout] test tests::audit_not_written_when_no_gate_runs ... ok
[INFO] [stdout] test tests::format_multiple_failures_mixed_hints ... ok
[INFO] [stdout] test tests::format_multiple_failures_without_output ... ok
[INFO] [stdout] test tests::format_single_failure_fallback_hint ... ok
[INFO] [stdout] test tests::format_single_failure_with_output ... ok
[INFO] [stdout] test tests::enabled_gate_condition_not_met_passes ... ok
[INFO] [stdout] test tests::format_single_failure_without_output ... ok
[INFO] [stdout] test tests::changed_does_not_retrigger_after_gate_emits_target_file_t023 ... ok
[INFO] [stdout] test tests::circular_fans_out_into_two_members_labeling_each ... ok
[INFO] [stdout] test tests::format_multiple_failures ... ok
[INFO] [stdout] test tests::clone_fans_out_into_nested_package_and_labels_scope ... ok
[INFO] [stdout] test tests::hint_shown_when_default_config_with_claude_dir ... ok
[INFO] [stdout] test tests::audit_records_pass_decision ... ok
[INFO] [stdout] test tests::clone_self_contained_root_failure_carries_no_scope_label ... ok
[INFO] [stdout] test tests::hint_not_shown_when_file_exists_without_gates_key ... ok
[INFO] [stdout] test tests::hint_not_shown_when_explicit_config ... ok
[INFO] [stdout] test tests::failing_gate_returns_block_json ... ok
[INFO] [stdout] test tests::run_show_rejects_unknown_flag_with_ex_usage ... ok
[INFO] [stdout] test tests::gates_dir_output_is_byte_identical_t019 ... ok
[INFO] [stdout] test tests::parallel_gate_failures_return_block_json_listing_both ... ok
[INFO] [stdout] test tests::no_enabled_gates_returns_none ... ok
[INFO] [stdout] test tests::self_contained_root_failure_carries_no_scope_label ... ok
[INFO] [stdout] test tests::hint_not_shown_when_no_claude_dir ... ok
[INFO] [stdout] test tests::show_args_parse_last_and_decision ... ok
[INFO] [stdout] test tests::legacy_test_cmd_runs_single_gate ... ok
[INFO] [stdout] test tests::no_config_all_gates_skipped_returns_none ... ok
[INFO] [stdout] test tests::enabled_gate_missing_command_passes ... ok
[INFO] [stdout] test tests::audit_write_failure_does_not_block_the_hook ... ok
[INFO] [stdout] test tests::show_args_default_to_last_20_no_filter ... ok
[INFO] [stdout] test tests::show_args_parse_json_flag ... ok
[INFO] [stdout] test tests::show_args_reject_invalid_decision ... ok
[INFO] [stdout] test tests::show_args_reject_non_numeric_last ... ok
[INFO] [stdout] test tests::show_args_reject_unknown_flag ... ok
[INFO] [stdout] test tests::show_human_empty_suppresses_output ... ok
[INFO] [stdout] test tests::show_json_empty_emits_empty_array ... ok
[INFO] [stdout] test tests::show_json_emits_parseable_array_round_tripping_entries ... ok
[INFO] [stdout] test tests::usage_errors_use_ex_usage_64 ... ok
[INFO] [stdout] test tests::show_human_non_empty_renders_table ... ok
[INFO] [stdout] test tools::tests::bpaf_unknown_flag_stderr_を含む_oxlint_の_failed_は_warned_に降格し_banner_が先頭に付く ... ok
[INFO] [stdout] test tools::tests::circular_skips_without_package_json ... ok
[INFO] [stdout] test tools::tests::circular_detects_cycle ... ok
[INFO] [stdout] test tools::tests::coupling_skips_without_package_json ... ok
[INFO] running `Command { std: "docker" "inspect" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1", kill_on_drop: false }`
[INFO] [stdout] 09f3c74b1879b68ee746220c757546dae42551bdb98de5a0ed496174e3b16da1
