[INFO] fetching crate sysknife-brain 0.25.0...
[INFO] testing sysknife-brain-0.25.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate sysknife-brain 0.25.0 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate sysknife-brain 0.25.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate sysknife-brain 0.25.0
[INFO] tweaked toml for crates.io crate sysknife-brain 0.25.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate sysknife-brain 0.25.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate sysknife-brain 0.25.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.100.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-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43
[INFO] running `Command { std: "docker" "start" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43", 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" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43", 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" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling syn v3.0.2
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling futures-sink v0.3.34
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling zerofrom v0.1.7
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling futures-channel v0.3.34
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling futures-io v0.3.34
[INFO] [stderr]    Compiling futures-task v0.3.34
[INFO] [stderr]    Compiling aws-lc-rs v1.18.1
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling http v1.5.0
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling aws-lc-sys v0.45.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling prost-derive v0.14.4
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling prost v0.14.4
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling futures-util v0.3.34
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling h2 v0.4.16
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling fixedbitset v0.5.7
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling petgraph v0.8.3
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling prost-types v0.14.4
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling thiserror v2.0.21
[INFO] [stderr]    Compiling protoc-bin-vendored-win32 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-macos-aarch_64 v3.2.0
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-x86_32 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-ppcle_64 v3.2.0
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling winnow v1.0.2
[INFO] [stderr]    Compiling protoc-bin-vendored-macos-x86_64 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-x86_64 v3.2.0
[INFO] [stderr]    Compiling multimap v0.10.1
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-s390_64 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-aarch_64 v3.2.0
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling protoc-bin-vendored v3.2.0
[INFO] [stderr]    Compiling prost-build v0.14.4
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling futures-executor v0.3.34
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling hybrid-array v0.4.11
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.21
[INFO] [stderr]    Compiling iri-string v0.7.12
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling toml_edit v0.25.11+spec-1.1.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling sysknife-proto v0.25.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling futures v0.3.34
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling pin-project v1.1.11
[INFO] [stderr]    Compiling eventsource-stream v0.2.3
[INFO] [stderr]    Compiling convert_case v0.11.0
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling crypto-common v0.2.1
[INFO] [stderr]    Compiling block-buffer v0.12.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling toml_writer v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling tinyvec v1.11.0
[INFO] [stderr]    Compiling toml v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling digest v0.11.2
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling ordered-float v5.3.0
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling tracing-futures v0.2.5
[INFO] [stderr]    Compiling secrecy v0.10.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling async-openai-macros v0.3.0
[INFO] [stderr]    Compiling as-any v0.3.2
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling sysknife-core v0.25.0
[INFO] [stderr]    Compiling rig-derive v0.40.0
[INFO] [stderr]    Compiling sysknife-types v0.25.0
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling async-openai v0.42.0
[INFO] [stderr]    Compiling rig-core v0.40.0
[INFO] [stderr]    Compiling sysknife-brain v0.25.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 58s
[INFO] running `Command { std: "docker" "inspect" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43", 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" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling h2 v0.4.16
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling rig-core v0.40.0
[INFO] [stderr]    Compiling async-openai v0.42.0
[INFO] [stderr]    Compiling sysknife-brain v0.25.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 28s
[INFO] running `Command { std: "docker" "inspect" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43", 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" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.48s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/sysknife-brain/e08aaf2551a8e012/out/sysknife_brain-e08aaf2551a8e012)
[INFO] [stdout] 
[INFO] [stdout] running 263 tests
[INFO] [stdout] test action_name::tests::known_action_parses ... ok
[INFO] [stdout] test action_name::tests::every_known_action_is_in_types_list ... ok
[INFO] [stdout] test audit::tests::default_path_respects_xdg_data_home ... ok
[INFO] [stdout] test action_name::tests::all_known_actions_parse ... ok
[INFO] [stdout] test action_name::tests::unknown_action_rejected ... ok
[INFO] [stdout] test action_name::tests::display_shows_name ... ok
[INFO] [stdout] test audit::tests::log_rejection_creates_file_and_writes_json_line ... ok
[INFO] [stdout] test audit::tests::creates_parent_directories ... ok
[INFO] [stdout] test cassette::tests::a_cassette_path_without_a_mode_is_refused ... ok
[INFO] [stdout] test audit::tests::multiple_rejections_append_to_same_file ... ok
[INFO] [stdout] test cassette::miss_diagnosis_tests::an_unrecorded_intent_is_not_reported_as_a_mid_run_divergence ... ok
[INFO] [stdout] test cassette::miss_diagnosis_tests::a_miss_caused_by_a_changed_prompt_is_not_blamed_on_a_message ... ok
[INFO] [stdout] test cassette::tests::a_recorded_cassette_is_group_and_world_readable ... ok
[INFO] [stdout] test cassette::tests::a_cassette_from_an_older_format_still_replays ... ok
[INFO] [stdout] test cassette::tests::a_cassette_recorded_on_one_model_does_not_answer_for_another ... ok
[INFO] [stdout] test cassette::tests::a_changed_system_prompt_misses_and_says_so ... ok
[INFO] [stdout] test cassette::miss_diagnosis_tests::a_miss_caused_by_a_later_turn_names_the_diverging_message ... ok
[INFO] [stdout] test cassette::tests::an_unknown_mode_is_refused ... ok
[INFO] [stdout] test cassette::tests::a_rejected_request_is_recorded_and_replayed_as_the_same_rejection ... ok
[INFO] [stdout] test cassette::tests::an_unknown_cassette_version_is_refused ... ok
[INFO] [stdout] test cassette::tests::no_cassette_is_configured_by_default ... ok
[INFO] [stdout] test cassette::tests::a_transient_failure_is_not_recorded ... ok
[INFO] [stdout] test cassette::tests::record_dedups_identical_calls ... ok
[INFO] [stdout] test cassette::tests::record_calls_through_and_persists ... ok
[INFO] [stdout] test cassette::tests::replaying_a_recorded_rejection_counts_as_a_hit_not_a_miss ... ok
[INFO] [stdout] test cassette::tests::the_ledger_records_hits_and_misses_for_the_harness ... ok
[INFO] [stdout] test cassette::tests::the_recorder_keeps_exactly_what_the_retry_corrects ... ok
[INFO] [stdout] test cassette::tests::record_resumes_an_existing_cassette_instead_of_clobbering ... ok
[INFO] [stdout] test config::tests::a_key_backed_autodetect_is_not_a_guess_worth_warning_about ... ok
[INFO] [stdout] test cassette::tests::replay_answers_without_calling_through ... ok
[INFO] [stdout] test cassette::tests::replay_refuses_to_start_when_it_cannot_write_its_ledger ... ok
[INFO] [stdout] test cassette::tests::replaying_a_missing_cassette_fails_at_open ... ok
[INFO] [stdout] test cassette::tests::writing_to_a_v1_cassette_restamps_it_as_v2 ... ok
[INFO] [stdout] test cassette::tests::replay_miss_is_an_error ... ok
[INFO] [stdout] test config::tests::a_keyless_environment_records_that_ollama_was_only_a_guess ... ok
[INFO] [stdout] test config::tests::an_explicitly_chosen_provider_is_never_reported_as_a_guess ... ok
[INFO] [stdout] test cassette::tests::tools_and_max_tokens_participate_in_the_key ... ok
[INFO] [stdout] test config::tests::from_env_auto_detects_anthropic_when_api_key_present ... ok
[INFO] [stdout] test config::tests::from_env_empty_api_key_returns_missing_key ... ok
[INFO] [stdout] test config::tests::from_env_max_turns_non_numeric_returns_error ... ok
[INFO] [stdout] test config::tests::from_env_max_turns_valid_override ... ok
[INFO] [stdout] test config::tests::from_env_model_override_is_applied ... ok
[INFO] [stdout] test config::tests::from_env_ollama_url_override_is_applied ... ok
[INFO] [stdout] test config::tests::debug_redacts_api_key ... ok
[INFO] [stdout] test config::tests::invalid_max_turns_error_message_includes_value ... ok
[INFO] [stdout] test config::tests::from_env_anthropic_url_override_is_applied ... ok
[INFO] [stdout] test config::tests::from_env_ollama_explicit_builds_config ... ok
[INFO] [stdout] test config::tests::from_env_whitespace_api_key_does_not_auto_detect_anthropic ... ok
[INFO] [stdout] test config::tests::invalid_max_turns_error_message_includes_non_numeric ... ok
[INFO] [stdout] test config::tests::ollama_defaults_is_valid ... ok
[INFO] [stdout] test config::tests::from_env_max_turns_zero_returns_error ... ok
[INFO] [stdout] test journal::tests::send_is_noop_when_journal_socket_absent ... ok
[INFO] [stdout] test planner::tests::into_authorized_replaces_every_step_risk ... ok
[INFO] [stdout] test planner::tests::resolve_think_auto_detects_non_thinking_models ... ok
[INFO] [stdout] test planner::tests::resolve_think_auto_detects_qwen3 ... ok
[INFO] [stdout] test journal::tests::send_handles_multiline_value_without_panic ... ok
[INFO] [stdout] test config::tests::unknown_provider_returns_error ... ok
[INFO] [stdout] test planning_tools::preferences::tests::forget_tool_has_fact_param ... ok
[INFO] [stdout] test planning_tools::preferences::tests::remember_tool_has_fact_param ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::all_planner_available_actions_are_accepted ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::an_unrecognised_family_is_offered_no_family_specific_action ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::credential_actions_are_neither_offered_nor_accepted ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::debian_tool_def_omits_fedora_only_actions ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::debian_host_does_not_inherit_ubuntu_tools_or_preferences ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::debian_tool_def_withholds_non_canonical_actions_without_fencing_them ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::empty_explanation_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::empty_steps_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::every_catalogued_credential_param_requires_a_separate_entry_channel ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::every_offered_action_is_described_in_the_catalogue ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::fedora_tool_def_omits_debian_only_actions ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::high_risk_requires_approval ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::list_job_history_is_accepted ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::invalid_risk_level_strings_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::missing_explanation_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::medium_risk_requires_approval ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::missing_summary_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::params_passthrough ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::open_wifi_is_offered_and_accepted_without_a_password ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::params_string_invalid_json_is_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::step_missing_risk_level_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::params_string_empty_normalises_to_object ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::steps_not_an_array_is_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::unknown_action_name_is_rejected ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::unknown_family_tool_def_offers_every_action_without_credential_entry ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::ubuntu_only_descriptions_match_execution_fence ... ok
[INFO] [stdout] test planning_tools::propose_plan::tests::valid_low_risk_plan_parses ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::known_query_tools_map_to_actions ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::new_parameterless_query_tools_map_to_actions ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::parameterized_query_tools_return_error_when_required_param_missing ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::query_authorized_keys_maps_to_get_authorized_keys ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::parameterized_query_tools_forward_input ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::query_job_history_maps_to_list_job_history ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::query_authorized_keys_missing_username_returns_error ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::query_job_history_with_all_filters ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::query_job_history_with_no_filters ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::query_tools_returns_twenty_four_definitions ... ok
[INFO] [stdout] test planning_tools::query_tools::tests::unknown_query_tool_returns_ok_none ... ok
[INFO] [stdout] test planning_tools::refuse::tests::a_refusal_without_a_reason_is_rejected ... ok
[INFO] [stdout] test planning_tools::refuse::tests::a_refusal_carries_its_reason ... ok
[INFO] [stdout] test planning_tools::refuse::tests::the_reason_is_normalised_like_other_untrusted_text ... ok
[INFO] [stdout] test planning_tools::refuse::tests::the_suggestion_is_optional ... ok
[INFO] [stdout] test prefs::tests::a_unicode_line_separator_cannot_smuggle_a_second_line_into_the_prompt ... ok
[INFO] [stdout] test prefs::tests::an_intent_the_fence_will_refuse_is_not_loggable_verbatim ... ok
[INFO] [stdout] test prefs::tests::a_saved_preference_is_normalised_like_any_other_untrusted_text ... ok
[INFO] [stdout] test prefs::tests::an_ordinary_intent_is_logged_verbatim ... ok
[INFO] [stdout] test prefs::tests::append_pref_appends_to_existing_file ... ok
[INFO] [stdout] test prefs::tests::append_pref_creates_file_and_writes_entry ... ok
[INFO] [stdout] test prefs::tests::append_pref_deduplicates ... ok
[INFO] [stdout] test prefs::tests::append_pref_rejects_newlines ... ok
[INFO] [stdout] test prefs::tests::append_pref_rejects_carriage_returns ... ok
[INFO] [stdout] test prefs::tests::append_pref_rejects_when_file_exceeds_size_limit ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_allows_normal_preferences ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_allows_phrases_with_dot_s_substrings ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_detects_jwt_tokens ... ok
[INFO] [stdout] test prefs::tests::append_pref_rejects_when_combined_size_exceeds_limit ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_detects_new_patterns ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_detects_key_prefixes ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_detects_password ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_detects_uppercase_prefix_variants ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_detects_vault_tokens ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_prefix_case_insensitive ... ok
[INFO] [stdout] test prefs::tests::hand_edited_tagged_preference_can_be_deduplicated_and_forgotten ... ok
[INFO] [stdout] test prefs::tests::contains_sensitive_detects_npm_and_pypi_tokens ... ok
[INFO] [stdout] test prefs::tests::read_prefs_normalises_manually_edited_envelope_tags ... ok
[INFO] [stdout] test prefs::tests::read_prefs_returns_none_for_whitespace_only_file ... ok
[INFO] [stdout] test prefs::tests::read_prefs_preserves_content_up_to_the_preferences_limit ... ok
[INFO] [stdout] test prefs::tests::read_prefs_returns_none_when_file_empty ... ok
[INFO] [stdout] test prefs::tests::read_prefs_returns_none_when_file_absent ... ok
[INFO] [stdout] test prefs::tests::remembered_tagged_preference_can_be_forgotten_as_read ... ok
[INFO] [stdout] test prefs::tests::remembered_preference_cannot_close_the_prompt_envelope ... ok
[INFO] [stdout] test prefs::tests::remove_pref_last_entry_leaves_empty_file_and_read_prefs_returns_none ... ok
[INFO] [stdout] test prefs::tests::remove_pref_returns_false_when_file_absent ... ok
[INFO] [stdout] test prefs::tests::remove_pref_returns_false_when_not_found ... ok
[INFO] [stdout] test prompt::tests::debian_prompt_does_not_inherit_ubuntu_examples ... ok
[INFO] [stdout] test prompt::tests::debian_prompt_maps_permission_language_to_unhold ... ok
[INFO] [stdout] test prefs::tests::remove_pref_removes_matching_line ... ok
[INFO] [stdout] test prompt::tests::debian_prompt_names_no_non_canonical_action ... ok
[INFO] [stdout] test prompt::tests::debian_prompt_omits_fedora_actions ... ok
[INFO] [stdout] test prompt::tests::debian_prompt_names_no_fedora_only_action ... ok
[INFO] [stdout] test prompt::tests::debian_prompt_states_firewall_input_requirements ... ok
[INFO] [stdout] test prompt::tests::distro_version_cannot_open_a_second_user_preferences_envelope ... ok
[INFO] [stdout] test prompt::tests::each_family_prompt_names_its_own_state_action ... ok
[INFO] [stdout] test prompt::tests::generic_prompt_has_no_distro_specific_actions ... ok
[INFO] [stdout] test prompt::tests::no_rendered_prompt_leaks_an_unsubstituted_placeholder ... ok
[INFO] [stdout] test prompt::tests::fedora_prompt_omits_debian_actions ... ok
[INFO] [stdout] test prompt::tests::resolvectl_actions_appear_in_both_fedora_and_debian_prompts ... ok
[INFO] [stdout] test prompt::tests::planner_prompt_does_not_advertise_credential_actions ... ok
[INFO] [stdout] test prompt::tests::system_prompt_contains_example_c ... ok
[INFO] [stdout] test prompt::tests::shared_examples_demonstrate_only_cross_distro_actions ... ok
[INFO] [stdout] test prompt::tests::system_prompt_contains_example_e ... ok
[INFO] [stdout] test prompt::tests::system_prompt_contains_example_d ... ok
[INFO] [stdout] test prompt::tests::system_prompt_documents_remember_and_forget_tools ... ok
[INFO] [stdout] test prompt::tests::system_prompt_strips_markdown_headers_from_prefs ... ok
[INFO] [stdout] test prompt::tests::system_prompt_without_prefs_does_not_contain_preferences_section ... ok
[INFO] [stdout] test prompt::tests::system_prompt_with_prefs_contains_preferences_section ... ok
[INFO] [stdout] test provider::retryability_tests::a_cassette_miss_is_never_retryable ... ok
[INFO] [stdout] test provider::retryability_tests::a_client_error_is_not_retryable ... ok
[INFO] [stdout] test provider::retryability_tests::transient_failures_are_retryable ... ok
[INFO] [stdout] test providers::openai_adapter::tests::assistant_mixed_text_and_tool_use_sets_both_fields ... ok
[INFO] [stdout] test providers::openai_adapter::tests::assistant_text_becomes_assistant_message_with_content ... ok
[INFO] [stdout] test providers::openai_adapter::tests::assistant_tool_use_becomes_assistant_message_with_tool_calls ... ok
[INFO] [stdout] test provider::retryability_tests::auth_failure_is_not_retryable ... ok
[INFO] [stdout] test providers::openai_adapter::tests::auth_error_message_does_not_propagate_raw_sdk_error ... ok
[INFO] [stdout] test planner::tests::configured_planner_attaches_audit_log ... ok
[INFO] [stdout] test providers::openai_adapter::tests::content_filter_returns_provider_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::auth_error_classification ... ok
[INFO] [stdout] test providers::openai_adapter::tests::empty_assistant_message_returns_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::empty_content_and_no_tool_calls_returns_parse_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::finish_reason_length_maps_to_max_tokens ... ok
[INFO] [stdout] test providers::openai_adapter::tests::finish_reason_none_maps_to_end_turn ... ok
[INFO] [stdout] test providers::openai_adapter::tests::finish_reason_tool_calls_maps_to_stop_reason_tool_use ... ok
[INFO] [stdout] test providers::openai_adapter::tests::empty_choices_returns_parse_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::empty_tools_returns_empty_vec ... ok
[INFO] [stdout] test providers::openai_adapter::tests::malformed_tool_call_arguments_returns_parse_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::map_openai_error_classifies_401_as_auth_via_real_api_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::map_openai_error_classifies_403_as_auth_via_real_api_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::map_openai_error_classifies_429_as_rate_limit_via_real_api_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::map_openai_error_falls_back_to_substring_for_non_api_error_variant ... ok
[INFO] [stdout] test providers::openai_adapter::tests::system_prompt_is_first_message ... ok
[INFO] [stdout] test providers::openai_adapter::tests::text_only_response_maps_to_end_turn ... ok
[INFO] [stdout] test providers::openai_adapter::tests::map_openai_error_classifies_other_4xx_as_request_via_real_api_error ... ok
[INFO] [stdout] test providers::openai_adapter::tests::tool_definitions_converted_correctly ... ok
[INFO] [stdout] test providers::openai_adapter::tests::tool_results_become_tool_messages_one_per_result ... ok
[INFO] [stdout] test providers::openai_adapter::tests::tool_use_id_is_preserved_in_tool_call ... ok
[INFO] [stdout] test providers::rig_adapter::tests::auth_error_message_is_fixed_and_does_not_leak_provider_text ... ok
[INFO] [stdout] test providers::openai_adapter::tests::user_text_becomes_user_message ... ok
[INFO] [stdout] test providers::rig_adapter::tests::from_rig_response_empty_text_only_returns_parse_error ... ok
[INFO] [stdout] test providers::rig_adapter::tests::from_rig_response_tool_call_returns_tool_use ... ok
[INFO] [stdout] test providers::rig_adapter::tests::from_rig_response_mixed_content ... ok
[INFO] [stdout] test providers::rig_adapter::tests::from_rig_response_text_only_returns_end_turn ... ok
[INFO] [stdout] test providers::rig_adapter::tests::map_rig_error_classifies_403_as_auth ... ok
[INFO] [stdout] test providers::rig_adapter::tests::map_rig_error_classifies_429_as_rate_limit ... ok
[INFO] [stdout] test providers::rig_adapter::tests::map_rig_error_classifies_401_as_auth ... ok
[INFO] [stdout] test providers::rig_adapter::tests::map_rig_error_classifies_other_4xx_as_request ... ok
[INFO] [stdout] test providers::rig_adapter::tests::map_rig_error_does_not_misclassify_generate_as_rate_limit ... ok
[INFO] [stdout] test providers::rig_adapter::tests::map_rig_error_falls_back_to_substring_when_no_structured_status ... ok
[INFO] [stdout] test providers::rig_adapter::tests::to_rig_messages_assistant_tool_use_with_explicit_call_id ... ok
[INFO] [stdout] test providers::rig_adapter::tests::to_rig_messages_converts_tool_results ... ok
[INFO] [stdout] test providers::rig_adapter::tests::to_rig_messages_includes_system_prompt ... ok
[INFO] [stdout] test providers::rig_adapter::tests::to_rig_messages_tool_result_with_explicit_call_id ... ok
[INFO] [stdout] test providers::rig_adapter::tests::to_rig_messages_converts_assistant_tool_use ... ok
[INFO] [stdout] test providers::rig_adapter::tests::to_rig_messages_converts_user_text ... ok
[INFO] [stdout] test providers::rig_adapter::tests::to_rig_tools_converts_definitions ... ok
[INFO] [stdout] test providers::tests::a_401_and_a_403_are_not_the_same_diagnosis ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_no_bearer_or_api_key_unchanged ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_no_key_unchanged ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_ampersand_api_key_param ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_bearer_is_case_insensitive ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_all_occurrences ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_ampersand_key_param ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_bearer_token ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_api_key_param ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_key_param ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_x_api_key_header ... ok
[INFO] [stdout] test providers::tests::sanitize_error_msg_strips_x_api_key_header_with_equals_separator ... ok
[INFO] [stdout] test rate_limit::tests::absent_file_treated_as_empty ... ok
[INFO] [stdout] test rate_limit::tests::calls_up_to_limit_all_succeed ... ok
[INFO] [stdout] test rate_limit::tests::env_var_overrides_constructor_limit ... ok
[INFO] [stdout] test rate_limit::tests::call_over_limit_returns_error ... ok
[INFO] [stdout] test rate_limit::tests::expired_timestamps_do_not_count ... ok
[INFO] [stdout] test rate_limit::tests::in_window_timestamps_count_toward_limit ... ok
[INFO] [stdout] test rate_limit::tests::first_call_succeeds ... ok
[INFO] [stdout] test rate_limit::tests::new_creates_missing_parent_directory_and_timestamps_persist ... ok
[INFO] [stdout] test rate_limit::tests::retry_after_is_at_least_one ... ok
[INFO] [stdout] test rate_limit::tests::invalid_env_var_falls_back_to_constructor ... ok
[INFO] [stdout] test sanitize::tests::additional_invisible_format_chars_are_stripped ... ok
[INFO] [stdout] test sanitize::tests::ansi_carrier_injection_is_stripped ... ok
[INFO] [stdout] test sanitize::tests::ansi_csi_sequences_are_stripped ... ok
[INFO] [stdout] test rate_limit::tests::zero_env_var_falls_back_to_constructor ... ok
[INFO] [stdout] test sanitize::tests::bidi_overrides_are_stripped ... ok
[INFO] [stdout] test sanitize::tests::ansi_osc_sequences_are_stripped ... ok
[INFO] [stdout] test sanitize::tests::c0_controls_dropped_but_tab_newline_cr_kept ... ok
[INFO] [stdout] test sanitize::tests::closing_envelope_tags_with_whitespace_are_neutralised ... ok
[INFO] [stdout] test sanitize::tests::empty_input_still_produces_well_formed_envelope ... ok
[INFO] [stdout] test sanitize::tests::empty_tool_name_yields_unknown_source ... ok
[INFO] [stdout] test sanitize::tests::envelope_wraps_with_tool_name ... ok
[INFO] [stdout] test sanitize::tests::into_inner_returns_full_envelope ... ok
[INFO] [stdout] test sanitize::tests::lone_escape_byte_is_dropped ... ok
[INFO] [stdout] test sanitize::tests::malicious_tool_name_cannot_break_envelope ... ok
[INFO] [stdout] test sanitize::tests::nested_envelope_attempt_does_not_terminate_real_envelope ... ok
[INFO] [stdout] test sanitize::tests::opening_tag_inside_body_is_also_neutralised ... ok
[INFO] [stdout] test planner::tests::replay_installs_no_rate_limiter_because_nothing_is_sent ... ok
[INFO] [stdout] test planner::tests::resolve_think_unparseable_env_falls_back_to_auto ... ok
[INFO] [stdout] test sanitize::tests::preference_envelope_tags_are_neutralised ... ok
[INFO] [stdout] test sanitize::tests::preferences_normalisation_is_idempotent ... ok
[INFO] [stdout] test sanitize::tests::private_use_area_is_stripped ... ok
[INFO] [stdout] test sanitize::tests::three_or_more_consecutive_newlines_collapsed_to_two ... ok
[INFO] [stdout] test planner::tests::resolve_think_env_override_true_wins_over_non_thinking_model ... ok
[INFO] [stdout] test sanitize::tests::preference_normalisation_keeps_security_pipeline_without_truncation ... ok
[INFO] [stdout] test sanitize::tests::truncation_respects_char_boundaries ... ok
[INFO] [stdout] test sanitize::tests::two_consecutive_newlines_preserved ... ok
[INFO] [stdout] test sanitize::tests::unicode_tag_block_is_stripped ... ok
[INFO] [stdout] test sanitize::tests::unicode_tag_smuggling_is_stripped ... ok
[INFO] [stdout] test sanitize::tests::zero_width_and_visual_line_separator_chars_are_stripped ... ok
[INFO] [stdout] test state_client::tests::current_user_can_be_overridden_in_test_double ... ok
[INFO] [stdout] test sanitize::tests::output_under_cap_is_unchanged ... ok
[INFO] [stdout] test sanitize::tests::typical_systemctl_show_description_with_injection_envelope_intact ... ok
[INFO] [stdout] test planner::tests::resolve_think_env_override_case_insensitive ... ok
[INFO] [stdout] test planner::tests::resolve_think_env_override_false_wins_over_thinking_model ... ok
[INFO] [stdout] test sanitize::tests::truncation_respects_4_byte_chars_at_every_boundary ... ok
[INFO] [stdout] test sanitize::tests::output_over_cap_is_truncated_with_marker ... ok
[INFO] [stdout] test rate_limit::tests::zero_max_per_minute_panics - should panic ... ok
[INFO] [stdout] test state_client::tests::current_user_returns_non_empty_string_in_normal_env ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- state_client::tests::current_user_returns_non_empty_string_in_normal_env stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'state_client::tests::current_user_returns_non_empty_string_in_normal_env' (3827) panicked at src/state_client.rs:188:9:
[INFO] [stdout] expected Ok, got Err(StateUnavailable("cannot determine current user: USER and LOGNAME env vars are unset"))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5bdf6b2b4111 - std[617be2ca0a6fd877]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5bdf6b2b4111 - std[617be2ca0a6fd877]::backtrace_rs::backtrace::trace_unsynchronized::<std[617be2ca0a6fd877]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5bdf6b2b4111 - std[617be2ca0a6fd877]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5bdf6b2b4111 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5bdf6b2cb58a - <core[a373ad73a504971]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5bdf6b2cb58a - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    6:     0x5bdf6b2b8e9c - core[a373ad73a504971]::io::write::default_write_fmt::<alloc[2e1b2a31b91974c5]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/io/write.rs:402:11
[INFO] [stdout]    7:     0x5bdf6b2b8e9c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/io/write.rs:335:13
[INFO] [stdout]    8:     0x5bdf6b28c9a6 - <std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5bdf6b28c9a6 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:289:27
[INFO] [stdout]   10:     0x5bdf6b2aab29 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:313:9
[INFO] [stdout]   11:     0x5bdf6a7e7b20 - <alloc[2e1b2a31b91974c5]::boxed::Box<dyn for<'a, 'b> core[a373ad73a504971]::ops::function::Fn<(&'a std[617be2ca0a6fd877]::panic::PanicHookInfo<'b>,), Output = ()> + core[a373ad73a504971]::marker::Sync + core[a373ad73a504971]::marker::Send> as core[a373ad73a504971]::ops::function::Fn<(&std[617be2ca0a6fd877]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/alloc/src/boxed.rs:2328:9
[INFO] [stdout]   12:     0x5bdf6a7e7b20 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/test/src/lib.rs:137:21
[INFO] [stdout]   13:     0x5bdf6b2aae52 - <alloc[2e1b2a31b91974c5]::boxed::Box<dyn for<'a, 'b> core[a373ad73a504971]::ops::function::Fn<(&'a std[617be2ca0a6fd877]::panic::PanicHookInfo<'b>,), Output = ()> + core[a373ad73a504971]::marker::Sync + core[a373ad73a504971]::marker::Send> as core[a373ad73a504971]::ops::function::Fn<(&std[617be2ca0a6fd877]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/alloc/src/boxed.rs:2328:9
[INFO] [stdout]   14:     0x5bdf6b2aae52 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:819:13
[INFO] [stdout]   15:     0x5bdf6b28ca52 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:685:13
[INFO] [stdout]   16:     0x5bdf6b285139 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5bdf6b28dc1d - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:676:5
[INFO] [stdout]   18:     0x5bdf6b2cbdac - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5bdf6a579815 - sysknife_brain[a54da0b317063e61]::state_client::tests::current_user_returns_non_empty_string_in_normal_env
[INFO] [stdout]                                at /opt/rustwide/workdir/src/state_client.rs:188:9
[INFO] [stdout]   20:     0x5bdf6a561b87 - sysknife_brain[a54da0b317063e61]::state_client::tests::current_user_returns_non_empty_string_in_normal_env::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/state_client.rs:184:61
[INFO] [stdout]   21:     0x5bdf6a6d8806 - <sysknife_brain[a54da0b317063e61]::state_client::tests::current_user_returns_non_empty_string_in_normal_env::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5bdf6a7daf6b - <fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String> as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5bdf6a7daf6b - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/test/src/lib.rs:701:18
[INFO] [stdout]   24:     0x5bdf6a7e8145 - test[aada8e7e76ba119b]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/test/src/lib.rs:724:74
[INFO] [stdout]   25:     0x5bdf6a7e8145 - <core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<test[aada8e7e76ba119b]::run_test_in_process::{closure#0}> as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x5bdf6a7e8145 - std[617be2ca0a6fd877]::panicking::catch_unwind::do_call::<core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<test[aada8e7e76ba119b]::run_test_in_process::{closure#0}>, core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:573:43
[INFO] [stdout]   27:     0x5bdf6a7e8145 - std[617be2ca0a6fd877]::panicking::catch_unwind::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<test[aada8e7e76ba119b]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:541:19
[INFO] [stdout]   28:     0x5bdf6a7e8145 - std[617be2ca0a6fd877]::panic::catch_unwind::<core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<test[aada8e7e76ba119b]::run_test_in_process::{closure#0}>, core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5bdf6a7e8145 - test[aada8e7e76ba119b]::run_test_in_process
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/test/src/lib.rs:724:27
[INFO] [stdout]   30:     0x5bdf6a7e8145 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/test/src/lib.rs:645:43
[INFO] [stdout]   31:     0x5bdf6a7e1a34 - test[aada8e7e76ba119b]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/test/src/lib.rs:675:41
[INFO] [stdout]   32:     0x5bdf6a7e1a34 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5bdf6a7eb1d2 - std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x5bdf6a7eb1d2 - <core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x5bdf6a7eb1d2 - std[617be2ca0a6fd877]::panicking::catch_unwind::do_call::<core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:573:43
[INFO] [stdout]   36:     0x5bdf6a7eb1d2 - std[617be2ca0a6fd877]::panicking::catch_unwind::<(), core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panicking.rs:541:19
[INFO] [stdout]   37:     0x5bdf6a7eb1d2 - std[617be2ca0a6fd877]::panic::catch_unwind::<core[a373ad73a504971]::panic::unwind_safe::AssertUnwindSafe<std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5bdf6a7eb1d2 - std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x5bdf6a7eb1d2 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5bdf6b2b307f - <alloc[2e1b2a31b91974c5]::boxed::Box<dyn core[a373ad73a504971]::ops::function::FnOnce<(), Output = ()> + core[a373ad73a504971]::marker::Send> as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/alloc/src/boxed.rs:2314:9
[INFO] [stdout]   41:     0x5bdf6b2b307f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   42:     0x77ed2ee45dfa - <unknown>
[INFO] [stdout]   43:     0x77ed2eed93d4 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     state_client::tests::current_user_returns_non_empty_string_in_normal_env
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 262 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.52s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43", kill_on_drop: false }`
[INFO] [stdout] 3570054bc5afce14127c5f3f19c0fc0b1eff7a5b27f724ba7f1228590ddd9a43
