[INFO] cloning repository https://github.com/carl10086/cc-switch-tui [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/carl10086/cc-switch-tui" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarl10086%2Fcc-switch-tui", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarl10086%2Fcc-switch-tui'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b7a62221944f68e75edbcfd1d0f7c1f1f70f163e [INFO] testing carl10086/cc-switch-tui against 1.98.0-beta.1 for beta-1.98-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarl10086%2Fcc-switch-tui" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/carl10086/cc-switch-tui [INFO] finished tweaking git repo https://github.com/carl10086/cc-switch-tui [INFO] tweaked toml for git repo https://github.com/carl10086/cc-switch-tui written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/carl10086/cc-switch-tui on toolchain 1.98.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/carl10086/cc-switch-tui already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f [INFO] running `Command { std: "docker" "start" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f", 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" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f", 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" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling cc v1.2.60 [INFO] [stderr] Compiling socket2 v0.6.4 [INFO] [stderr] Compiling mio v1.2.1 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling openssl-probe v0.2.1 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling rustls-pki-types v1.14.1 [INFO] [stderr] Compiling openssl v0.10.80 [INFO] [stderr] Compiling zerocopy v0.8.48 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling rustls v0.23.40 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling unicase v2.9.0 [INFO] [stderr] Compiling rustls-native-certs v0.8.3 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling openssl-sys v0.9.116 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling webpki-roots v1.0.7 [INFO] [stderr] Compiling ureq-proto v0.6.0 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling include_dir_macros v0.7.4 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling matchit v0.7.3 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling utf8-zero v0.8.1 [INFO] [stderr] Compiling include_dir v0.7.4 [INFO] [stderr] Compiling uuid v1.23.3 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling zerofrom-derive v0.1.7 [INFO] [stderr] Compiling yoke-derive v0.8.2 [INFO] [stderr] Compiling zerovec-derive v0.11.3 [INFO] [stderr] Compiling displaydoc v0.2.6 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling zerofrom v0.1.8 [INFO] [stderr] Compiling yoke v0.8.2 [INFO] [stderr] Compiling tokio v1.52.3 [INFO] [stderr] Compiling zerovec v0.11.6 [INFO] [stderr] Compiling zerotrie v0.2.4 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling rustls-webpki v0.103.13 [INFO] [stderr] Compiling tinystr v0.8.3 [INFO] [stderr] Compiling potential_utf v0.1.5 [INFO] [stderr] Compiling icu_collections v2.2.0 [INFO] [stderr] Compiling icu_locale_core v2.2.0 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling icu_provider v2.2.0 [INFO] [stderr] Compiling icu_properties v2.2.0 [INFO] [stderr] Compiling icu_normalizer v2.2.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling idna_adapter v1.2.2 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling axum-core v0.4.5 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling h2 v0.4.14 [INFO] [stderr] Compiling tower-http v0.6.11 [INFO] [stderr] Compiling rustls-platform-verifier v0.6.2 [INFO] [stderr] Compiling ureq v3.3.0 [INFO] [stderr] Compiling webbrowser v1.2.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling tower v0.4.13 [INFO] [stderr] Compiling tower-http v0.5.2 [INFO] [stderr] Compiling hyper v1.10.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling axum v0.7.9 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling cc-switch-tui v0.7.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 30s [INFO] running `Command { std: "docker" "inspect" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f", 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" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling openssl v0.10.80 [INFO] [stderr] Compiling tower-http v0.6.11 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling tower-http v0.5.2 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling cc-switch-tui v0.7.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 58.63s [INFO] running `Command { std: "docker" "inspect" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f", 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" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.44s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cc_switch_tui-458a67788f7430e5) [INFO] [stdout] [INFO] [stdout] running 93 tests [INFO] [stdout] test dao::sqlite_impl::tests::test_constructor_creates_table ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_delete_instance_removes_it ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_create_instance_duplicate ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_get_instance_returns_inserted ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_rename_instance_not_found ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_set_alias_updates_alias ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_delete_instance_not_found ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_rename_instance_new_id_conflict ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_update_instance_changes_api_key ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_update_instance_changes_model_id_preserves_id ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_update_instance_not_found ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_rename_instance_updates_id_and_alias ... ok [INFO] [stdout] test data_migration::tests::test_migrate_copies_sqlite_files ... ok [INFO] [stdout] test data_migration::tests::test_migrate_does_not_delete_source ... ok [INFO] [stdout] test data_migration::tests::test_skip_when_home_db_exists ... ok [INFO] [stdout] test data_migration::tests::test_skip_when_no_project_data ... ok [INFO] [stdout] test domain::instance::tests::test_validate_alias_accepts_lowercase_alnum_dash_underscore ... ok [INFO] [stdout] test domain::instance::tests::test_validate_alias_rejects_empty ... ok [INFO] [stdout] test domain::instance::tests::test_validate_alias_rejects_too_long ... ok [INFO] [stdout] test opencode_fetch::tests::test_fetch_opencode_models_live ... ignored, 需要网络访问 models.dev [INFO] [stdout] test domain::instance::tests::test_validate_alias_rejects_uppercase ... ok [INFO] [stdout] test port::tests::test_read_cached_port_parses_valid_value ... ok [INFO] [stdout] test port::tests::test_read_cached_port_rejects_garbage ... ok [INFO] [stdout] test port::tests::test_read_cached_port_returns_none_when_missing ... ok [INFO] [stdout] test domain::instance::tests::test_validate_alias_rejects_whitespace ... ok [INFO] [stdout] test port::tests::test_try_bind_finds_free_port ... ok [INFO] [stdout] test port::tests::test_write_and_clear_port_file ... ok [INFO] [stdout] test data_migration::tests::test_migrate_copies_wal_files ... ok [INFO] [stdout] test port::tests::test_try_bind_skips_occupied_port ... ok [INFO] [stdout] test proxy::filter::tests::test_no_redact_when_disabled ... ok [INFO] [stdout] test proxy::filter::tests::test_redacts_sensitive ... ok [INFO] [stdout] test proxy::handler::tests::test_streaming_detection_false ... ok [INFO] [stdout] test proxy::filter::tests::test_removes_hop_by_hop ... ok [INFO] [stdout] test proxy::handler::tests::test_streaming_detection_true ... ok [INFO] [stdout] test proxy::parser::tests::test_parse_request ... ok [INFO] [stdout] test proxy::parser::tests::test_parse_response ... ok [INFO] [stdout] test proxy::parser::tests::test_parse_response_invalid_json ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_migration_drops_context_window_enabled_column ... ok [INFO] [stdout] test proxy::parser::tests::test_streaming_content_block_delta ... ok [INFO] [stdout] test proxy::parser::tests::test_streaming_message_delta ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_missing_user_id ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_missing_metadata ... ok [INFO] [stdout] test proxy::parser::tests::test_parse_request_invalid_json ... ok [INFO] [stdout] test proxy::parser::tests::test_streaming_message_start ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_malformed_json ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_no_session_id ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_success ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_user_id_not_string ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_session_id_too_long ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_redact_flat_slug ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_extract_old_format_flat_slug ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_redact_no_user_id ... ok [INFO] [stdout] test proxy::sse::tests::test_crlf_line_endings ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_redact_partial_fields ... ok [INFO] [stdout] test proxy::sse::tests::test_event_with_type ... ok [INFO] [stdout] test proxy::session_extractor::tests::test_redact_strips_device_and_account_keeps_session ... ok [INFO] [stdout] test proxy::sse::tests::test_multiple_data_lines ... ok [INFO] [stdout] test proxy::sse::tests::test_multiple_events ... ok [INFO] [stdout] test proxy::sse::tests::test_flush_incomplete ... ok [INFO] [stdout] test proxy::sse::tests::test_ignores_comments_and_unknown_fields ... ok [INFO] [stdout] test proxy::sse::tests::test_single_event ... ok [INFO] [stdout] test proxy::sse::tests::test_split_across_chunks ... ok [INFO] [stdout] test shell::tests::test_aliases_do_not_contain_disabled_compact_var ... ok [INFO] [stdout] test shell::tests::test_aliases_contain_auto_compact_window_var ... ok [INFO] [stdout] test shell::tests::test_aliases_contain_minimax_m3_1m_model_id ... ok [INFO] [stdout] test shell::tests::test_aliases_contain_kimi_for_coding_highspeed_model_id ... ok [INFO] [stdout] test shell::tests::test_function_body_preserves_zshrc_exports ... ok [INFO] [stdout] test shell::tests::test_function_body_no_parent_shell_pollution ... ok [INFO] [stdout] test shell::tests::test_function_body_subshell_reads_ys_proxy_sentinel ... ok [INFO] [stdout] test shell::tests::test_function_body_subshell_isolates_claude_url ... ok [INFO] [stdout] test shell::tests::test_ensure_zshrc_source_adds_line ... ok [INFO] [stdout] test shell::tests::test_function_body_no_parent_url_leakage ... ok [INFO] [stdout] test shell::tests::test_generate_aliases_contains_print_env_helper ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_migration_renames_old_minimax_m3_model_id ... ok [INFO] [stdout] test shell::tests::test_generate_aliases_creates_file ... ok [INFO] [stdout] test shell::tests::test_print_env_helper_runtime_output ... ok [INFO] [stdout] test shell::tests::test_ys_proxy_rejects_non_localhost_sentinel_value ... ok [INFO] [stdout] test shell::tests::test_generate_aliases_omits_unset_line ... ok [INFO] [stdout] test shell::tests::test_ys_proxy_sentinel_overrides_anthropic_base_url ... ok [INFO] [stdout] test shell::tests::test_generate_aliases_calls_print_env_helper ... ok [INFO] [stdout] test shell::tests::test_ys_proxy_wrapper_uses_command_prefix_sentinel ... ok [INFO] [stdout] test trace::store::tests::test_append_record ... ok [INFO] [stdout] test trace::store::tests::test_append_record_with_claude_session_id ... ok [INFO] [stdout] test trace::store::tests::test_create_session ... ok [INFO] [stdout] test trace::store::tests::test_delete_session_cascades ... ok [INFO] [stdout] test shell::tests::test_generate_aliases_content ... ok [INFO] [stdout] test shell::tests::test_generate_aliases_kv_cache_enabled ... ok [INFO] [stdout] test trace::store::tests::test_list_sessions_pagination ... ok [INFO] [stdout] test dao::sqlite_impl::tests::test_migration_runs_once_on_old_db_and_is_idempotent ... ok [INFO] [stdout] test trace::store::tests::test_finalize_session ... ok [INFO] [stdout] test trace::store::tests::test_list_sessions_by_date ... ok [INFO] [stdout] test proxy::upstream::tests::test_forward_post ... ok [INFO] [stdout] test proxy::upstream::tests::test_forward_streaming ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 92 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.29s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/cc_switch_tui-45d32185033d54c4) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test tests::test_is_no_open_enabled ... ok [INFO] [stderr] Running tests/aliases_test.rs (/opt/rustwide/target/debug/deps/aliases_test-c66b9eeca238dd78) [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] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_get_aliases_returns_text ... ok [INFO] [stderr] Running tests/config_test.rs (/opt/rustwide/target/debug/deps/config_test-3a276f73a9bba568) [INFO] [stdout] test test_apply_aliases_returns_path ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test test_import_skips_existing_alias ... ok [INFO] [stdout] test test_import_rejects_unknown_version ... ok [INFO] [stdout] test test_export_returns_versioned_json ... ok [INFO] [stdout] test test_import_creates_new_instances ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s [INFO] [stdout] [INFO] [stderr] Running tests/dao_test.rs (/opt/rustwide/target/debug/deps/dao_test-bc261906f323ccb1) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test test_delete_nonexistent_instance_fails ... ok [INFO] [stdout] test test_update_nonexistent_instance_fails ... ok [INFO] [stdout] test test_delete_instance ... ok [INFO] [stdout] test test_get_template ... ok [INFO] [stdout] test test_update_instance ... ok [INFO] [stdout] test test_create_and_get_instance ... ok [INFO] [stdout] test test_create_duplicate_instance_fails ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/diagnostics_test.rs (/opt/rustwide/target/debug/deps/diagnostics_test-95d77befe754f136) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_diagnostics_returns_paths_and_status ... ok [INFO] [stdout] test test_put_settings_persists ... ok [INFO] [stdout] test test_get_settings_returns_defaults ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.45s [INFO] [stdout] [INFO] [stderr] Running tests/health_test.rs (/opt/rustwide/target/debug/deps/health_test-efd91797f067fd06) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_health_returns_json ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s [INFO] [stdout] [INFO] [stderr] Running tests/instances_create_test.rs (/opt/rustwide/target/debug/deps/instances_create_test-bf211bfac8cb4311) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_create_instance_returns_201 ... ok [INFO] [stdout] test test_create_duplicate_alias_returns_409 ... ok [INFO] [stdout] test test_create_invalid_alias_returns_400 ... ok [INFO] [stderr] Running tests/instances_list_test.rs (/opt/rustwide/target/debug/deps/instances_list_test-f895d26ad5180be2) [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_list_instances_does_not_leak_api_key ... ok [INFO] [stdout] test test_list_instances_empty_db_returns_empty_array ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s [INFO] [stdout] [INFO] [stderr] Running tests/instances_mutate_test.rs (/opt/rustwide/target/debug/deps/instances_mutate_test-7b15f2fb92a6d7ce) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test test_patch_instance_not_found_returns_404 ... ok [INFO] [stdout] test test_duplicate_collision_returns_409 ... ok [INFO] [stdout] test test_delete_instance_returns_204 ... ok [INFO] [stdout] test test_patch_instance_updates_model_and_apikey ... ok [INFO] [stdout] test test_duplicate_instance_adds_copy_suffix ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s [INFO] [stdout] [INFO] [stderr] Running tests/opencode_test.rs (/opt/rustwide/target/debug/deps/opencode_test-a7820e93c4384619) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_opencode_config_not_found_returns_404 ... ok [INFO] [stdout] test test_get_opencode_config_returns_json ... ok [INFO] [stdout] test test_apply_opencode_config_returns_path ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s [INFO] [stdout] [INFO] [stderr] Running tests/static_fallback_test.rs (/opt/rustwide/target/debug/deps/static_fallback_test-7621355be7bfef77) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_spa_fallback_for_unknown_path ... ok [INFO] [stdout] test test_get_root_returns_index_html ... ok [INFO] [stdout] test test_api_health_responds ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stderr] Running tests/template_test.rs (/opt/rustwide/target/debug/deps/template_test-c4e12194e8cfc797) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stderr] Running tests/templates_test.rs (/opt/rustwide/target/debug/deps/templates_test-87629139a873aa81) [INFO] [stdout] test test_minimax_template_registered ... ok [INFO] [stdout] test test_kimi_template_registered ... 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] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_templates_returns_built_in_list ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stderr] Doc-tests cc_switch_tui [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" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f", kill_on_drop: false }` [INFO] [stdout] 95195341609f0b84337bbf34d8ba90959479f00842e574fb0cd37058e845c74f