[INFO] fetching crate termaxa 0.20.0...
[INFO] testing termaxa-0.20.0 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate termaxa 0.20.0 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate termaxa 0.20.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate termaxa 0.20.0
[INFO] tweaked toml for crates.io crate termaxa 0.20.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate termaxa 0.20.0 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate termaxa 0.20.0 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea
[INFO] running `Command { std: "docker" "start" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea", 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" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea", 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" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling rustls v0.23.41
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling cc v1.2.65
[INFO] [stderr]    Compiling rustls-pki-types v1.15.0
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling anyhow v1.0.103
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling webpki-roots v1.0.8
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling termaxa v0.20.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.58s
[INFO] running `Command { std: "docker" "inspect" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea", 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" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling termaxa v0.20.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 12.13s
[INFO] running `Command { std: "docker" "inspect" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea", 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" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "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/termaxa-49debd5d88584ea3)
[INFO] [stdout] 
[INFO] [stdout] running 477 tests
[INFO] [stdout] test audit::tests::now_reports_the_same_instant_in_both_forms ... ok
[INFO] [stdout] test backup::tests::a_compound_command_is_planned_by_its_insurable_segment ... ok
[INFO] [stdout] test audit::tests::read_last_on_a_log_that_was_never_written_is_empty ... ok
[INFO] [stdout] test audit::tests::read_last_skips_a_line_it_cannot_parse ... ok
[INFO] [stdout] test backup::tests::a_forced_push_names_the_ref_it_would_overwrite ... ok
[INFO] [stdout] test audit::tests::a_removed_entry_leaves_a_gap_the_chain_reports ... ok
[INFO] [stdout] test backup::tests::a_file_written_through_an_option_is_copied_first ... ok
[INFO] [stdout] test audit::tests::new_puts_the_log_under_the_state_dir_and_creates_it ... ok
[INFO] [stdout] test audit::tests::read_last_asking_for_more_than_exists_returns_everything ... ok
[INFO] [stdout] test backup::tests::a_single_remote_branch_delete_is_pinned_and_a_set_is_not ... ok
[INFO] [stdout] test audit::tests::read_last_returns_exactly_the_tail_in_order ... ok
[INFO] [stdout] test backup::tests::a_delete_with_its_stderr_silenced_is_still_insured ... ok
[INFO] [stdout] test backup::tests::a_truncate_is_insured_with_data_only_and_a_drop_with_the_schema ... ok
[INFO] [stdout] test backup::tests::a_command_inside_a_shell_c_string_is_insured ... ok
[INFO] [stdout] test backup::tests::cmd_switches_are_not_treated_as_targets ... ok
[INFO] [stdout] test backup::tests::every_spelling_of_force_counts_and_an_ordinary_push_does_not ... ok
[INFO] [stdout] test backup::tests::insurance_needs_a_psql_command_carrying_a_destructive_statement ... ok
[INFO] [stdout] test backup::tests::creating_or_appending_is_not_insurable ... ok
[INFO] [stdout] test backup::tests::an_existing_file_about_to_be_overwritten_is_insurable ... ok
[INFO] [stdout] test audit::tests::pre_chain_history_is_readable_and_reported_separately ... ok
[INFO] [stdout] test backup::tests::only_git_push_itself_is_a_forced_push ... ok
[INFO] [stdout] test backup::tests::plan_reports_insurance_against_the_payload_cwd ... ok
[INFO] [stdout] test backup::tests::path_syntax_does_not_decide_whether_insurance_exists ... ok
[INFO] [stdout] test backup::tests::a_pipe_inside_the_target_fails_the_copy_instead_of_hanging_it ... ok
[INFO] [stdout] test backup::tests::plan_reports_the_overwrite_insurance_that_take_actually_performs ... ok
[INFO] [stdout] test audit::tests::a_silent_default_allow_is_reconstructible_without_its_own_field ... ok
[INFO] [stdout] test backup::tests::powershell_and_cmd_deletes_are_insurable_too ... ok
[INFO] [stdout] test backup::tests::take_insures_the_first_insurable_segment_of_a_compound ... ok
[INFO] [stdout] test breaker::tests::a_trip_holds_until_it_expires_and_survives_a_reload ... ok
[INFO] [stdout] test breaker::tests::durations_parse_and_nonsense_does_not ... ok
[INFO] [stdout] test backup::tests::the_payload_cwd_governs_resolution_not_the_process_cwd ... ok
[INFO] [stdout] test context::tests::a_non_escalating_signal_leaves_allow_alone ... ok
[INFO] [stdout] test backup::tests::the_insurance_copy_keeps_a_link_as_a_link_and_never_follows_it ... ok
[INFO] [stdout] test context::tests::a_production_marker_is_flagged_on_a_non_git_command ... ok
[INFO] [stdout] test context::tests::a_harness_preamble_is_not_a_destructive_flag_on_the_agents_command ... ok
[INFO] [stdout] test context::tests::an_ordinary_command_produces_no_signals_at_all ... ok
[INFO] [stdout] test context::tests::command_substitution_is_flagged_because_it_cannot_be_read ... ok
[INFO] [stdout] test context::tests::context_escalates_allow_to_ask_and_says_why ... ok
[INFO] [stdout] test context::tests::context_never_downgrades_a_decision ... ok
[INFO] [stdout] test context::tests::destructive_sql_and_flags_are_flagged ... ok
[INFO] [stdout] test context::tests::git_commands_are_exempt_from_the_production_marker ... ok
[INFO] [stdout] test context::tests::an_option_that_writes_or_runs_turns_a_reading_allow_into_an_ask ... ok
[INFO] [stdout] test backup::tests::retention_prunes_only_what_is_both_old_and_beyond_keep_and_says_so ... ok
[INFO] [stdout] test context::tests::uninsurability_strengthens_a_concern_and_never_invents_one ... ok
[INFO] [stdout] test delete::tests::a_cmd_switch_is_matched_by_shape_not_by_its_leading_slash ... ok
[INFO] [stdout] test delete::tests::a_delete_inside_a_shell_c_string_names_its_target ... ok
[INFO] [stdout] test audit::tests::a_tampered_entry_is_named_and_the_rest_survives ... ok
[INFO] [stdout] test delete::tests::a_drive_letter_is_split_only_when_it_really_is_one ... ok
[INFO] [stdout] test audit::tests::a_chain_verifies_and_each_entry_names_the_one_before_it ... ok
[INFO] [stdout] test backup::tests::the_branch_defaults_to_the_one_the_repository_is_on ... ok
[INFO] [stdout] test delete::tests::a_redirection_is_not_a_delete_target ... ok
[INFO] [stdout] test delete::tests::a_target_outside_the_project_root_is_called_out ... ok
[INFO] [stdout] test delete::tests::a_target_that_does_not_exist_says_so_instead_of_counting ... ok
[INFO] [stdout] test delete::tests::a_target_that_does_not_exist_yet_is_still_inside_a_symlinked_root ... ok
[INFO] [stdout] test delete::tests::a_tilde_is_expanded_to_the_home_it_names ... ok
[INFO] [stdout] test delete::tests::an_insurable_delete_within_budget_reports_its_insurance ... ok
[INFO] [stdout] test delete::tests::budgeted_scan_counts_and_reports_capping_honestly ... ok
[INFO] [stdout] test delete::tests::command_heads_normalise ... ok
[INFO] [stdout] test delete::tests::extracts_from_compound_segments ... ok
[INFO] [stdout] test delete::tests::extracts_targets_across_shells ... ok
[INFO] [stdout] test delete::tests::filesystem_roots_are_recognised ... ok
[INFO] [stdout] test delete::tests::flag_syntax_is_decided_per_shell_not_by_shape ... ok
[INFO] [stdout] test delete::tests::git_rm_is_a_delete_and_git_rm_cached_is_not ... ok
[INFO] [stdout] test delete::tests::inside_is_lexical_when_paths_do_not_exist ... ok
[INFO] [stdout] test delete::tests::number_formatting_matches_the_incident ... ok
[INFO] [stdout] test delete::tests::preview_admits_an_unresolvable_target_instead_of_inventing_a_path ... ok
[INFO] [stdout] test delete::tests::quoted_head_resolution_survives_the_provenance_change ... ok
[INFO] [stdout] test delete::tests::quotes_are_stripped_before_resolution ... ok
[INFO] [stdout] test delete::tests::relative_paths_normalise_and_stay_inside_the_project ... ok
[INFO] [stdout] test delete::tests::resolves_git_bash_paths_only_when_the_drive_exists ... ok
[INFO] [stdout] test delete::tests::sensitive_children_are_named_whatever_their_casing ... ok
[INFO] [stdout] test delete::tests::short_leaves_ascii_behaviour_unchanged ... ok
[INFO] [stdout] test delete::tests::short_never_panics_on_non_ascii_paths ... ok
[INFO] [stdout] test backup::tests::a_branch_that_cannot_be_created_is_reported_not_recorded ... ok
[INFO] [stdout] test delete::tests::the_preview_and_the_backup_name_the_same_files ... ok
[INFO] [stdout] test backup::tests::a_dump_that_failed_is_not_recorded_as_insurance ... ok
[INFO] [stdout] test delete::tests::unexpanded_var_detection_is_quote_aware ... ok
[INFO] [stdout] test delete::tests::whole_drive_delete_is_not_mistaken_for_a_flag ... ok
[INFO] [stdout] test backup::tests::a_forced_push_is_insured_by_pinning_the_remote_ref ... ok
[INFO] [stdout] test doctor::tests::a_hook_that_returns_no_decision_is_dead ... ok
[INFO] [stdout] test doctor::tests::a_live_but_permissive_hook_is_live_and_flagged ... ok
[INFO] [stdout] test doctor::tests::a_live_hook_in_a_spaced_path_is_live ... ok
[INFO] [stdout] test doctor::tests::a_policy_edited_behind_the_gate_becomes_a_reported_problem ... ok
[INFO] [stdout] test doctor::tests::a_registered_hook_that_cannot_run_is_not_reported_as_configured ... ok
[INFO] [stdout] test backup::tests::a_restore_push_that_failed_is_reported_rather_than_claimed ... ok
[INFO] [stdout] test doctor::tests::count_log_reads_without_creating_and_tolerates_junk ... ok
[INFO] [stdout] test doctor::tests::no_registration_is_absent_not_dead ... ok
[INFO] [stdout] test doctor::tests::probe_allowed_accepts_only_termaxa_binaries ... ok
[INFO] [stdout] test doctor::tests::settings_from_a_cloned_repo_cannot_make_doctor_execute_commands ... ok
[INFO] [stdout] test doctor::tests::the_registered_command_is_read_from_the_json_not_matched_as_text ... ok
[INFO] [stdout] test fingerprint::tests::baseline_roundtrips_through_the_state_dir ... ok
[INFO] [stdout] test fingerprint::tests::of_file_reports_absence_rather_than_guessing ... ok
[INFO] [stdout] test backup::tests::a_restore_that_failed_is_reported_rather_than_claimed ... ok
[INFO] [stdout] test fingerprint::tests::one_changed_byte_changes_the_fingerprint ... ok
[INFO] [stdout] test fingerprint::tests::the_baseline_does_not_live_in_the_directory_it_protects ... ok
[INFO] [stdout] test hook::tests::a_bom_prefixed_write_with_a_relative_path_still_resolves ... ok
[INFO] [stdout] test hook::tests::a_default_allow_is_silence_and_an_explicit_allow_is_not ... ok
[INFO] [stdout] test backup::tests::a_successful_dump_is_recorded_with_the_file_it_wrote ... ok
[INFO] [stdout] test audit::tests::an_entry_records_the_harness_and_what_decided_it ... ok
[INFO] [stdout] test backup::tests::local_terraform_state_is_insured_only_for_apply_and_destroy ... ok
[INFO] [stdout] test hook::tests::a_patch_names_its_files_and_a_move_removes_its_source ... ok
[INFO] [stdout] test hook::tests::a_renamed_write_tool_still_matches_by_verb ... ok
[INFO] [stdout] test hook::tests::a_shell_payload_stays_on_the_shell_path ... ok
[INFO] [stdout] test hook::tests::a_write_event_with_no_target_path_is_not_one ... ok
[INFO] [stdout] test hook::tests::an_ordinary_edit_gets_no_decision_rather_than_an_allow ... ok
[INFO] [stdout] test hook::tests::bom_prefixed_json_still_parses ... ok
[INFO] [stdout] test hook::tests::a_write_that_already_happened_is_not_gated ... ok
[INFO] [stdout] test hook::tests::copilot_accepts_inline_toolargs_object ... ok
[INFO] [stdout] test hook::tests::copilot_render_is_unwrapped ... ok
[INFO] [stdout] test hook::tests::copilot_on_windows_calls_its_shell_powershell ... ok
[INFO] [stdout] test hook::tests::copilot_string_encoded_arguments_are_unwrapped ... ok
[INFO] [stdout] test hook::tests::copilot_through_repo_settings_is_copilot_in_claudes_shape ... ok
[INFO] [stdout] test hook::tests::cursor_311_empty_cwd_recovers_from_tool_input_or_roots ... ok
[INFO] [stdout] test hook::tests::cursor_311_posttooluse_is_receipt ... ok
[INFO] [stdout] test delete::tests::a_delete_too_large_to_copy_says_that_rather_than_naming_insurance ... ok
[INFO] [stdout] test hook::tests::cursor_311_pretooluse_is_gated ... ok
[INFO] [stdout] test hook::tests::detects_claude_dialect ... ok
[INFO] [stdout] test hook::tests::detects_codex_dialect ... ok
[INFO] [stdout] test hook::tests::detects_copilot_dialect ... ok
[INFO] [stdout] test hook::tests::detects_cursor_dialect ... ok
[INFO] [stdout] test hook::tests::detects_post_execution_events ... ok
[INFO] [stdout] test hook::tests::cursor_real_payload_uses_workspace_roots_when_cwd_empty ... ok
[INFO] [stdout] test hook::tests::ignores_unrelated_input ... ok
[INFO] [stdout] test hook::tests::every_write_tool_is_recognised_including_notebooks ... ok
[INFO] [stdout] test hook::tests::normalize_uri_path_handles_windows_and_unix ... ok
[INFO] [stdout] test hook::tests::old_cursor_beforeshellexecution_still_works ... ok
[INFO] [stdout] test hook::tests::only_allow_can_ever_be_silent ... ok
[INFO] [stdout] test hook::tests::read_tools_are_left_alone_even_on_a_protected_path ... ok
[INFO] [stdout] test hook::tests::renders_each_dialect ... ok
[INFO] [stdout] test hook::tests::the_write_tool_no_longer_routes_around_a_shell_deny ... ok
[INFO] [stdout] test hook::tests::shared_shape_without_tag_defaults_to_claude ... ok
[INFO] [stdout] test backup::tests::a_tree_over_the_copy_budget_is_refused_with_the_previews_words ... ok
[INFO] [stdout] test context::tests::committing_reports_the_branch_without_escalating ... ok
[INFO] [stdout] test init::tests::hard_stops_are_reachable_before_the_read_only_allows ... ok
[INFO] [stdout] test init::tests::init_adds_the_write_matcher_to_a_settings_file_that_predates_it ... ok
[INFO] [stdout] test init::tests::init_registers_the_write_tools_as_well_as_bash ... ok
[INFO] [stdout] test init::tests::an_empty_project_detects_nothing_from_its_own_evidence ... ok
[INFO] [stdout] test init::tests::running_init_twice_does_not_duplicate_either_matcher ... ok
[INFO] [stdout] test init::tests::init_records_a_baseline_the_policy_directory_cannot_erase ... ok
[INFO] [stdout] test init::tests::shipped_example_policy_matches_the_starter_policy ... ok
[INFO] [stdout] test init::tests::several_detected_harnesses_are_not_chosen_between ... ok
[INFO] [stdout] test init::tests::a_command_that_runs_anything_is_not_the_dev_loop ... ok
[INFO] [stdout] test context::tests::pushing_from_a_feature_branch_does_not_escalate ... ok
[INFO] [stdout] test init::tests::the_printed_snippet_shows_both_matchers ... ok
[INFO] [stdout] test init::tests::the_dev_loop_is_allowed_and_its_neighbours_are_not ... ok
[INFO] [stdout] test init::tests::the_supervised_setup_prints_the_modes_the_rig_proved ... ok
[INFO] [stdout] test init::tests::the_gates_own_exception_cannot_launder_an_overwrite ... ok
[INFO] [stdout] test intent::tests::a_delete_counts_when_it_is_recursive_or_forced_in_any_dialect ... ok
[INFO] [stdout] test init::tests::the_shadowed_commands_are_no_longer_allowed ... ok
[INFO] [stdout] test intent::tests::a_long_flag_that_merely_contains_the_letter_is_not_the_short_flag ... ok
[INFO] [stdout] test intent::tests::a_log_smaller_than_the_window_is_read_whole ... ok
[INFO] [stdout] test intent::tests::a_path_qualified_command_is_the_command_it_names ... ok
[INFO] [stdout] test intent::tests::a_plus_refspec_is_a_force_push ... ok
[INFO] [stdout] test intent::tests::a_posix_shell_does_not_hide_the_command_it_runs ... ok
[INFO] [stdout] test intent::tests::a_redirect_never_downgrades_a_higher_intent ... ok
[INFO] [stdout] test intent::tests::a_truncating_redirect_is_a_destructive_intent ... ok
[INFO] [stdout] test intent::tests::a_wrapper_does_not_hide_the_command_it_runs ... ok
[INFO] [stdout] test intent::tests::an_overwrite_is_found_in_a_compound ... ok
[INFO] [stdout] test intent::tests::appends_descriptors_and_sinks_are_not_destructive ... ok
[INFO] [stdout] test intent::tests::approved_ask_is_excluded ... ok
[INFO] [stdout] test init::tests::the_starter_policy_has_no_uninsurable_asks ... ok
[INFO] [stdout] test init::tests::the_uninsurable_commands_are_denied_not_asked ... ok
[INFO] [stdout] test intent::tests::breaker_respects_config ... ok
[INFO] [stdout] test intent::tests::breaker_trips_on_third_variant ... ok
[INFO] [stdout] test intent::tests::classifies_compound_by_most_dangerous_segment ... ok
[INFO] [stdout] test intent::tests::classifies_db_destroy ... ok
[INFO] [stdout] test intent::tests::classifies_delete_indirection_find_and_xargs ... ok
[INFO] [stdout] test intent::tests::classifies_unix_rm ... ok
[INFO] [stdout] test intent::tests::classifies_git_destructive ... ok
[INFO] [stdout] test intent::tests::classifies_infra_destroy ... ok
[INFO] [stdout] test intent::tests::classifies_powershell_delete_variants ... ok
[INFO] [stdout] test intent::tests::config_defaults_when_block_missing_or_file_absent ... ok
[INFO] [stdout] test intent::tests::destructive_sql_is_recognised_through_a_db_client ... ok
[INFO] [stdout] test intent::tests::counts_asks_and_denies_for_same_session_and_intent ... ok
[INFO] [stdout] test intent::tests::git_clean_counts_both_spellings_of_force ... ok
[INFO] [stdout] test intent::tests::find_and_xargs_count_only_when_they_invoke_a_delete ... ok
[INFO] [stdout] test intent::tests::git_clean_was_a_known_gap_and_is_now_closed ... ok
[INFO] [stdout] test intent::tests::git_rm_counts_like_rm_when_recursive_or_forced ... ok
[INFO] [stdout] test intent::tests::every_git_spelling_that_destroys_history_is_recognised ... ok
[INFO] [stdout] test delete::tests::a_home_and_its_siblings_are_recognised_as_profiles ... ok
[INFO] [stdout] test delete::tests::the_as_written_line_appears_only_when_resolution_changed_something ... ok
[INFO] [stdout] test intent::tests::infrastructure_teardown_is_recognised_by_its_verb ... ok
[INFO] [stdout] test context::tests::pushing_to_a_protected_branch_escalates ... ok
[INFO] [stdout] test intent::tests::old_log_lines_without_intent_are_ignored_not_fatal ... ok
[INFO] [stdout] test intent::tests::intent_isolation ... ok
[INFO] [stdout] test intent::tests::missing_log_fails_open ... ok
[INFO] [stdout] test intent::tests::session_isolation ... ok
[INFO] [stdout] test intent::tests::only_gated_overwrites_accumulate_breaker_pressure ... ok
[INFO] [stdout] test intent::tests::the_most_severe_intent_in_a_compound_is_the_one_reported ... ok
[INFO] [stdout] test intent::tests::severity_ordering_on_mixed_compound ... ok
[INFO] [stdout] test intent::tests::shred_counts_only_when_it_also_removes ... ok
[INFO] [stdout] test delete::tests::the_profile_shapes_are_recognised_even_with_no_home_set ... ok
[INFO] [stdout] test notify::tests::a_policy_with_no_notify_section_has_nothing_to_test ... ok
[INFO] [stdout] test paths::tests::hash_is_stable_and_distinguishes ... ok
[INFO] [stdout] test paths::tests::demo_state_dir_sits_under_the_home_and_is_ready_to_write ... ok
[INFO] [stdout] test paths::tests::hash_key_stable_across_path_representations ... ok
[INFO] [stdout] test paths::tests::only_a_drive_letter_is_case_folded ... ok
[INFO] [stdout] test notify::tests::the_probe_reports_what_the_endpoint_actually_said ... ok
[INFO] [stdout] test paths::tests::resolve_from_uses_explicit_dir_not_process_cwd ... ok
[INFO] [stdout] test paths::tests::copy_recursive_reproduces_a_whole_tree ... ok
[INFO] [stdout] test paths::tests::rewrite_walks_nested_json ... ok
[INFO] [stdout] test paths::tests::sanitize_keeps_names_readable ... ok
[INFO] [stdout] test notify::tests::each_decision_carries_its_own_mark ... ok
[INFO] [stdout] test paths::tests::the_root_path_survives_both_guards ... ok
[INFO] [stdout] test pg::tests::a_backslash_escapes_only_inside_double_quotes ... ok
[INFO] [stdout] test paths::tests::the_hash_is_the_published_algorithm_not_merely_a_stable_one ... ok
[INFO] [stdout] test pg::tests::a_client_that_is_not_psql_is_not_previewed ... ok
[INFO] [stdout] test pg::tests::a_comma_without_a_space_was_a_known_gap_and_is_now_closed ... ok
[INFO] [stdout] test pg::tests::a_comma_separated_list_is_read_in_either_spelling ... ok
[INFO] [stdout] test hook::tests::codex_apply_patch_as_captured_is_a_write_not_a_shell_command ... ok
[INFO] [stdout] test pg::tests::a_database_that_refuses_degrades_to_static_analysis ... ok
[INFO] [stdout] test pg::tests::a_denied_command_says_the_database_was_not_consulted ... ok
[INFO] [stdout] test pg::tests::a_malformed_if_exists_does_not_make_a_drop_invisible ... ok
[INFO] [stdout] test pg::tests::a_lone_dash_is_a_positional_not_a_flag_cluster ... ok
[INFO] [stdout] test pg::tests::a_psql_invocation_without_a_statement_has_nothing_to_preview ... ok
[INFO] [stdout] test pg::tests::a_filtered_delete_says_the_database_was_not_consulted ... ok
[INFO] [stdout] test pg::tests::a_row_count_that_was_never_analyzed_says_so ... ok
[INFO] [stdout] test intent::tests::the_breaker_looks_back_further_than_a_line_or_two ... ok
[INFO] [stdout] test pg::tests::a_table_list_ends_at_cascade_rather_than_swallowing_it ... ok
[INFO] [stdout] test pg::tests::a_psql_that_cannot_be_started_is_named ... ok
[INFO] [stdout] test pg::tests::a_table_list_that_reaches_cascade_after_a_comma_still_stops ... ok
[INFO] [stdout] test pg::tests::an_empty_dependent_list_is_not_a_dependent ... ok
[INFO] [stdout] test pg::tests::attached_short_forms_are_parsed_not_matched ... ok
[INFO] [stdout] test pg::tests::an_identifier_may_be_schema_qualified_or_carry_the_allowed_symbols ... ok
[INFO] [stdout] test intent::tests::the_window_reads_back_the_bytes_it_promises ... ok
[INFO] [stdout] test pg::tests::connection_args_keeps_only_connection_parameters ... ok
[INFO] [stdout] test pg::tests::delete_needs_both_of_its_keywords ... ok
[INFO] [stdout] test pg::tests::every_connection_parameter_survives_the_rebuild ... ok
[INFO] [stdout] test pg::tests::boolean_clusters_are_dropped_without_eating_the_dbname ... ok
[INFO] [stdout] test pg::tests::extracts_sql_from_variants ... ok
[INFO] [stdout] test pg::tests::file_flag_never_reaches_the_preview_invocation ... ok
[INFO] [stdout] test pg::tests::dropped_flags_consume_their_value ... ok
[INFO] [stdout] test pg::tests::a_refused_password_is_reported_with_the_remedy ... ok
[INFO] [stdout] test pg::tests::ignores_safe_sql_and_non_psql ... ok
[INFO] [stdout] test pg::tests::an_answer_without_a_count_is_reported_as_unread ... ok
[INFO] [stdout] test pg::tests::parses_drop_variants ... ok
[INFO] [stdout] test pg::tests::parses_truncate_and_delete ... ok
[INFO] [stdout] test pg::tests::psql_program_requires_the_exact_binary_name ... ok
[INFO] [stdout] test pg::tests::side_effecting_flags_are_dropped_not_enumerated ... ok
[INFO] [stdout] test pg::tests::the_tokenizer_keeps_each_quote_kind_to_itself ... ok
[INFO] [stdout] test pg::tests::thousands_are_grouped_at_every_boundary ... ok
[INFO] [stdout] test pg::tests::tokenizer_respects_quotes ... ok
[INFO] [stdout] test pg::tests::only_is_stepped_over_rather_than_taken_as_the_table ... ok
[INFO] [stdout] test pg::tests::two_tables_without_a_comma_are_not_a_list ... ok
[INFO] [stdout] test pg::tests::the_catalog_query_is_sent_as_three_separate_statements ... ok
[INFO] [stdout] test pg::tests::long_forms_both_spellings ... ok
[INFO] [stdout] test policy::combined_gate_tests::a_rule_needs_at_least_one_matcher ... ok
[INFO] [stdout] test policy::combined_gate_tests::a_star_component_spans_depth_and_a_star_inside_one_does_not ... ok
[INFO] [stdout] test policy::combined_gate_tests::an_explicit_allow_outranks_an_unresolved_sensitive_target ... ok
[INFO] [stdout] test policy::combined_gate_tests::a_path_rule_catches_every_spelling_and_names_the_target ... ok
[INFO] [stdout] test policy::combined_gate_tests::the_dot_slash_spelling_was_a_known_gap_and_is_now_closed ... ok
[INFO] [stdout] test pg::tests::introspection_reads_the_row_count_and_the_dependents ... ok
[INFO] [stdout] test hook::tests::cursors_delete_as_captured_is_a_delete_judged_by_its_target ... ok
[INFO] [stdout] test policy::combined_gate_tests::the_env_rule_denies_writes_and_leaves_reads_alone ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::a_spelling_only_one_reading_recognises_gets_the_worse_verdict ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::an_explicit_allow_never_outranks_a_more_dangerous_default ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::an_omitted_field_gets_the_documented_default ... ok
[INFO] [stdout] test policy::combined_gate_tests::the_root_rule_explains_itself_only_for_the_root ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::an_ordinary_command_is_not_read_twice ... ok
[INFO] [stdout] test policy::combined_gate_tests::the_starter_policy_obeys_the_matcher_invariant ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::case_sensitivity_is_written_out_only_when_it_was_asked_for ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::the_earliest_of_two_equally_severe_rules_is_the_one_reported ... ok
[INFO] [stdout] test policy::combined_gate_tests::the_reason_names_what_the_command_does_to_the_target ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::the_first_of_two_equally_dangerous_segments_is_the_one_named ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::the_earliest_rule_still_wins_when_the_order_is_reversed ... ok
[INFO] [stdout] test policy::schema_and_severity_tests::the_readings_include_the_tokenized_form_a_quote_would_hide ... ok
[INFO] [stdout] test policy::tests::a_case_sensitive_rule_means_the_case_it_spells ... ok
[INFO] [stdout] test policy::tests::a_lowercase_rule_still_matches_either_case ... ok
[INFO] [stdout] test policy::tests::a_quoted_spelling_of_an_excepted_command_fails_closed ... ok
[INFO] [stdout] test policy::tests::a_shell_c_string_is_judged_by_what_it_runs ... ok
[INFO] [stdout] test policy::tests::a_review_exception_cannot_shadow_the_hook_config_denies ... ok
[INFO] [stdout] test policy::tests::a_string_rule_sees_through_every_spelling_the_resolver_knows ... ok
[INFO] [stdout] test policy::tests::a_collapsed_quote_rmdir_is_denied_in_every_spelling ... ok
[INFO] [stdout] test policy::tests::case_insensitive ... ok
[INFO] [stdout] test policy::tests::a_powershell_assignment_is_judged_by_the_command_it_assigns ... ok
[INFO] [stdout] test policy::combined_gate_tests::a_path_pattern_matches_components_not_strings ... ok
[INFO] [stdout] test policy::tests::builtin_policy_parses_and_gates ... ok
[INFO] [stdout] test policy::tests::compound_commands_cannot_hide_behind_prefixes ... ok
[INFO] [stdout] test policy::tests::first_match_wins ... ok
[INFO] [stdout] test policy::combined_gate_tests::a_path_rule_fires_on_what_changes_a_file_not_on_what_reads_it ... ok
[INFO] [stdout] test init::tests::one_detected_harness_needs_no_flag ... ok
[INFO] [stdout] test policy::tests::normalization ... ok
[INFO] [stdout] test paths::tests::legacy_in_repo_state_is_moved_and_its_recorded_paths_rewritten ... ok
[INFO] [stdout] test paths::tests::resolve_from_uses_given_root_not_process_cwd ... ok
[INFO] [stdout] test policy::tests::no_preserve_root_is_denied_by_name ... ok
[INFO] [stdout] test policy::tests::an_unnamed_wrapper_is_transparent_and_a_named_one_is_not ... ok
[INFO] [stdout] test policy::tests::the_extra_readings_can_only_add_matches ... ok
[INFO] [stdout] test paths::tests::resolve_readonly_creates_nothing ... ok
[INFO] [stdout] test notify::tests::only_the_decisions_the_policy_asked_for_are_sent ... ok
[INFO] [stdout] test policy::tests::deleting_a_recovery_point_is_a_hard_stop_in_every_spelling ... ok
[INFO] [stdout] test policy::tests::the_review_exceptions_only_go_one_direction ... ok
[INFO] [stdout] test policy::tests::the_starter_policy_defends_its_own_configuration ... ok
[INFO] [stdout] test fingerprint::tests::sha256_matches_the_published_vectors ... ok
[INFO] [stdout] test policy::tests::wildcard_basics ... ok
[INFO] [stdout] test policy::tests::quoting_cannot_disguise_a_command_from_a_rule ... ok
[INFO] [stdout] test preview::live_gate_tests::a_compound_command_is_previewed_by_its_first_meaningful_segment ... ok
[INFO] [stdout] test preview::live_gate_tests::a_non_live_preview_keeps_the_static_sql_analysis ... ok
[INFO] [stdout] test policy::tests::reviewing_the_policy_in_a_pr_still_works ... ok
[INFO] [stdout] test policy::tests::read_only_prefixes_do_not_swallow_neighbouring_commands ... ok
[INFO] [stdout] test policy::tests::the_powershell_pipeline_is_asked_and_its_flagged_forms_denied ... ok
[INFO] [stdout] test preview::live_gate_tests::a_non_live_preview_spawns_nothing_for_git_push ... ok
[INFO] [stdout] test preview::live_gate_tests::a_source_is_not_reported_as_losing_content ... ok
[INFO] [stdout] test preview::live_gate_tests::a_non_live_preview_spawns_nothing_for_terraform ... ok
[INFO] [stdout] test preview::live_gate_tests::an_overwrite_reports_what_the_file_loses ... ok
[INFO] [stdout] test preview::live_gate_tests::a_file_written_through_an_option_reports_what_it_loses ... ok
[INFO] [stdout] test preview::live_gate_tests::creating_a_file_has_nothing_to_preview ... ok
[INFO] [stdout] test policy::tests::uppercase_spelled_rules_stay_case_insensitive_without_the_field ... ok
[INFO] [stdout] test preview::live_gate_tests::a_shell_c_string_is_previewed_as_the_command_inside_it ... ok
[INFO] [stdout] test preview::live_gate_tests::deletes_preview_identically_whether_live_or_not ... ok
[INFO] [stdout] test policy::tests::gits_global_options_are_stepped_over_by_every_rule ... ok
[INFO] [stdout] test policy::tests::shell_control_flow_is_transparent_and_the_governed_command_decides ... ok
[INFO] [stdout] test preview::live_gate_tests::a_psql_reached_by_path_or_by_exe_still_gets_the_postgres_preview ... ok
[INFO] [stdout] test hook::tests::a_native_write_is_judged_by_its_targets_and_silent_when_nothing_names_them ... ok
[INFO] [stdout] test preview::push_preview_tests::the_refspec_reader_knows_a_delete_from_a_matching_push ... ok
[INFO] [stdout] test preview::terraform_stub_tests::a_plan_that_destroys_nothing_says_nothing_about_destruction ... ok
[INFO] [stdout] test preview::terraform_stub_tests::a_plan_that_destroys_something_leads_with_the_destruction ... ok
[INFO] [stdout] test delete::tests::a_single_large_directory_cannot_blow_the_budget ... ok
[INFO] [stdout] test preview::terraform_stub_tests::a_plan_that_failed_is_not_read_at_all ... ok
[INFO] [stdout] test preview::tf_tests::a_resource_line_needs_both_halves_of_its_shape ... ok
[INFO] [stdout] test preview::tf_tests::no_changes_is_zeroes ... ok
[INFO] [stdout] test preview::tf_tests::parses_plan_summary_and_resources ... ok
[INFO] [stdout] test protect::tests::a_bare_filename_with_no_directory_is_not_protected ... ok
[INFO] [stdout] test protect::tests::an_absolute_path_is_never_resolved_against_the_cwd ... ok
[INFO] [stdout] test protect::tests::audit_log_under_termaxa_home_is_refused ... ok
[INFO] [stdout] test protect::tests::case_is_ignored_so_a_respelling_does_not_slip_through ... ok
[INFO] [stdout] test protect::tests::claude_settings_both_spellings_are_refused ... ok
[INFO] [stdout] test protect::tests::every_dialects_hook_file_is_refused ... ok
[INFO] [stdout] test policy::tests::the_replays_findings_are_allows_and_its_denies_still_deny ... ok
[INFO] [stdout] test protect::tests::ordinary_project_files_get_no_decision ... ok
[INFO] [stdout] test protect::tests::policy_overwrite_is_refused_on_both_separators ... ok
[INFO] [stdout] test protect::tests::relative_path_is_resolved_against_the_payload_cwd ... ok
[INFO] [stdout] test protect::tests::segment_match_does_not_fire_on_a_substring ... ok
[INFO] [stdout] test protect::tests::separator_noise_does_not_shift_the_parent_directory ... ok
[INFO] [stdout] test protect::tests::the_github_dialect_only_claims_its_own_hooks_file ... ok
[INFO] [stdout] test protect::tests::traversal_through_a_protected_directory_is_refused ... ok
[INFO] [stdout] test protect::tests::only_settings_json_under_dot_claude_is_control_plane ... ok
[INFO] [stdout] test replay::tests::a_written_file_is_not_a_call_and_an_interrupted_call_is_not_a_bypass ... ok
[INFO] [stdout] test replay::tests::against_record_sorts_calls_into_judged_unrecorded_and_never_fired ... ok
[INFO] [stdout] test replay::tests::calls_carry_ids_sessions_and_times_from_both_shapes ... ok
[INFO] [stdout] test report::tests::a_clock_that_went_backwards_reports_no_duration ... ok
[INFO] [stdout] test replay::tests::a_replay_reads_both_transcript_shapes_and_tallies_by_verdict ... ok
[INFO] [stdout] test report::tests::a_report_with_no_activity_says_so_and_still_succeeds ... ok
[INFO] [stdout] test report::tests::a_session_label_is_shortened_for_display ... ok
[INFO] [stdout] test report::tests::a_rollback_is_a_post_receipt_that_names_a_rollback ... ok
[INFO] [stdout] test doctor::tests::a_write_to_a_hook_that_closed_its_stdin_is_an_error_not_a_death ... ok
[INFO] [stdout] test report::tests::asks_are_counted_by_what_became_of_them ... ok
[INFO] [stdout] test report::tests::backups_are_joined_against_the_manifest_and_unknown_ids_dropped ... ok
[INFO] [stdout] test report::tests::blocked_lists_denials_and_impacts_skip_what_simply_ran ... ok
[INFO] [stdout] test report::tests::decision_counts_and_the_risk_formula_are_exact ... ok
[INFO] [stdout] test report::tests::insight_causes_exist_for_every_intent_label ... ok
[INFO] [stdout] test report::tests::insight_threshold_is_about_trips_not_classifications ... ok
[INFO] [stdout] test report::tests::asking_for_a_session_that_is_not_there_fails_rather_than_reporting_everything ... ok
[INFO] [stdout] test report::tests::equally_frequent_intents_are_ordered_alphabetically ... ok
[INFO] [stdout] test report::tests::recent_events_are_the_last_six_oldest_first ... ok
[INFO] [stdout] test report::tests::post_receipt_renders_as_success_not_denial ... ok
[INFO] [stdout] test report::tests::intents_count_classifications_while_trips_count_blocks ... ok
[INFO] [stdout] test report::tests::the_rollup_counts_breaker_trips_not_everything_else ... ok
[INFO] [stdout] test report::tests::the_rollup_cutoff_is_exactly_the_window_in_days ... ok
[INFO] [stdout] test report::tests::the_rollup_ranks_the_busiest_directories_by_basename ... ok
[INFO] [stdout] test report::tests::the_approval_habit_insight_has_a_floor_and_a_threshold ... ok
[INFO] [stdout] test report::tests::the_rollup_window_excludes_what_fell_out_of_it ... ok
[INFO] [stdout] test report::tests::the_window_spans_the_first_and_last_entry ... ok
[INFO] [stdout] test resolve::tests::a_cmd_switch_is_not_an_operand ... ok
[INFO] [stdout] test resolve::tests::a_dollar_that_is_not_a_variable_does_not_count ... ok
[INFO] [stdout] test resolve::tests::a_redirection_is_not_an_operand ... ok
[INFO] [stdout] test resolve::tests::a_target_outside_the_project_carries_that_shape ... ok
[INFO] [stdout] test resolve::tests::an_escaped_quote_resolves_to_the_file_the_shell_deletes ... ok
[INFO] [stdout] test resolve::tests::a_plain_relative_target_resolves_against_the_given_cwd_and_is_ordinary ... ok
[INFO] [stdout] test resolve::tests::an_explicit_target_directory_inverts_the_grammar ... ok
[INFO] [stdout] test resolve::tests::an_unexpanded_variable_is_unresolved_rather_than_guessed ... ok
[INFO] [stdout] test resolve::tests::cp_reads_its_sources_and_mv_removes_them ... ok
[INFO] [stdout] test resolve::tests::redirects_and_deletes_speak_the_same_vocabulary ... ok
[INFO] [stdout] test resolve::tests::every_shape_has_a_label_that_reads_after_a_target ... ok
[INFO] [stdout] test resolve::tests::tee_writes_every_operand_and_dd_names_its_roles ... ok
[INFO] [stdout] test resolve::tests::shapes_accumulate_rather_than_shadowing_each_other ... ok
[INFO] [stdout] test policy::tests::claude_codes_tool_call_is_judged_by_the_command_inside_the_eval ... ok
[INFO] [stdout] test report::tests::the_risk_bands_are_pinned_at_their_boundaries ... ok
[INFO] [stdout] test resolve::tests::the_gates_own_files_are_recognised_through_protect ... ok
[INFO] [stdout] test resolve::tests::the_two_readings_are_both_kept ... ok
[INFO] [stdout] test resolve::tests::the_files_an_option_writes_are_named ... ok
[INFO] [stdout] test resolve::tests::the_final_operand_is_the_destination_and_the_rest_are_not ... ok
[INFO] [stdout] test runner::tests::a_target_set_that_changed_since_it_was_judged_is_refused_and_says_so ... ok
[INFO] [stdout] test preview::push_preview_tests::a_branch_the_remote_has_never_seen_is_entirely_new ... ok
[INFO] [stdout] test runner::tests::shell_join_escapes_backslashes_before_quoting ... ok
[INFO] [stdout] test runner::tests::run_refuses_an_empty_command_line ... ok
[INFO] [stdout] test runner::tests::run_blocks_a_denied_command_and_records_the_decision ... ok
[INFO] [stdout] test runner::tests::execute_reports_an_unlaunchable_command_as_an_error ... ok
[INFO] [stdout] test runner::tests::shell_join_leaves_ordinary_arguments_alone ... ok
[INFO] [stdout] test runner::tests::shell_join_quotes_on_a_quote_character_without_whitespace ... ok
[INFO] [stdout] test runner::tests::shell_join_keeps_a_quoted_argument_in_one_piece ... ok
[INFO] [stdout] test runner::tests::execute_returns_the_child_exit_code ... ok
[INFO] [stdout] test runner::tests::shell_join_quotes_an_empty_argument ... ok
[INFO] [stdout] test sed::tests::in_place_is_found_in_every_spelling_and_only_there ... ok
[INFO] [stdout] test shell::tests::a_posix_shell_c_string_is_read_as_its_own_segments ... ok
[INFO] [stdout] test shell::tests::a_backslash_inside_single_quotes_escapes_nothing ... ok
[INFO] [stdout] test shell::tests::a_lone_ampersand_splits ... ok
[INFO] [stdout] test shell::tests::a_quoted_target_keeps_the_spaces_inside_it ... ok
[INFO] [stdout] test shell::tests::a_redirect_with_nothing_after_it_has_no_target ... ok
[INFO] [stdout] test sed::tests::the_script_says_when_it_writes_or_runs_something ... ok
[INFO] [stdout] test shell::tests::a_quote_of_one_kind_does_not_open_the_other ... ok
[INFO] [stdout] test shell::tests::a_segment_may_begin_with_a_backslash ... ok
[INFO] [stdout] test shell::tests::a_segment_may_begin_with_the_operator ... ok
[INFO] [stdout] test shell::tests::a_separator_ends_a_target_and_still_splits ... ok
[INFO] [stdout] test shell::tests::an_escaped_quote_does_not_open_a_quote ... ok
[INFO] [stdout] test shell::tests::an_escaped_space_keeps_a_target_whole ... ok
[INFO] [stdout] test shell::tests::an_operator_at_the_very_end_is_not_read_past ... ok
[INFO] [stdout] test shell::tests::an_operator_pair_is_consumed_exactly_once ... ok
[INFO] [stdout] test shell::tests::an_unbalanced_quote_inside_the_other_kind_changes_nothing ... ok
[INFO] [stdout] test shell::tests::a_trailing_redirect_with_no_target_pushes_nothing ... ok
[INFO] [stdout] test shell::tests::an_escaped_quote_does_not_close_the_string_it_is_inside ... ok
[INFO] [stdout] test shell::tests::appending_is_recorded_but_not_truncating ... ok
[INFO] [stdout] test shell::tests::escaped_separators_are_literal ... ok
[INFO] [stdout] test shell::tests::escapes_clobber_and_read_write_open ... ok
[INFO] [stdout] test shell::tests::every_sink_spelling_is_a_sink ... ok
[INFO] [stdout] test shell::tests::newlines_split_too ... ok
[INFO] [stdout] test shell::tests::only_a_literal_assignment_binds_and_only_outside_single_quotes ... ok
[INFO] [stdout] test shell::tests::process_substitution_is_not_a_target ... ok
[INFO] [stdout] test shell::tests::quoted_redirects_are_text ... ok
[INFO] [stdout] test shell::tests::claude_codes_preamble_is_scaffolding_and_its_eval_is_read ... ok
[INFO] [stdout] test shell::tests::options_after_dash_c_are_stepped_over ... ok
[INFO] [stdout] test shell::tests::descriptor_redirects_are_not_file_targets ... ok
[INFO] [stdout] test shell::tests::quotes_protect_operators ... ok
[INFO] [stdout] test shell::tests::several_redirects_in_one_segment ... ok
[INFO] [stdout] test shell::tests::redirections_survive ... ok
[INFO] [stdout] test shell::tests::sinks_are_not_targets ... ok
[INFO] [stdout] test shell::tests::a_variable_bound_earlier_in_the_string_resolves_and_the_snapshot_is_recognised ... ok
[INFO] [stdout] test shell::tests::splits_all_operators ... ok
[INFO] [stdout] test shell::tests::splits_the_field_report_command ... ok
[INFO] [stdout] test shell::tests::substitution_detected ... ok
[INFO] [stdout] test shell::tests::single_quotes_hide_a_substitution_and_double_quotes_do_not ... ok
[INFO] [stdout] test shell::tests::truncating_redirects_are_extracted ... ok
[INFO] [stdout] test shell::tests::the_predicted_survivors_are_killed ... ok
[INFO] [stdout] test shell::tests::the_command_text_changes_nothing_about_the_text_or_the_redirects ... ok
[INFO] [stdout] test shell::tests::the_command_text_leaves_every_redirection_out ... ok
[INFO] [stdout] test shell::tests::substitutions_are_extracted_balanced_and_a_quoted_heredoc_is_literal ... ok
[INFO] [stdout] test supervise::tests::a_malformed_answer_is_refused_rather_than_interpreted ... ok
[INFO] [stdout] test supervise::tests::a_request_carries_the_raw_payload_and_no_conclusions ... ok
[INFO] [stdout] test shell::tests::what_the_scaffolding_reading_leaves_alone ... ok
[INFO] [stdout] test supervise::tests::a_version_mismatch_is_a_refusal_with_a_message_not_undefined_behaviour ... ok
[INFO] [stdout] test supervise::tests::a_skewed_request_is_refused_rather_than_half_understood ... ok
[INFO] [stdout] test supervise::tests::every_failure_names_its_own_condition ... ok
[INFO] [stdout] test supervise::tests::an_unreadable_request_is_refused_not_guessed_at ... ok
[INFO] [stdout] test shell::tests::what_a_shell_wrapper_reading_leaves_alone ... ok
[INFO] [stdout] test policy::tests::claude_codes_startup_snapshot_is_allowed_whole_and_drift_fails_closed ... ok
[INFO] [stdout] test testutil::tests::no_module_builds_a_temp_path_by_hand ... ok
[INFO] [stdout] test testutil::tests::the_check_only_reports_what_arrived ... ok
[INFO] [stdout] test preview::push_preview_tests::a_forced_push_that_destroys_nothing_claims_no_losses ... ok
[INFO] [stdout] test preview::push_preview_tests::a_push_that_removes_refs_says_which_and_what_is_on_them ... ok
[INFO] [stdout] test doctor::tests::a_hanging_hook_is_dead_within_the_timeout ... ok
[INFO] [stdout] test ui::tests::an_unrecognised_decision_word_passes_through_unchanged ... ok
[INFO] [stdout] test ui::tests::decision_words_are_unchanged_when_colour_is_off ... ok
[INFO] [stdout] test ui::tests::every_colour_helper_answers_to_the_same_gate ... ok
[INFO] [stdout] test ui::tests::every_colour_helper_keeps_the_text_it_wraps ... ok
[INFO] [stdout] test ui::tests::field_pads_the_label_before_colouring_it ... ok
[INFO] [stdout] test ui::tests::post_receipts_mark_as_success_not_denial ... ok
[INFO] [stdout] test wrap::tests::an_absolute_path_shell_is_outside_what_a_path_shim_can_reach ... ok
[INFO] [stdout] test wrap::tests::an_approved_command_runs_outside_the_shims ... ok
[INFO] [stdout] test wrap::tests::an_operators_shim_is_kept_and_anything_else_is_overridden_and_said ... ok
[INFO] [stdout] test wrap::tests::shims_are_written_executable_and_not_writable_by_others ... ok
[INFO] [stdout] test wrap::tests::the_agent_is_told_to_use_the_shim_for_the_shell_it_would_have_chosen ... ok
[INFO] [stdout] test wrap::tests::the_shim_directory_is_outside_the_project ... ok
[INFO] [stdout] test wrap::tests::the_shim_routes_dash_c_and_passes_everything_else_through ... ok
[INFO] [stdout] test preview::push_preview_tests::a_forced_push_reports_what_the_remote_would_lose ... ok
[INFO] [stdout] test preview::push_preview_tests::a_short_file_list_still_stops_before_the_totals_line ... ok
[INFO] [stdout] test preview::push_preview_tests::exactly_eight_files_are_all_shown_without_a_tally ... ok
[INFO] [stdout] test preview::push_preview_tests::nothing_to_push_is_said_plainly ... ok
[INFO] [stdout] test preview::push_preview_tests::the_commit_list_is_capped_and_says_how_many_it_hid ... ok
[INFO] [stdout] test preview::push_preview_tests::the_file_list_is_capped_and_excludes_the_totals_line ... ok
[INFO] [stdout] test preview::terraform_stub_tests::both_apply_and_destroy_reach_the_planner ... ok
[INFO] [stdout] test supervise::tests::the_endpoint_is_told_not_inferred_from_home ... ok
[INFO] [stdout] test supervise::tests::the_supervisor_decides_and_answers ... ok
[INFO] [stdout] test testutil::tests::each_guard_gets_a_tree_of_its_own ... ok
[INFO] [stdout] test testutil::tests::isolating_path_hides_the_machine_without_breaking_the_lookup ... ok
[INFO] [stdout] test testutil::tests::the_guard_actually_redirects_state ... ok
[INFO] [stdout] test testutil::tests::the_guard_fails_loudly_when_state_lands_outside_its_tree ... ok
[INFO] [stdout] test testutil::tests::the_guard_puts_everything_back ... ok
[INFO] [stdout] test testutil::tests::the_guard_puts_path_back ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 477 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.57s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli_surface.rs (/opt/rustwide/target/debug/deps/cli_surface-fb44dc2f42b07feb)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test an_unrecognised_shell_event_passes_through_by_default_and_is_refused_by_policy ... ok
[INFO] [stdout] test stats_stays_quiet_about_denials_when_there_are_none ... ok
[INFO] [stdout] test rollback_refuses_an_id_it_does_not_have ... ok
[INFO] [stdout] test rollback_restores_nothing_unless_it_is_confirmed ... ok
[INFO] [stdout] test a_denied_command_never_causes_the_preview_to_run_anything ... ok
[INFO] [stdout] test a_failed_backup_proceeds_by_default_and_is_refused_by_policy ... ok
[INFO] [stdout] test wrap_refuses_an_ask_when_nobody_is_at_a_terminal ... ok
[INFO] [stdout] test the_log_says_what_became_of_each_command ... ok
[INFO] [stdout] test log_filters_by_decision_and_by_source ... ok
[INFO] [stdout] test wrap_executes_what_it_allows ... ok
[INFO] [stdout] test wrap_hands_the_agent_the_shim_for_its_own_shell_by_name ... ok
[INFO] [stdout] test stats_ranks_the_commands_that_were_denied ... ok
[INFO] [stdout] test demo_runs_the_real_gate_on_a_throwaway_project ... ok
[INFO] [stdout] test wrap_reads_a_c_wherever_the_shell_would ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.43s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/codex_dialect.rs (/opt/rustwide/target/debug/deps/codex_dialect-e67bc52ccdef39dc)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test a_copilot_deny_exits_zero_in_copilots_own_shape ... ok
[INFO] [stdout] test copilots_powershell_tool_is_read_and_an_allow_is_answered ... ok
[INFO] [stdout] test an_ask_is_rendered_as_a_deny_that_says_the_gate_asked ... ok
[INFO] [stdout] test a_copilot_deny_through_repo_settings_exits_zero_in_claudes_shape ... ok
[INFO] [stdout] test a_matched_allow_is_silence_for_codex_and_an_explicit_allow_for_claude_code ... ok
[INFO] [stdout] test a_deny_exits_zero_for_codex_and_two_for_claude_code ... ok
[INFO] [stdout] test init_writes_the_hooks_file_codex_reads ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/colour_gate.rs (/opt/rustwide/target/debug/deps/colour_gate-137793bd96d0655d)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test redirected_output_carries_no_escape_sequences ... ok
[INFO] [stdout] test either_no_color_variable_beats_clicolor_force ... ok
[INFO] [stdout] test the_welcome_screen_teaches_the_first_command ... ok
[INFO] [stdout] test clicolor_force_asks_for_colour_and_gets_it ... ok
[INFO] [stdout] test a_real_terminal_gets_colour ... ok
[INFO] [stdout] test clicolor_force_set_to_zero_is_not_a_request ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/docs_encoding.rs (/opt/rustwide/target/debug/deps/docs_encoding-4ccb076a95d0751b)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test the_shipped_docs_are_valid_utf8 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/doctor_output.rs (/opt/rustwide/target/debug/deps/doctor_output-3bfbecdae7dd9dbe)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test a_hook_that_has_already_run_silences_the_warning ... ok
[INFO] [stdout] test a_directory_with_nothing_in_it_is_reported_as_such ... ok
[INFO] [stdout] test an_unregistered_agent_directory_is_reported_as_not_wired ... ok
[INFO] [stdout] test each_agent_is_detected_by_its_own_evidence ... ok
[INFO] [stdout] test the_log_line_separates_hook_entries_from_the_rest ... ok
[INFO] [stdout] test a_wired_cursor_is_told_to_restart ... ok
[INFO] [stdout] test a_wired_hook_reports_as_live_and_leaves_nothing_to_fix ... ok
[INFO] [stdout] test a_live_hook_over_a_policy_that_denies_nothing_is_flagged ... ok
[INFO] [stdout] test an_initialised_project_without_an_agent_has_nothing_to_fix ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.30s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/hook_dialects.rs (/opt/rustwide/target/debug/deps/hook_dialects-b07c4173166bb32b)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test a_denied_command_answers_and_exits_two ... ok
[INFO] [stdout] test a_cwd_that_is_not_a_directory_falls_back_instead_of_being_trusted ... ok
[INFO] [stdout] test a_post_receipt_is_recorded_against_the_project_the_payload_names ... ok
[INFO] [stdout] test a_refused_write_is_recorded_against_the_project_the_payload_names ... ok
[INFO] [stdout] test the_payload_cwd_decides_the_project_not_where_the_hook_was_spawned ... ok
[INFO] [stdout] test an_unmatched_allow_says_nothing_at_all_to_claude_code ... ok
[INFO] [stdout] test a_denied_command_never_runs_its_preview ... ok
[INFO] [stdout] test writing_to_the_gates_own_configuration_is_denied_in_every_dialect ... ok
[INFO] [stdout] test a_trip_holds_across_sessions_until_a_recorded_resume ... ok
[INFO] [stdout] test copilot_is_recognised_by_every_shell_tool_it_names ... ok
[INFO] [stdout] test insurance_is_taken_for_what_runs_and_for_nothing_else ... ok
[INFO] [stdout] test the_hook_leaves_a_witness_first_and_records_the_call_id ... ok
[INFO] [stdout] test cursor_is_recognised_by_its_tool_name_and_conversation_together ... ok
[INFO] [stdout] test an_ungated_overwrite_neither_accumulates_pressure_nor_trips_on_it ... ok
[INFO] [stdout] test observe_mode_records_what_enforcement_would_have_done ... ok
[INFO] [stdout] test a_probe_denial_notifies_nobody_while_a_real_one_does ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.90s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/init_output.rs (/opt/rustwide/target/debug/deps/init_output-8a8c65517656e192)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test a_harness_is_detected_by_its_directory_alone ... ok
[INFO] [stdout] test an_empty_directory_is_told_it_has_no_harness ... ok
[INFO] [stdout] test the_manual_snippet_is_printed_for_people_wiring_by_hand ... ok
[INFO] [stderr]      Running tests/probe_inertness.rs (/opt/rustwide/target/debug/deps/probe_inertness-ea1b9eae926eb5af)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test the_probe_answers_and_writes_nothing_and_the_binding_holds ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/report_output.rs (/opt/rustwide/target/debug/deps/report_output-a112901ed79c3d66)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test a_home_with_no_log_reports_no_activity ... ok
[INFO] [stdout] test a_quiet_session_raises_none_of_those_sections ... ok
[INFO] [stdout] test the_terminal_report_renders_the_same_facts_in_its_own_shape ... ok
[INFO] [stdout] test the_risk_label_is_coloured_by_its_own_severity ... ok
[INFO] [stdout] test the_markdown_report_carries_the_counts_and_the_risk_formula ... ok
[INFO] [stdout] test repeated_blocked_attempts_raise_every_section_they_feed ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea", kill_on_drop: false }`
[INFO] [stdout] 9493785cab7b2786d249df829378d32a07aad7a56f181f622b5817dd7f2301ea
