[INFO] fetching crate roboticus-core 0.11.4...
[INFO] testing roboticus-core-0.11.4 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate roboticus-core 0.11.4 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate roboticus-core 0.11.4
[INFO] finished tweaking crates.io crate roboticus-core 0.11.4
[INFO] tweaked toml for crates.io crate roboticus-core 0.11.4 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate roboticus-core 0.11.4 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 roboticus-core 0.11.4 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-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be
[INFO] running `Command { std: "docker" "start" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be", 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" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be" "/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" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be", 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" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling roboticus-core v0.11.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 03s
[INFO] running `Command { std: "docker" "inspect" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be", 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" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling roboticus-core v0.11.4 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling proptest v1.11.0
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 47s
[INFO] running `Command { std: "docker" "inspect" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be", 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" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.20s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/roboticus-core/6d7ddb0a89f30f67/out/roboticus_core-6d7ddb0a89f30f67)
[INFO] [stdout] 
[INFO] [stdout] running 360 tests
[INFO] [stdout] test config::context_budget_tests::context_budget_validates_and_clamps ... ok
[INFO] [stdout] test config::profile_tests::default_registry_has_active_default_profile ... ok
[INFO] [stdout] test config::profile_tests::list_returns_all_profiles_sorted ... ok
[INFO] [stdout] test config::profile_tests::active_profile_returns_none_when_no_active ... ok
[INFO] [stdout] test config::profile_tests::empty_path_profile_resolves_to_root ... ok
[INFO] [stdout] test config::profile_tests::resolve_config_dir_default_returns_roboticus_root ... ok
[INFO] [stdout] test config::context_budget_tests::context_budget_validate_preserves_valid_values ... ok
[INFO] [stdout] test config::profile_tests::resolve_config_dir_unknown_profile_errors ... ok
[INFO] [stdout] test config::context_budget_tests::soul_token_cap_safe_with_zero_budget ... ok
[INFO] [stdout] test config::profile_tests::resolve_config_dir_custom_profile_appends_path ... ok
[INFO] [stdout] test config::profile_tests::save_and_load_roundtrip ... ok
[INFO] [stdout] test config::memory_config_tests::memory_config_tuning_defaults ... ok
[INFO] [stdout] test config::profile_tests::ensure_profile_dir_creates_subdirs ... ok
[INFO] [stdout] test config::tests::a2a_config_default ... ok
[INFO] [stdout] test config::tests::approvals_config_default ... ok
[INFO] [stdout] test config::tests::autonomy_budget_validation_fail ... ok
[INFO] [stdout] test config::tests::browser_config_default ... ok
[INFO] [stdout] test config::tests::channels_config_default ... ok
[INFO] [stdout] test config::memory_config_tests::memory_config_tuning_deserializes ... ok
[INFO] [stdout] test config::tests::composition_policy_deserializes_from_toml ... ok
[INFO] [stdout] test config::tests::bundled_providers_merged_on_minimal_config ... ok
[INFO] [stdout] test config::tests::bundled_providers_toml_is_valid ... ok
[INFO] [stdout] test config::tests::cache_config_default ... ok
[INFO] [stdout] test config::tests::circuit_breaker_config_default ... ok
[INFO] [stdout] test config::tests::composition_default_function_values ... ok
[INFO] [stdout] test config::tests::composition_policy_default_is_propose ... ok
[INFO] [stdout] test config::tests::config_from_missing_file ... ok
[INFO] [stdout] test config::tests::context_checkpoint_config_defaults ... ok
[INFO] [stdout] test config::tests::daemon_config_default ... ok
[INFO] [stdout] test config::tests::database_config_default ... ok
[INFO] [stdout] test config::tests::default_path_functions_return_valid_paths ... ok
[INFO] [stdout] test config::tests::default_interpreters_contains_bash ... ok
[INFO] [stdout] test config::tests::copy_dir_recursive_copies_nested_structure ... ok
[INFO] [stdout] test config::tests::defaults_applied ... ok
[INFO] [stdout] test config::tests::expand_tilde_no_tilde ... ok
[INFO] [stdout] test config::tests::device_config_default ... ok
[INFO] [stdout] test config::tests::digest_config_defaults ... ok
[INFO] [stdout] test config::tests::dirs_next_appends_roboticus ... ok
[INFO] [stdout] test config::tests::discovery_config_default ... ok
[INFO] [stdout] test config::tests::email_config_default ... ok
[INFO] [stdout] test config::tests::expand_tilde_with_tilde ... ok
[INFO] [stdout] test config::tests::default_functions_return_expected_values ... ok
[INFO] [stdout] test config::tests::mcp_config_default ... ok
[INFO] [stdout] test config::tests::ironclad_config_env_fallback ... ok
[INFO] [stdout] test config::tests::learning_config_defaults ... ok
[INFO] [stdout] test config::tests::home_dir_returns_valid_path ... ok
[INFO] [stdout] test config::tests::mcp_config_legacy_clients_still_deserializes ... ok
[INFO] [stdout] test config::tests::full_config_roundtrip ... ok
[INFO] [stdout] test config::tests::heartbeat_config_defaults ... ok
[INFO] [stdout] test config::tests::knowledge_config_default ... ok
[INFO] [stdout] test config::tests::mcp_config_servers_field_deserializes ... ok
[INFO] [stdout] test config::tests::mcp_server_config_sse_deserializes ... ok
[INFO] [stdout] test config::tests::mcp_transport_default_is_stdio ... ok
[INFO] [stdout] test config::tests::mcp_server_config_stdio_deserializes ... ok
[INFO] [stdout] test config::tests::memory_config_default ... ok
[INFO] [stdout] test config::tests::migrate_removed_legacy_config_rewrites_removed_fields ... ok
[INFO] [stdout] test config::tests::multimodal_config_defaults ... ok
[INFO] [stdout] test config::tests::memory_budget_validation_fail ... ok
[INFO] [stdout] test config::tests::migration_sentinel_retry ... ok
[INFO] [stdout] test config::tests::merge_bundled_providers_skips_disabled ... ok
[INFO] [stdout] test config::tests::model_overrides_in_config ... ok
[INFO] [stdout] test config::tests::parse_minimal_config ... ok
[INFO] [stdout] test config::tests::personality_config_default ... ok
[INFO] [stdout] test config::tests::plugins_config_default ... ok
[INFO] [stdout] test config::tests::provider_config_new ... ok
[INFO] [stdout] test config::tests::new_config_defaults ... ok
[INFO] [stdout] test config::tests::obsidian_config_defaults ... ok
[INFO] [stdout] test config::tests::resolve_config_path_explicit_tilde_expands ... ok
[INFO] [stdout] test config::tests::revenue_swap_validation_requires_default_chain_to_exist ... ok
[INFO] [stdout] test config::tests::resolve_config_path_explicit_even_if_nonexistent ... ok
[INFO] [stdout] test config::tests::resolve_config_path_explicit_overrides_all ... ok
[INFO] [stdout] test config::tests::obsidian_config_from_toml ... ok
[INFO] [stdout] test config::tests::output_validation_policy_default_is_strict ... ok
[INFO] [stdout] test config::tests::rewrite_all_toml_files_recurses ... ok
[INFO] [stdout] test config::tests::output_validation_policy_off_disables_quality_gate ... ok
[INFO] [stdout] test config::tests::rewrite_legacy_paths_noop_when_no_legacy_refs ... ok
[INFO] [stdout] test config::tests::rewrite_legacy_paths_in_config_updates_forward_slashes ... ok
[INFO] [stdout] test config::tests::server_config_default ... ok
[INFO] [stdout] test config::tests::session_config_defaults ... ok
[INFO] [stdout] test config::tests::session_config_from_toml ... ok
[INFO] [stdout] test config::tests::session_reset_schedule_accepts_timezone_prefix ... ok
[INFO] [stdout] test config::tests::revenue_swap_validation_rejects_duplicate_chain_entries ... ok
[INFO] [stdout] test config::tests::routing_config_default ... ok
[INFO] [stdout] test config::tests::rewrite_legacy_paths_windows_forward_slash ... ok
[INFO] [stdout] test config::tests::skills_config_defaults ... ok
[INFO] [stdout] test config::tests::skill_creation_rigor_default_is_full ... ok
[INFO] [stdout] test config::tests::startup_announcements_none_returns_empty ... ok
[INFO] [stdout] test config::tests::startup_announcements_text_none_variant ... ok
[INFO] [stdout] test config::tests::startup_announcements_text_returns_normalized ... ok
[INFO] [stdout] test config::tests::tier_adapt_config_default ... ok
[INFO] [stdout] test config::tests::tier_adapt_defaults ... ok
[INFO] [stdout] test config::tests::rewrite_legacy_paths_end_of_value_single_quote ... ok
[INFO] [stdout] test config::tests::tilde_expansion_in_database_path ... ok
[INFO] [stdout] test config::tests::rewrite_legacy_paths_end_of_value_double_quote ... ok
[INFO] [stdout] test config::tests::tiered_inference_config_default ... ok
[INFO] [stdout] test config::tests::tilde_expansion_for_multimodal_knowledge_and_device_paths ... ok
[INFO] [stdout] test config::tests::treasury_config_default ... ok
[INFO] [stdout] test config::tests::startup_announcements_channels_dedup_and_sort ... ok
[INFO] [stdout] test config::tests::startup_announcements_flag_returns_empty ... ok
[INFO] [stdout] test config::tests::treasury_validation_fail ... ok
[INFO] [stdout] test config::tests::update_config_default ... ok
[INFO] [stdout] test config::tests::validate_empty_agent_id_fails ... ok
[INFO] [stdout] test config::tests::validate_default_security_config_ok ... ok
[INFO] [stdout] test config::tests::user_provider_overrides_bundled ... ok
[INFO] [stdout] test config::tests::validate_empty_model_fails ... ok
[INFO] [stdout] test config::tests::validate_deny_on_empty_allowlist_false_is_rejected ... ok
[INFO] [stdout] test config::tests::validate_allowlist_authority_exceeds_trusted_fails ... ok
[INFO] [stdout] test config::tests::validate_localhost_bind_ok ... ok
[INFO] [stdout] test config::tests::validate_group_scope_ok ... ok
[INFO] [stdout] test config::tests::validate_negative_minimum_reserve_fails ... ok
[INFO] [stdout] test config::tests::validate_routing_accuracy_floor_out_of_range_fails ... ok
[INFO] [stdout] test config::tests::validate_routing_mode_heuristic_is_rejected ... ok
[INFO] [stdout] test config::tests::validate_routing_mode_invalid_fails ... ok
[INFO] [stdout] test config::tests::validate_threat_ceiling_creator_fails ... ok
[INFO] [stdout] test config::tests::validate_invalid_session_scope_fails ... ok
[INFO] [stdout] test config::tests::validate_invalid_bind_address_fails ... ok
[INFO] [stdout] test config::tests::wallet_config_default ... ok
[INFO] [stdout] test config::tests::validate_zero_payment_cap_fails ... ok
[INFO] [stdout] test config::tests::validate_empty_agent_name_fails ... ok
[INFO] [stdout] test config::tests::voice_channel_config_default ... ok
[INFO] [stdout] test config::tests::validate_routing_canary_model_must_not_be_blocked ... ok
[INFO] [stdout] test config::tests::validate_security_peer_ceiling_ok ... ok
[INFO] [stdout] test config_utils::generate_key_tests::server_api_key_format_and_uniqueness ... ok
[INFO] [stdout] test delegation_error::tests::display_is_human_readable ... ok
[INFO] [stdout] test delegation_error::tests::error_variants_serialize_to_tagged_json ... ok
[INFO] [stdout] test delegation_error::tests::policy_denied_serializes ... ok
[INFO] [stdout] test delegation_error::tests::round_trip_through_json ... ok
[INFO] [stdout] test config::tests::yield_config_default ... ok
[INFO] [stdout] test config::tests::workspace_config_default ... ok
[INFO] [stdout] test delegation_error::tests::subagent_unavailable_serializes ... ok
[INFO] [stdout] test delegation_error::tests::timeout_serializes ... ok
[INFO] [stdout] test delegation_error::tests::to_detail_json_produces_valid_json ... ok
[INFO] [stdout] test config::tests::validate_routing_canary_fraction_requires_canary_model ... ok
[INFO] [stdout] test delegation_tools::tests::sql_predicate_lists_only_delegation_output_tools ... ok
[INFO] [stdout] test delegation_tools::tests::delegation_output_is_subset_of_virtual_delegation ... ok
[INFO] [stdout] test delegation_tools::tests::select_subagent_model_is_virtual_but_not_delegation_output ... ok
[INFO] [stdout] test error::tests::is_credit_error_credit_rate_limit_combo ... ok
[INFO] [stdout] test error::tests::error_display_variants ... ok
[INFO] [stdout] test error::tests::io_error_conversion ... ok
[INFO] [stdout] test error::tests::is_credit_error_credit_circuit_breaker_combo ... ok
[INFO] [stdout] test error::tests::is_credit_error_detects_quota_exhaustion ... ok
[INFO] [stdout] test error::tests::is_credit_error_false_for_other_variants ... ok
[INFO] [stdout] test error::tests::is_credit_error_detects_402 ... ok
[INFO] [stdout] test error::tests::is_credit_error_detects_billing ... ok
[INFO] [stdout] test error::tests::is_credit_error_detects_insufficient_quota ... ok
[INFO] [stdout] test error::tests::is_credit_error_false_for_non_llm_variants ... ok
[INFO] [stdout] test error::tests::is_credit_error_detects_proxy_circuit_breaker ... ok
[INFO] [stdout] test error::tests::is_credit_error_false_for_transient_rate_limit ... ok
[INFO] [stdout] test error::tests::is_credit_error_works_on_network_variant ... ok
[INFO] [stdout] test error::tests::is_keystore_locked_detects_locked_state ... ok
[INFO] [stdout] test error::tests::toml_error_conversion ... ok
[INFO] [stdout] test error::tests::json_error_conversion ... ok
[INFO] [stdout] test error::tests::toml_ser_error_conversion ... ok
[INFO] [stdout] test input_capability_scan::tests::environment_keys_require_environment_capability ... ok
[INFO] [stdout] test error::tests::is_credit_error_network_billing ... ok
[INFO] [stdout] test input_capability_scan::tests::backslash_paths_detected ... ok
[INFO] [stdout] test input_capability_scan::tests::empty_string_values_skipped ... ok
[INFO] [stdout] test error::tests::result_type_alias ... ok
[INFO] [stdout] test input_capability_scan::tests::helper_key_functions ... ok
[INFO] [stdout] test input_capability_scan::tests::absolute_paths_detected ... ok
[INFO] [stdout] test input_capability_scan::tests::array_values_scanned ... ok
[INFO] [stdout] test input_capability_scan::tests::is_url_rejects_non_urls ... ok
[INFO] [stdout] test input_capability_scan::tests::is_url_detects_http ... ok
[INFO] [stdout] test input_capability_scan::tests::nested_object_with_path_context ... ok
[INFO] [stdout] test input_capability_scan::tests::model_context_suppresses_slash_heuristic ... ok
[INFO] [stdout] test input_capability_scan::tests::is_url_detects_https ... ok
[INFO] [stdout] test input_capability_scan::tests::is_url_detects_ws ... ok
[INFO] [stdout] test input_capability_scan::tests::model_identifier_is_not_filesystem_but_explicit_path_is ... ok
[INFO] [stdout] test input_capability_scan::tests::model_key_suppresses_slash_heuristic ... ok
[INFO] [stdout] test input_capability_scan::tests::regex_like_string_is_not_filesystem ... ok
[INFO] [stdout] test input_capability_scan::tests::input_capability_scan_default ... ok
[INFO] [stdout] test input_capability_scan::tests::null_and_boolean_values_ignored ... ok
[INFO] [stdout] test input_capability_scan::tests::network_key_sets_network_flag ... ok
[INFO] [stdout] test input_capability_scan::tests::path_context_always_returns_true ... ok
[INFO] [stdout] test input_capability_scan::tests::plain_string_is_not_path ... ok
[INFO] [stdout] test input_capability_scan::tests::path_key_always_returns_true ... ok
[INFO] [stdout] test input_capability_scan::tests::windows_drive_path_detected ... ok
[INFO] [stdout] test input_capability_scan::tests::windows_drive_path_non_alpha_not_detected ... ok
[INFO] [stdout] test keystore::tests::lock_or_recover_works_on_clean_mutex ... ok
[INFO] [stdout] test input_capability_scan::tests::url_and_websocket_values_require_network_only ... ok
[INFO] [stdout] test input_capability_scan::tests::url_is_not_filesystem_path ... ok
[INFO] [stdout] test keystore::tests::legacy_passphrases_include_both_prefixes ... ok
[INFO] [stdout] test keystore::tests::audit_log_path_derives_from_keystore_path ... ok
[INFO] [stdout] test keystore::tests::test_corrupt_keystore_file ... ok
[INFO] [stdout] test input_capability_scan::tests::slash_separated_without_model_context_is_path ... ok
[INFO] [stdout] test keystore::tests::test_default_path ... ok
[INFO] [stdout] test keystore::tests::test_get_on_locked_keystore_returns_none ... ok
[INFO] [stdout] test keystore::tests::machine_id_persists_across_calls ... ok
[INFO] [stdout] test keystore::tests::machine_passphrase_is_deterministic ... ok
[INFO] [stdout] test keystore::tests::redact_key_name_long_keys ... ok
[INFO] [stdout] test keystore::tests::redact_key_name_short_keys ... ok
[INFO] [stdout] test keystore::tests::test_import_on_locked_keystore_fails ... ok
[INFO] [stdout] test keystore::tests::test_list_keys_on_locked_keystore_returns_empty ... ok
[INFO] [stdout] test config::tests::config_toml_roundtrip_preserves_values ... ok
[INFO] [stdout] test keystore::tests::test_lock_clears_memory ... ok
[INFO] [stdout] test keystore::tests::test_import ... ok
[INFO] [stdout] test keystore::tests::test_import_audit_entry ... ok
[INFO] [stdout] test keystore::tests::test_new_keystore_creates_empty ... ok
[INFO] [stdout] test keystore::tests::test_rekey_on_locked_keystore_fails ... ok
[INFO] [stdout] test keystore::tests::test_persistence ... ok
[INFO] [stdout] test keystore::tests::test_remove_on_locked_keystore_fails ... ok
[INFO] [stdout] test keystore::tests::test_keystore_mutations_are_audited ... ok
[INFO] [stdout] test keystore::tests::test_list_keys ... ok
[INFO] [stdout] test keystore::tests::test_set_on_locked_keystore_fails ... ok
[INFO] [stdout] test keystore::tests::test_get_refreshes_entries_after_external_write ... ok
[INFO] [stdout] test keystore::tests::test_set_and_get ... ok
[INFO] [stdout] test keystore::tests::test_set_overwrites_existing_key ... ok
[INFO] [stdout] test keystore::tests::test_wrong_passphrase ... ok
[INFO] [stdout] test model::tests::model_name_extracts_correctly ... ok
[INFO] [stdout] test model::tests::model_name_handles_no_prefix ... ok
[INFO] [stdout] test model::tests::provider_prefix_extracts_correctly ... ok
[INFO] [stdout] test model::tests::provider_prefix_handles_edge_cases ... ok
[INFO] [stdout] test personality::tests::compose_firmware_text_empty_rules_returns_empty ... ok
[INFO] [stdout] test personality::tests::compose_firmware_text_none_returns_empty ... ok
[INFO] [stdout] test personality::tests::compose_full_personality_empty_when_no_files ... ok
[INFO] [stdout] test personality::tests::compose_full_personality_firmware_only ... ok
[INFO] [stdout] test personality::tests::compose_full_personality_includes_voice_when_non_default ... ok
[INFO] [stdout] test personality::tests::compose_full_personality_skips_voice_when_all_default ... ok
[INFO] [stdout] test personality::tests::compose_full_personality_with_all_sections ... ok
[INFO] [stdout] test personality::tests::compose_full_personality_with_operator_and_directives ... ok
[INFO] [stdout] test personality::tests::compose_identity_text_includes_directives ... ok
[INFO] [stdout] test personality::tests::compose_identity_text_includes_operator_context ... ok
[INFO] [stdout] test personality::tests::compose_identity_text_mission_empty_timeframe_shows_ongoing ... ok
[INFO] [stdout] test personality::tests::compose_identity_text_skips_empty_directives ... ok
[INFO] [stdout] test personality::tests::compose_identity_text_skips_empty_operator_context ... ok
[INFO] [stdout] test personality::tests::compose_identity_text_skips_empty_prompt_text ... ok
[INFO] [stdout] test personality::tests::compose_identity_text_without_firmware ... ok
[INFO] [stdout] test personality::tests::default_firmware_functions_return_expected ... ok
[INFO] [stdout] test personality::tests::default_voice_functions_return_expected ... ok
[INFO] [stdout] test personality::tests::directives_config_default_is_empty ... ok
[INFO] [stdout] test personality::tests::file_count_three ... ok
[INFO] [stdout] test personality::tests::file_count_zero_for_default ... ok
[INFO] [stdout] test personality::tests::firmware_approvals_default_values ... ok
[INFO] [stdout] test personality::tests::firmware_approvals_serde_defaults ... ok
[INFO] [stdout] test personality::tests::firmware_rule_accepts_type_field ... ok
[INFO] [stdout] test personality::tests::firmware_rule_accepts_type_key ... ok
[INFO] [stdout] test personality::tests::firmware_rule_empty_entry ... ok
[INFO] [stdout] test personality::tests::firmware_rule_without_type_key ... ok
[INFO] [stdout] test personality::tests::generate_directives_toml_roundtrip ... ok
[INFO] [stdout] test personality::tests::generate_firmware_toml_boundaries_with_empty_lines ... ok
[INFO] [stdout] test personality::tests::generate_firmware_toml_boundaries_with_quotes ... ok
[INFO] [stdout] test personality::tests::generate_firmware_toml_empty_boundaries ... ok
[INFO] [stdout] test personality::tests::generate_firmware_with_custom_boundaries ... ok
[INFO] [stdout] test personality::tests::generate_operator_toml_roundtrip ... ok
[INFO] [stdout] test personality::tests::generate_os_toml_creative_domain ... ok
[INFO] [stdout] test personality::tests::generate_os_toml_default_branches ... ok
[INFO] [stdout] test personality::tests::generate_os_toml_formal_wait_business ... ok
[INFO] [stdout] test personality::tests::generate_os_toml_parses ... ok
[INFO] [stdout] test personality::tests::generate_os_toml_research_domain ... ok
[INFO] [stdout] test personality::tests::interview_output_write_and_reload ... ok
[INFO] [stdout] test personality::tests::load_directives_returns_none_for_invalid_toml ... ok
[INFO] [stdout] test personality::tests::load_directives_roundtrip ... ok
[INFO] [stdout] test personality::tests::load_firmware_returns_none_for_invalid_toml ... ok
[INFO] [stdout] test personality::tests::load_operator_returns_none_for_invalid_toml ... ok
[INFO] [stdout] test personality::tests::load_operator_roundtrip ... ok
[INFO] [stdout] test personality::tests::load_os_returns_none_for_invalid_toml ... ok
[INFO] [stdout] test personality::tests::load_returns_none_for_missing_files ... ok
[INFO] [stdout] test personality::tests::load_roundtrip ... ok
[INFO] [stdout] test personality::tests::operator_config_default_is_empty ... ok
[INFO] [stdout] test personality::tests::os_identity_serde_defaults ... ok
[INFO] [stdout] test personality::tests::os_voice_default_matches_default_functions ... ok
[INFO] [stdout] test keystore::tests::test_rekey ... ok
[INFO] [stdout] test personality::tests::parse_default_os ... ok
[INFO] [stdout] test personality::tests::parse_interview_output_all_four_blocks ... ok
[INFO] [stdout] test personality::tests::parse_interview_output_alternative_fence ... ok
[INFO] [stdout] test personality::tests::parse_interview_output_extracts_toml_blocks ... ok
[INFO] [stdout] test keystore::tests::test_set_rolls_back_on_save_failure ... FAILED
[INFO] [stdout] test personality::tests::parse_interview_output_no_blocks_returns_empty ... ok
[INFO] [stdout] test personality::tests::parse_default_firmware ... ok
[INFO] [stdout] test personality::tests::validate_invalid_directives_toml ... ok
[INFO] [stdout] test personality::tests::parse_interview_output_unknown_label_ignored ... ok
[INFO] [stdout] test personality::tests::validate_invalid_firmware_toml ... ok
[INFO] [stdout] test personality::tests::validate_invalid_operator_toml ... ok
[INFO] [stdout] test keystore::tests::test_machine_key ... ok
[INFO] [stdout] test personality::tests::parse_interview_output_invalid_toml_fails_validation ... ok
[INFO] [stdout] test personality::tests::voice_summary_each_non_default_field ... ok
[INFO] [stdout] test personality::tests::voice_summary_none_when_all_default ... ok
[INFO] [stdout] test personality::tests::voice_summary_short_format ... ok
[INFO] [stdout] test personality::tests::write_defaults_creates_files ... ok
[INFO] [stdout] test personality::tests::validate_multiple_errors ... ok
[INFO] [stdout] test security::tests::a2a_claim_always_peer ... ok
[INFO] [stdout] test personality::tests::write_to_workspace_all_four_files ... ok
[INFO] [stdout] test security::tests::a2a_claim_threat_downgrade ... ok
[INFO] [stdout] test security::tests::adding_ceiling_never_increases_authority ... ok
[INFO] [stdout] test security::tests::api_claim_default_creator ... ok
[INFO] [stdout] test security::tests::allowlist_only_yields_peer ... ok
[INFO] [stdout] test security::tests::api_claim_with_custom_ceiling_and_threat ... ok
[INFO] [stdout] test security::tests::custom_allowlist_authority ... ok
[INFO] [stdout] test security::tests::adding_grant_never_decreases_authority ... ok
[INFO] [stdout] test security::tests::api_claim_threat_downgrade ... ok
[INFO] [stdout] test security::tests::both_allowlist_and_trusted_yields_creator ... ok
[INFO] [stdout] test security::tests::custom_threat_ceiling ... ok
[INFO] [stdout] test security::tests::empty_allowlist_deny_on_empty_true_rejects ... ok
[INFO] [stdout] test security::tests::no_threat_means_no_ceiling ... ok
[INFO] [stdout] test security::tests::threat_ceiling_downgrades_creator ... ok
[INFO] [stdout] test security::tests::custom_api_authority_downgraded ... ok
[INFO] [stdout] test security::tests::threat_present_but_not_binding_does_not_set_downgraded ... ok
[INFO] [stdout] test security::tests::trusted_by_chat_id ... ok
[INFO] [stdout] test security::tests::empty_allowlist_still_rejects_even_if_flag_is_false ... ok
[INFO] [stdout] test security::tests::no_grants_yields_external ... ok
[INFO] [stdout] test security::tests::trusted_only_yields_creator ... ok
[INFO] [stdout] test style::tests::ai_purple_palette ... ok
[INFO] [stdout] test style::tests::always_mode_forces_color_and_draw ... ok
[INFO] [stdout] test style::tests::crt_green_reset_includes_green_tint ... ok
[INFO] [stdout] test style::tests::crt_orange_palette ... ok
[INFO] [stdout] test style::tests::default_icons_are_emoji ... ok
[INFO] [stdout] test style::tests::from_flag_parses_correctly ... ok
[INFO] [stdout] test style::tests::from_flags_produces_correct_theme ... ok
[INFO] [stdout] test style::tests::detect_returns_a_theme ... ok
[INFO] [stdout] test style::tests::dim_per_variant ... ok
[INFO] [stdout] test style::tests::hard_reset_is_plain ... ok
[INFO] [stdout] test style::tests::mono_colors_per_variant ... ok
[INFO] [stdout] test style::tests::nerdmode_forces_ascii_icons ... ok
[INFO] [stdout] test style::tests::nerdmode_forces_draw ... ok
[INFO] [stdout] test style::tests::nerdmode_overrides_terminal_to_green ... ok
[INFO] [stdout] test style::tests::nerdmode_false_is_noop ... ok
[INFO] [stdout] test style::tests::nerdmode_respects_orange ... ok
[INFO] [stdout] test style::tests::plain_theme_returns_empty_strings ... ok
[INFO] [stdout] test style::tests::from_flags_unknown_defaults ... ok
[INFO] [stdout] test style::tests::semantic_colors_plain_theme ... ok
[INFO] [stdout] test style::tests::semantic_colors_same_across_variants ... ok
[INFO] [stdout] test style::tests::spinner_frame_cycles ... ok
[INFO] [stdout] test style::tests::spinner_frames_has_10_entries ... ok
[INFO] [stdout] test style::tests::terminal_variant_no_tint ... ok
[INFO] [stdout] test style::tests::theme_variant_from_flag ... ok
[INFO] [stdout] test style::tests::sleep_ms_does_not_panic ... ok
[INFO] [stdout] test style::tests::never_mode_disables_everything ... ok
[INFO] [stdout] test style::tests::typewrite_line_stdout_instant_when_draw_disabled ... ok
[INFO] [stdout] test style::tests::typewrite_line_instant_when_draw_disabled ... ok
[INFO] [stdout] test style::tests::typewrite_stdout_with_draw_enabled ... ok
[INFO] [stdout] test style::tests::typewrite_with_draw_enabled_processes_ansi ... ok
[INFO] [stdout] test style::tests::with_draw_false_disables_draw ... ok
[INFO] [stdout] test style::tests::with_draw_true_enables_draw ... ok
[INFO] [stdout] test types::tests::agent_state_serde ... ok
[INFO] [stdout] test types::tests::api_format_roundtrip ... ok
[INFO] [stdout] test types::tests::claim_source_serde ... ok
[INFO] [stdout] test types::tests::default_priority_is_five ... ok
[INFO] [stdout] test types::tests::default_risk_level_is_caution ... ok
[INFO] [stdout] test style::tests::typewrite_instant_when_draw_disabled ... ok
[INFO] [stdout] test style::tests::reset_per_variant ... ok
[INFO] [stdout] test style::tests::typewrite_stdout_instant_when_draw_disabled ... ok
[INFO] [stdout] test types::tests::input_authority_ordering ... ok
[INFO] [stdout] test types::tests::policy_decision_helpers ... ok
[INFO] [stdout] test types::tests::model_tier_ordering ... ok
[INFO] [stdout] test types::tests::input_authority_serde ... ok
[INFO] [stdout] test types::tests::instruction_skill_serde ... ok
[INFO] [stdout] test types::tests::security_claim_serde ... ok
[INFO] [stdout] test types::tests::skill_kind_serde ... ok
[INFO] [stdout] test types::tests::skill_manifest_serde ... ok
[INFO] [stdout] test types::tests::risk_level_ordering ... ok
[INFO] [stdout] test types::tests::schedule_kind_serde ... ok
[INFO] [stdout] test types::tests::survival_tier_boundary_dead_needs_one_hour ... ok
[INFO] [stdout] test types::tests::survival_tier_serde ... ok
[INFO] [stdout] test types::tests::survival_tier_thresholds ... ok
[INFO] [stdout] test types::tests::tool_chain_step_serde ... ok
[INFO] [stdout] test types::tests::skill_trigger_default ... ok
[INFO] [stdout] test keystore::tests::test_remove ... ok
[INFO] [stdout] test keystore::tests::unlock_machine_migrates_legacy_keystore ... ok
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout] test keystore::tests::unlock_machine_recovers_pre_rebrand_keystore ... ok
[INFO] [stdout] test keystore::tests::concurrent_set_and_rekey_no_deadlock ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- keystore::tests::test_set_rolls_back_on_save_failure stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'keystore::tests::test_set_rolls_back_on_save_failure' (1306) panicked at src/keystore.rs:988:9:
[INFO] [stdout] assertion failed: res.is_err()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x62b74ca9d071 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x62b74cab4d0a - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x62b74caa1b6c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x62b74ca74c26 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x62b74ca92ee9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x62b74ca11630 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x62b74ca93212 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x62b74ca74d04 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x62b74ca6d479 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x62b74ca75cad - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x62b74cab546c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x62b74cab5432 - core[a373ad73a504971]::panicking::panic
[INFO] [stdout]   12:     0x62b74c97ae25 - <roboticus_core[5db72a5f3ca8623c]::keystore::tests::test_set_rolls_back_on_save_failure::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   13:     0x62b74ca04a7b - 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]   14:     0x62b74ca11c55 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   15:     0x62b74ca0b544 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   16:     0x62b74ca14ce2 - <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]   17:     0x62b74ca9bf7f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   18:     0x7c58d012fdfa - <unknown>
[INFO] [stdout]   19:     0x7c58d01c33d4 - clone
[INFO] [stdout]   20:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     keystore::tests::test_set_rolls_back_on_save_failure
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 359 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 14.82s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be", kill_on_drop: false }`
[INFO] [stdout] 1e1b188eb0df76ad5c07696576e7e97bad42c4d3ad1b9063e73942c3967e51be
