[INFO] cloning repository https://github.com/MinchaoZhu/chaos-bot
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MinchaoZhu/chaos-bot" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMinchaoZhu%2Fchaos-bot", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMinchaoZhu%2Fchaos-bot'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cf0c73d300b4f613228c70a3d8d9db1e03dfe653
[INFO] testing MinchaoZhu/chaos-bot against 1.99.0-beta.1+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMinchaoZhu%2Fchaos-bot" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/MinchaoZhu/chaos-bot
[INFO] finished tweaking git repo https://github.com/MinchaoZhu/chaos-bot
[INFO] tweaked toml for git repo https://github.com/MinchaoZhu/chaos-bot written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/MinchaoZhu/chaos-bot on toolchain 1.99.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/MinchaoZhu/chaos-bot already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856
[INFO] running `Command { std: "docker" "start" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856", 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" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856", 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" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling writeable v0.6.2
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling litemap v0.8.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling iri-string v0.7.10
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling webpki-roots v1.0.6
[INFO] [stderr]    Compiling clap_builder v4.5.60
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling socket2 v0.6.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling tempfile v3.25.0
[INFO] [stderr]    Compiling uuid v1.21.0
[INFO] [stderr]    Compiling tar v0.4.44
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling clap v4.5.60
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tracing-appender v0.2.4
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling chaos-bot-backend v0.1.9 (/opt/rustwide/workdir/backend)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2m 27s
[INFO] running `Command { std: "docker" "inspect" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856", 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" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling uuid v1.21.0
[INFO] [stderr]    Compiling sdd v3.0.10
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling axum-macros v0.4.2
[INFO] [stderr]    Compiling serial_test_derive v3.4.0
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling scc v2.4.0
[INFO] [stderr]    Compiling pretty_assertions v1.4.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling tracing-appender v0.2.4
[INFO] [stderr]    Compiling serial_test v3.4.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling chaos-bot-backend v0.1.9 (/opt/rustwide/workdir/backend)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 51s
[INFO] running `Command { std: "docker" "inspect" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856", 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" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.28s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/chaos_bot_backend-b88a8aa85a58f4c4)
[INFO] [stdout] 
[INFO] [stdout] running 59 tests
[INFO] [stdout] test application::config_service::tests::config_service_requires_runtime ... ok
[INFO] [stdout] test application::upgrade_service::tests::upgrade_service_maps_internal_failures ... ok
[INFO] [stdout] test application::upgrade_service::tests::upgrade_service_requires_runtime ... ok
[INFO] [stdout] test application::config_service::tests::build_config_state_response_falls_back_when_disk_config_is_invalid ... ok
[INFO] [stdout] test application::upgrade_service::tests::upgrade_service_status_apply_and_relaunch_delegate_to_runtime ... ok
[INFO] [stdout] test infrastructure::skills::tests::empty_skill_store_returns_empty ... ok
[INFO] [stdout] test application::config_service::tests::config_service_get_reset_apply_and_restart_cover_core_paths ... ok
[INFO] [stdout] test infrastructure::logging::tests::cleanup_old_logs_removes_files_older_than_retention_window ... ok
[INFO] [stdout] test application::session_service::tests::session_service_delete_missing_session_returns_not_found ... ok
[INFO] [stdout] test infrastructure::skills::tests::get_missing_skill_errors ... ok
[INFO] [stdout] test infrastructure::skills::tests::parse_frontmatter_no_fm ... ok
[INFO] [stdout] test infrastructure::skills::tests::parse_git_source_supports_git_url ... ok
[INFO] [stdout] test infrastructure::skills::tests::parse_git_source_supports_github_tree_url ... ok
[INFO] [stdout] test infrastructure::skills::tests::parse_frontmatter_basic ... ok
[INFO] [stdout] test application::session_service::tests::session_service_create_list_get_and_delete_roundtrip ... ok
[INFO] [stdout] test infrastructure::skills::tests::get_returns_skill_detail ... ok
[INFO] [stdout] test infrastructure::skills::tests::list_returns_installed_skills ... ok
[INFO] [stdout] test infrastructure::tooling::search::tests::execute_requires_configured_provider ... ok
[INFO] [stdout] test runtime::cli::chat::tests::looks_like_session_id_matches_uuid_and_hex_prefixes ... ok
[INFO] [stdout] test infrastructure::skills::tests::read_skill_markdown_rejects_invalid_name ... ok
[INFO] [stdout] test runtime::cli::chat::tests::chat_accepts_inline_message ... ok
[INFO] [stdout] test infrastructure::tooling::search::tests::execute_errors_when_provider_key_missing ... ok
[INFO] [stdout] test runtime::cli::config::tests::config_mutation_rejects_missing_input ... ok
[INFO] [stdout] test runtime::cli::config::tests::config_mutation_reads_structured_payload_from_file ... ok
[INFO] [stdout] test infrastructure::tooling::search::tests::execute_normalizes_brave_results ... ok
[INFO] [stdout] test infrastructure::skills::tests::list_skips_files_without_skill_md ... ok
[INFO] [stdout] test runtime::cli::config::tests::config_restart_defaults_to_noop ... ok
[INFO] [stdout] session: session-1
[INFO] [stdout] delta: "chunk"
[INFO] [stdout] tool_call: {"args":{"command":"pwd"},"id":"tool-1","is_error":false,"name":"bash","output":"/tmp/workspace"}
[INFO] [stdout] done: {"assistant_message":"final answer","finish_reason":"stop","session_id":"session-1","tool_error_count":1,"usage":{"completion_tokens":20,"prompt_tokens":10,"total_tokens":30}}
[INFO] [stdout] {"event":"session","session_id":"session-1"}
[INFO] [stdout] {"event":"delta","chunk":"chunk"}
[INFO] [stdout] {"event":"tool_call","id":"tool-1","name":"bash","args":{"command":"pwd"},"output":"/tmp/workspace","is_error":false}
[INFO] [stdout] test runtime::cli::config::tests::config_restart_accepts_raw_and_structured_inputs ... {"event":"done","session_id":"session-1","assistant_message":"final answer","finish_reason":"stop","usage":{"prompt_tokens":10,"completion_tokens":20,"total_tokens":30},"tool_error_count":1}
[INFO] [stdout] ok
[INFO] [stdout] test infrastructure::tooling::search::tests::execute_normalizes_perplexity_results ... ok
[INFO] [stdout] test runtime::cli::config::tests::config_restart_rejects_multiple_sources ... ok
[INFO] [stdout] test runtime::cli::output::tests::render_chat_response_text_includes_usage_and_tool_count ... ok
[INFO] [stdout] test infrastructure::tooling::search::tests::execute_returns_error_payload_for_upstream_failure ... ok
[INFO] [stdout] test infrastructure::tooling::search::tests::execute_normalizes_tavily_results ... ok
[INFO] [stdout] session: session-1
[INFO] [stdout] finish_reason: stop
[INFO] [stdout] usage: prompt=10 completion=20 total=30
[INFO] [stdout] tool_events: 1
[INFO] [stdout] 
[INFO] [stdout] hello
[INFO] [stdout] {
[INFO] [stdout]   "session_id": "session-1",
[INFO] [stdout]   "assistant_message": "hello",
[INFO] [stdout]   "finish_reason": "stop",
[INFO] [stdout]   "usage": {
[INFO] [stdout]     "prompt_tokens": 10,
[INFO] [stdout]     "completion_tokens": 20,
[INFO] [stdout]     "total_tokens": 30
[INFO] [stdout]   },
[INFO] [stdout]   "tool_events": [
[INFO] [stdout]     {
[INFO] [stdout]       "call": {
[INFO] [stdout]         "id": "tool-1",
[INFO] [stdout]         "name": "bash",
[INFO] [stdout]         "arguments": {
[INFO] [stdout]           "command": "pwd"
[INFO] [stdout]         }
[INFO] [stdout]       },
[INFO] [stdout]       "result": {
[INFO] [stdout]         "tool_call_id": "tool-1",
[INFO] [stdout]         "name": "bash",
[INFO] [stdout]         "output": "/tmp/workspace",
[INFO] [stdout]         "is_error": false
[INFO] [stdout]       }
[INFO] [stdout]     }
[INFO] [stdout]   ]
[INFO] [stdout] }
[INFO] [stdout] {"session_id":"session-1","assistant_message":"hello","finish_reason":"stop","usage":{"prompt_tokens":10,"completion_tokens":20,"total_tokens":30},"tool_events":[{"call":{"id":"tool-1","name":"bash","arguments":{"command":"pwd"}},"result":{"tool_call_id":"tool-1","name":"bash","output":"/tmp/workspace","is_error":false}}]}
[INFO] [stdout] test runtime::cli::output::tests::render_chat_stream_event_and_done_support_all_output_modes ... ok
[INFO] [stdout] test runtime::cli::output::tests::render_config_and_delete_text_cover_mutation_contract ... ok
[INFO] [stdout] test runtime::cli::output::tests::render_sessions_and_session_detail_text_cover_empty_and_messages ... ok
[INFO] [stdout] test runtime::cli::output::tests::render_skills_text_detail_and_install_text_cover_both_paths ... ok
[INFO] [stdout] test runtime::cli::output::tests::render_upgrade_texts_and_payload_include_optional_fields ... ok
[INFO] [stdout] test runtime::cli::output::tests::session_summary_copies_session_metadata ... ok
[INFO] [stdout] test runtime::cli::output::tests::write_output_supports_all_modes ... ok
[INFO] [stdout] test infrastructure::skills::tests::ensure_layout_creates_skill_creator ... ok
[INFO] [stdout] test infrastructure::logging::tests::non_blocking_writer_flushes_on_guard_drop ... ok
[INFO] [stdout] test runtime::cli::tests::classify_error_message_maps_known_error_classes ... ok
[INFO] [stdout] test runtime::cli::tests::classify_provider_errors ... ok
[INFO] [stdout] test runtime::cli::tests::cli_error_from_app_error_preserves_not_found_and_service_unavailable ... ok
[INFO] [stdout] CLI-first runtime for chaos-bot
[INFO] [stdout] 
[INFO] [stdout] Usage: chaos-bot [OPTIONS] [COMMAND]
[INFO] [stdout] 
[INFO] [stdout] Commands:
[INFO] [stdout]   chat      
[INFO] [stdout]   sessions  
[INFO] [stdout]   config    
[INFO] [stdout]   skills    
[INFO] [stdout]   upgrade   
[INFO] [stdout]   help      Print this message or the help of the given subcommand(s)
[INFO] [stdout] 
[INFO] [stdout] Options:
[INFO] [stdout]       --config <PATH>     
[INFO] [stdout]       --workspace <PATH>  
[INFO] [stdout]       --output <OUTPUT>   [default: text] [possible values: text, json, jsonl]
[INFO] [stdout]       --non-interactive   
[INFO] [stdout]   -h, --help              Print help
[INFO] [stdout] test runtime::cli::tests::cli_help_includes_primary_command_groups ... ok
[INFO] [stdout] test runtime::cli::tests::render_parse_error_uses_success_for_help_and_invalid_request_for_bad_args ... ok
[INFO] [stdout] test runtime::cli::tests::run_parsed_without_command_prints_help ... ok
[INFO] [stdout] test runtime::config_runtime::tests::restart_after_apply_structured_returns_false_when_restarts_are_disabled ... ok
[INFO] [stdout] test runtime::cli::config::tests::config_mutation_accepts_raw_payload ... ok
[INFO] [stdout] test runtime::config_runtime::tests::apply_structured_updates_running_state_and_disk ... ok
[INFO] [stdout] test runtime::tests::build_context_uses_runtime_config ... ok
[INFO] [stdout] test runtime::config_runtime::tests::rotate_backups_keeps_two_generations ... ok
[INFO] [stdout] test runtime::tests::build_app_works_with_mock_provider ... ok
[INFO] [stdout] test infrastructure::upgrade::tests::apply_installs_new_release ... ok
[INFO] [stdout] test infrastructure::upgrade::tests::status_reports_checksum_failure_reason ... ok
[INFO] [stdout] test infrastructure::skills::tests::install_skills_from_local_git_repo ... ok
[INFO] [stdout] test infrastructure::upgrade::tests::status_reports_upgrade_availability ... ok
[INFO] [stdout] test infrastructure::upgrade::tests::apply_noops_when_versions_match ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 59 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/runtime/bin/chaos_bot.rs (/opt/rustwide/target/release/deps/chaos_bot-ace715dcb7e16499)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/agent_prompt.rs (/opt/rustwide/target/release/deps/agent_prompt-0523a819dd6a5173)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test agent_builds_single_system_message_with_memory_context ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli_integration.rs (/opt/rustwide/target/release/deps/cli_integration-98e1fedab10f6794)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test cli_chat_session_flag_can_create_named_session ... ok
[INFO] [stdout] test cli_success_output_is_clean_and_logs_stay_in_file ... ok
[INFO] [stdout] test cli_chat_rejects_unknown_positional_session_like_id ... ok
[INFO] [stdout] test cli_skills_upgrade_and_workspace_flag_flow ... ok
[INFO] [stdout] test cli_chat_sessions_config_and_stdin_flow ... ok
[INFO] [stderr]      Running tests/tools_symlink.rs (/opt/rustwide/target/release/deps/tools_symlink-877ab5063df18484)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.37s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test write_tool_allows_symlink_escape_targets ... ok
[INFO] [stdout] test edit_tool_allows_symlink_escape_targets ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_agent.rs (/opt/rustwide/target/release/deps/unit_agent-cf3bfc48c2bccc49)
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test build_system_prompt_includes_runtime_tool_guidance ... ok
[INFO] [stdout] test build_system_prompt_includes_skill_headers ... ok
[INFO] [stdout] test build_system_prompt_trims_personality ... ok
[INFO] [stdout] test build_system_prompt_with_memory ... ok
[INFO] [stdout] test build_system_prompt_without_memory ... ok
[INFO] [stdout] test enforce_token_budget_keeps_at_least_two ... ok
[INFO] [stdout] test enforce_token_budget_no_removal_when_under ... ok
[INFO] [stdout] test enforce_token_budget_removes_middle_messages ... ok
[INFO] [stdout] test estimate_tokens_basic ... ok
[INFO] [stdout] test estimate_tokens_multiple ... ok
[INFO] [stdout] test run_stream_delivers_delta_events ... ok
[INFO] [stdout] test run_no_tools_returns_stop ... ok
[INFO] [stdout] test run_provider_error_propagates ... ok
[INFO] [stdout] test build_system_prompt_limits_to_6_hits ... ok
[INFO] [stdout] test run_with_tool_calls_loops ... ok
[INFO] [stdout] test max_iterations_returns_fallback ... ok
[INFO] [stderr]      Running tests/unit_bootstrap.rs (/opt/rustwide/target/release/deps/unit_bootstrap-6eadae0d595137c8)
[INFO] [stdout] test live_time_queries_use_bash_and_return_live_output ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test bootstrap_creates_default_personality_and_sessions_dir ... ok
[INFO] [stdout] test bootstrap_preserves_existing_files_and_fills_missing_defaults ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_config.rs (/opt/rustwide/target/release/deps/unit_config-b73eaf7f9fb4ae3a)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test from_inputs_applies_workspace_logging_and_search_settings ... ok
[INFO] [stdout] test config_file_secrets_override_env_secrets ... ok
[INFO] [stdout] test load_creates_default_config_json_when_missing ... ok
[INFO] [stdout] test load_prefers_existing_config_json_over_legacy_agent_json ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_llm.rs (/opt/rustwide/target/release/deps/unit_llm-fb76fa9663785699)
[INFO] [stdout] 
[INFO] [stdout] running 37 tests
[INFO] [stdout] test build_provider_mock ... ok
[INFO] [stdout] test build_provider_anthropic_without_key_errors ... ok
[INFO] [stdout] test build_provider_openai_without_key_errors ... ok
[INFO] [stdout] test build_provider_unsupported ... ok
[INFO] [stdout] test build_provider_gemini_with_key ... ok
[INFO] [stdout] test drain_sse_payloads_done_marker ... ok
[INFO] [stdout] test drain_sse_payloads_empty_buffer ... ok
[INFO] [stdout] test drain_sse_payloads_ignores_non_data_lines ... ok
[INFO] [stdout] test drain_sse_payloads_multiple ... ok
[INFO] [stdout] test drain_sse_payloads_single ... ok
[INFO] [stdout] test flush_tool_calls_multiple_indexes ... ok
[INFO] [stdout] test map_messages_assistant ... ok
[INFO] [stdout] test drain_sse_payloads_partial ... ok
[INFO] [stdout] test map_messages_multiple ... ok
[INFO] [stdout] test map_messages_system ... ok
[INFO] [stdout] test map_messages_tool ... ok
[INFO] [stdout] test map_messages_user ... ok
[INFO] [stdout] test map_tools_empty ... ok
[INFO] [stdout] test map_tools_single ... ok
[INFO] [stdout] test parse_tool_calls_from_message_no_calls ... ok
[INFO] [stdout] test parse_tool_calls_from_message_with_calls ... ok
[INFO] [stdout] test mock_provider_chat_stream_text ... ok
[INFO] [stdout] test parse_usage_absent ... ok
[INFO] [stdout] test parse_tool_calls_invalid_json_arguments ... ok
[INFO] [stdout] test parse_usage_present ... ok
[INFO] [stdout] test mock_provider_chat_stream_tool_call ... ok
[INFO] [stderr]      Running tests/unit_logging.rs (/opt/rustwide/target/release/deps/unit_logging-771f3bd95447bb01)
[INFO] [stdout] test process_done_marker ... ok
[INFO] [stdout] test process_done_marker_only_once ... ok
[INFO] [stdout] test process_empty_content_not_emitted ... ok
[INFO] [stdout] test process_text_delta ... ok
[INFO] [stdout] test process_invalid_json_errors ... ok
[INFO] [stdout] test process_tool_call_assembly ... ok
[INFO] [stdout] test process_usage_captured ... ok
[INFO] [stdout] test token_limit_field_for_gpt5_models ... ok
[INFO] [stdout] test token_limit_field_for_non_gpt5_models ... ok
[INFO] [stdout] test flush_tool_calls_invalid_json_args_wrapped ... ok
[INFO] [stdout] test build_provider_gemini_without_key_errors ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 37 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test audit_redacts_sensitive_json_fields ... ok
[INFO] [stdout] test audit_redacts_non_json_raw_payload ... ok
[INFO] [stdout] test app_error_exposes_unified_error_code ... ok
[INFO] [stdout] test cleanup_old_logs_removes_entries_outside_retention ... ok
[INFO] [stderr]      Running tests/unit_memory.rs (/opt/rustwide/target/release/deps/unit_memory-a9f5c96c6844fd25)
[INFO] [stdout] test init_logging_writes_to_workspace_log_file ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test get_file_curated ... ok
[INFO] [stdout] test get_file_missing_returns_error ... ok
[INFO] [stdout] test get_file_daily_log ... ok
[INFO] [stdout] test ensure_layout_creates_dir_and_file ... ok
[INFO] [stdout] test append_daily_log_appends ... ok
[INFO] [stdout] test ensure_layout_idempotent ... ok
[INFO] [stdout] test search_empty_keyword_returns_empty ... ok
[INFO] [stdout] test append_daily_log_creates_file ... ok
[INFO] [stdout] test get_file_out_of_range_returns_empty ... ok
[INFO] [stdout] test search_whitespace_keyword_returns_empty ... ok
[INFO] [stdout] test memory_dir_and_curated_file_accessors ... ok
[INFO] [stdout] test read_curated_returns_default_content ... ok
[INFO] [stderr]      Running tests/unit_personality.rs (/opt/rustwide/target/release/deps/unit_personality-7e6ee9d5fb236068)
[INFO] [stdout] test write_curated_and_read_back ... ok
[INFO] [stdout] test get_file_with_line_range ... ok
[INFO] [stdout] test search_finds_matching_lines ... ok
[INFO] [stdout] test search_case_insensitive ... ok
[INFO] [stdout] test search_across_daily_logs_and_curated ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test system_prompt_empty_dir_returns_empty ... ok
[INFO] [stdout] test load_sections_in_correct_order ... ok
[INFO] [stdout] test load_sections_skips_missing_files ... ok
[INFO] [stdout] test dir_accessor ... ok
[INFO] [stdout] test load_sections_empty_dir ... ok
[INFO] [stdout] test system_prompt_trims_content ... ok
[INFO] [stdout] test system_prompt_concatenates_with_headers ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_sessions.rs (/opt/rustwide/target/release/deps/unit_sessions-1b6fb4ec6a34f1b3)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test invalid_session_id_is_rejected ... ok
[INFO] [stdout] test create_returns_unique_session ... ok
[INFO] [stdout] test upsert_persists_messages_to_disk ... ok
[INFO] [stdout] test get_and_delete_roundtrip ... ok
[INFO] [stdout] test list_returns_sessions_sorted_by_updated_at ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_tools.rs (/opt/rustwide/target/release/deps/unit_tools-8b33c6d30a328a76)
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test bash_tool_description_mentions_live_runtime_examples ... ok
[INFO] [stdout] test bash_tool_disallowed_command_errors ... ok
[INFO] [stdout] test ensure_within_root_allows_child_path ... ok
[INFO] [stdout] test ensure_within_root_rejects_escape ... ok
[INFO] [stdout] test read_tool_missing_path_arg_errors ... ok
[INFO] [stdout] test read_tool_reads_file ... ok
[INFO] [stdout] test find_tool_finds_files ... ok
[INFO] [stdout] test registry_dispatch_unknown_tool_errors ... ok
[INFO] [stdout] test registry_dispatch_existing_tool ... ok
[INFO] [stdout] test registry_new_is_empty ... ok
[INFO] [stdout] test registry_register_and_specs ... ok
[INFO] [stdout] test grep_tool_case_insensitive ... ok
[INFO] [stdout] test registry_register_default_tools_count ... ok
[INFO] [stdout] test slice_lines_no_range ... ok
[INFO] [stdout] test slice_lines_out_of_range_returns_empty ... ok
[INFO] [stdout] test slice_lines_start_zero_treated_as_beginning ... ok
[INFO] [stdout] test slice_lines_start_and_end ... ok
[INFO] [stdout] test tool_names_and_descriptions ... ok
[INFO] [stdout] test slice_lines_start_only ... ok
[INFO] [stdout] test load_skill_tool_reads_skill_markdown ... ok
[INFO] [stdout] test ls_tool_sorted_output ... ok
[INFO] [stdout] test memory_get_tool_reads_curated ... ok
[INFO] [stdout] test write_tool_append_mode ... ok
[INFO] [stdout] test write_tool_creates_parent_dirs ... ok
[INFO] [stdout] test memory_search_tool_finds_hits ... ok
[INFO] [stdout] test read_tool_with_line_range ... ok
[INFO] [stdout] test read_tool_missing_file_errors ... ok
[INFO] [stdout] test grep_tool_finds_matches ... ok
[INFO] [stdout] test write_tool_creates_file ... ok
[INFO] [stdout] test edit_tool_replaces_string ... ok
[INFO] [stdout] test bash_tool_pwd_runs_in_root_dir ... ok
[INFO] [stdout] test bash_tool_allowed_command ... ok
[INFO] [stdout] test edit_tool_string_not_found_errors ... ok
[INFO] [stdout] test ls_tool_lists_directory ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test message_constructors_and_roundtrip ... ok
[INFO] [stdout] test role_serializes_lowercase ... ok
[INFO] [stderr]      Running tests/unit_types.rs (/opt/rustwide/target/release/deps/unit_types-99bebaa9116362e2)
[INFO] [stdout] test session_state_updates_timestamp ... ok
[INFO] [stdout] test tool_types_roundtrip ... ok
[INFO] [stderr]    Doc-tests chaos_bot_backend
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856", kill_on_drop: false }`
[INFO] [stdout] ec94082549a0718738fe75e214c28daafdb85e96e96f8ac30831c7679022b856
