[INFO] cloning repository https://github.com/croppedtravelleralex/CodexAccountManage
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/croppedtravelleralex/CodexAccountManage" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcroppedtravelleralex%2FCodexAccountManage", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcroppedtravelleralex%2FCodexAccountManage'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2fc994727ea28dbdf87589e051ae29f26d5e6475
[INFO] testing croppedtravelleralex/CodexAccountManage against master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcroppedtravelleralex%2FCodexAccountManage" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/croppedtravelleralex/CodexAccountManage
[INFO] finished tweaking git repo https://github.com/croppedtravelleralex/CodexAccountManage
[INFO] tweaked toml for git repo https://github.com/croppedtravelleralex/CodexAccountManage written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/croppedtravelleralex/CodexAccountManage on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/croppedtravelleralex/CodexAccountManage 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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded find-msvc-tools v0.1.8
[INFO] [stderr]   Downloaded cc v1.2.54
[INFO] [stderr]   Downloaded tokio-tungstenite v0.28.0
[INFO] [stderr]   Downloaded tungstenite v0.28.0
[INFO] [stderr]   Downloaded zmij v1.0.17
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.35
[INFO] [stderr]   Downloaded zerocopy v0.8.35
[INFO] [stderr]   Downloaded hashlink v0.9.1
[INFO] [stderr]   Downloaded rusqlite v0.31.0
[INFO] [stderr]   Downloaded libsqlite3-sys v0.28.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6f6f922fdbdd06ff5541193dba9546a67370e1c85c0c52dbf7205cd4435bcf66
[INFO] running `Command { std: "docker" "start" "-a" "6f6f922fdbdd06ff5541193dba9546a67370e1c85c0c52dbf7205cd4435bcf66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6f6f922fdbdd06ff5541193dba9546a67370e1c85c0c52dbf7205cd4435bcf66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6f6f922fdbdd06ff5541193dba9546a67370e1c85c0c52dbf7205cd4435bcf66", kill_on_drop: false }`
[INFO] [stdout] 6f6f922fdbdd06ff5541193dba9546a67370e1c85c0c52dbf7205cd4435bcf66
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2a16d7db14a30dded39b0da89e8647be353042e9baca87142f069fbbac526680
[INFO] running `Command { std: "docker" "start" "-a" "2a16d7db14a30dded39b0da89e8647be353042e9baca87142f069fbbac526680", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling find-msvc-tools v0.1.8
[INFO] [stderr]    Compiling bytes v1.11.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling zerocopy v0.8.35
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling slab v0.4.11
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling zmij v1.0.17
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling data-encoding v2.10.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling ryu v1.0.22
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling webpki-roots v1.0.5
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling ascii v1.1.0
[INFO] [stderr]    Compiling chunked_transfer v1.5.0
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling codexmanager-service v1.0.0 (/opt/rustwide/workdir/crates/service)
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling socket2 v0.6.2
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling tiny_http v0.12.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling cc v1.2.54
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tungstenite v0.28.0
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[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 serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tokio-tungstenite v0.28.0
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling webbrowser v0.8.15
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling codexmanager-core v1.0.0 (/opt/rustwide/workdir/crates/core)
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.19
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling axum v0.8.8
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 19s
[INFO] running `Command { std: "docker" "inspect" "2a16d7db14a30dded39b0da89e8647be353042e9baca87142f069fbbac526680", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2a16d7db14a30dded39b0da89e8647be353042e9baca87142f069fbbac526680", kill_on_drop: false }`
[INFO] [stdout] 2a16d7db14a30dded39b0da89e8647be353042e9baca87142f069fbbac526680
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 613f0d3f00581abd660714268b1cb10886f31b2d5b5dec92db2d7c2266f4ea28
[INFO] running `Command { std: "docker" "start" "-a" "613f0d3f00581abd660714268b1cb10886f31b2d5b5dec92db2d7c2266f4ea28", kill_on_drop: false }`
[INFO] [stderr]    Compiling codexmanager-core v1.0.0 (/opt/rustwide/workdir/crates/core)
[INFO] [stderr]    Compiling codexmanager-service v1.0.0 (/opt/rustwide/workdir/crates/service)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 21.98s
[INFO] running `Command { std: "docker" "inspect" "613f0d3f00581abd660714268b1cb10886f31b2d5b5dec92db2d7c2266f4ea28", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "613f0d3f00581abd660714268b1cb10886f31b2d5b5dec92db2d7c2266f4ea28", kill_on_drop: false }`
[INFO] [stdout] 613f0d3f00581abd660714268b1cb10886f31b2d5b5dec92db2d7c2266f4ea28
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 405a7f98bd22424dc79bfba2dcf0fdff53377c8d52b592bbade4a9877018f610
[INFO] running `Command { std: "docker" "start" "-a" "405a7f98bd22424dc79bfba2dcf0fdff53377c8d52b592bbade4a9877018f610", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.38s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/codexmanager_core-9930fc92dedfef34)
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test rpc::types::tests::account_list_params_default_to_first_page_with_five_items ... ok
[INFO] [stdout] test rpc::types::tests::account_list_result_serialization_includes_pagination_fields ... ok
[INFO] [stdout] test rpc::types::tests::request_log_filter_summary_serialization_uses_camel_case ... ok
[INFO] [stdout] test rpc::types::tests::account_summary_serialization_matches_compact_contract ... ok
[INFO] [stdout] test rpc::types::tests::request_log_list_params_default_to_first_page_with_twenty_items ... ok
[INFO] [stdout] test rpc::types::tests::request_log_list_result_serialization_includes_pagination_fields ... ok
[INFO] [stdout] test rpc::types::tests::request_log_summary_serialization_includes_trace_route_fields ... ok
[INFO] [stdout] test storage::request_log_query::tests::prefixed_account_query_supports_alias ... ok
[INFO] [stdout] test storage::request_log_query::tests::prefixed_field_query_keeps_like_mode_by_default ... ok
[INFO] [stdout] test storage::request_log_query::tests::prefixed_field_query_supports_exact_mode ... ok
[INFO] [stdout] test storage::migration_tests::account_meta_sql_migration_coexists_with_legacy_compat_marker ... ok
[INFO] [stdout] test storage::migration_tests::sql_migration_can_fallback_to_compat_when_schema_already_exists ... ok
[INFO] [stdout] test storage::migration_tests::api_key_profile_migration_backfills_existing_keys ... ok
[INFO] [stdout] test storage::request_logs::tests::token_stat_failure_still_commits_request_log ... ok
[INFO] [stdout] test storage::migration_tests::file_open_enables_wal_and_normal_synchronous ... ok
[INFO] [stdout] test storage::request_logs::tests::request_logs_filtered_summary_aggregates_counts_and_tokens ... ok
[INFO] [stdout] test storage::request_logs::tests::method_exact_query_matches_composite_index ... ok
[INFO] [stdout] test storage::request_logs::tests::request_logs_support_backend_pagination_and_status_filters ... ok
[INFO] [stdout] test storage::request_logs::tests::key_exact_query_matches_composite_index ... ok
[INFO] [stdout] test storage::migration_tests::request_logs_compact_migration_drops_legacy_usage_columns_and_preserves_rows ... ok
[INFO] [stdout] test storage::migration_tests::accounts_sort_index_migration_adds_sort_updated_at_index ... ok
[INFO] [stdout] test storage::migration_tests::key_hash_index_migration_adds_api_keys_index ... ok
[INFO] [stdout] test storage::migration_tests::init_tracks_schema_migrations_and_is_idempotent ... ok
[INFO] [stdout] test storage::migration_tests::usage_snapshot_latest_index_migration_adds_captured_id_index ... ok
[INFO] [stdout] test storage::request_logs::tests::insert_request_log_with_token_stat_is_visible_via_join ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/auth.rs (/opt/rustwide/target/debug/deps/auth-d6a0edc6c81890f3)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test parse_id_token_claims_extracts_email_and_sub ... ok
[INFO] [stdout] test extract_token_exp_reads_exp_claim ... ok
[INFO] [stdout] test build_authorize_url_matches_codex ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/storage.rs (/opt/rustwide/target/debug/deps/storage-2c1cdae472f59bf7)
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test storage_gateway_candidates_exclude_unavailable_or_missing_token_accounts ... ok
[INFO] [stdout] test token_upsert_keeps_refresh_schedule_columns ... ok
[INFO] [stdout] test storage_login_session_roundtrip ... ok
[INFO] [stdout] test storage_can_update_account_status ... ok
[INFO] [stdout] test request_token_stats_can_summarize_total_tokens_by_key ... ok
[INFO] [stdout] test storage_api_keys_include_profile_fields ... ok
[INFO] [stdout] test storage_can_find_token_and_account_by_account_id ... ok
[INFO] [stdout] test storage_can_roundtrip_api_key_secret ... ok
[INFO] [stdout] test storage_updates_account_status_only_when_changed ... ok
[INFO] [stdout] test storage_can_insert_account_and_token ... ok
[INFO] [stdout] test latest_usage_snapshots_break_ties_by_latest_id ... ok
[INFO] [stdout] test request_log_today_summary_reads_from_token_stats_table ... ok
[INFO] [stdout] test clear_request_logs_keeps_token_stats_for_usage_summary ... ok
[INFO] [stdout] test insert_request_log_with_token_stat_writes_both_tables_in_one_call ... ok
[INFO] [stdout] test storage_account_usage_filters_support_sql_pagination ... ok
[INFO] [stdout] test request_logs_support_prefixed_query_filters ... ok
[INFO] [stderr]      Running tests/usage.rs (/opt/rustwide/target/debug/deps/usage-24074d0c69d9b8f0)
[INFO] [stdout] test usage_snapshots_can_prune_history_per_account ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.36s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test usage_snapshot_parsed ... 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/version.rs (/opt/rustwide/target/debug/deps/version-82b4d129b300c6dd)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test core_version_is_set ... 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 unittests src/lib.rs (/opt/rustwide/target/debug/deps/codexmanager_service-41d530e736f55598)
[INFO] [stdout] 
[INFO] [stdout] running 455 tests
[INFO] [stdout] test account::availability::tests::availability_marks_ok_available ... ok
[INFO] [stdout] test account::availability::tests::availability_marks_missing_secondary_available_when_both_secondary_fields_absent ... ok
[INFO] [stdout] test account::availability::tests::availability_marks_missing_primary_unavailable ... ok
[INFO] [stdout] test account::cleanup::tests::free_plan_detection_accepts_credits_json_marker ... ok
[INFO] [stdout] test account::cleanup::tests::free_plan_detection_rejects_paid_or_unknown_variants ... ok
[INFO] [stdout] test account::availability::tests::availability_marks_partial_secondary_missing_unavailable ... ok
[INFO] [stdout] test account::export::tests::sanitize_file_stem_replaces_windows_invalid_chars ... ok
[INFO] [stdout] test account::export::tests::sanitize_file_stem_trims_tailing_space_and_dot ... ok
[INFO] [stdout] test account::cleanup::tests::free_plan_detection_accepts_common_variants ... ok
[INFO] [stdout] test account::availability::tests::availability_marks_exhausted_secondary_unavailable ... ok
[INFO] [stdout] test account::import::tests::extract_token_payload_supports_flat_codex_format ... ok
[INFO] [stdout] test account::import::tests::extract_token_payload_supports_camel_case_fields ... ok
[INFO] [stdout] test account::plan::tests::free_plan_detection_accepts_common_variants ... ok
[INFO] [stdout] test account::import::tests::resolve_logical_account_id_distinguishes_workspace_under_same_chatgpt ... ok
[INFO] [stdout] test account::plan::tests::free_plan_detection_rejects_paid_or_unknown_variants ... ok
[INFO] [stdout] test account::plan::tests::free_plan_detection_accepts_credits_json_marker ... ok
[INFO] [stdout] test apikey::models::tests::merge_model_options_appends_only_new_models ... ok
[INFO] [stdout] test apikey::models::tests::merge_model_options_keeps_cache_when_remote_has_no_new_items ... ok
[INFO] [stdout] test account::plan::tests::single_window_long_usage_snapshot_counts_as_free_like ... ok
[INFO] [stdout] test account::import::tests::resolve_logical_account_id_is_stable_when_scope_is_stable ... ok
[INFO] [stdout] test app_settings::api::current::tests::free_account_max_model_options_reuse_cached_model_picker_options ... ok
[INFO] [stdout] test account::plan::tests::extract_plan_type_from_id_token_reads_chatgpt_claim ... ok
[INFO] [stdout] test app_settings::api::current::tests::free_account_max_model_options_fallback_to_curated_defaults ... ok
[INFO] [stdout] test auth::account::tests::resolve_plan_type_falls_back_to_id_token_when_access_claims_missing ... ok
[INFO] [stdout] test auth::account::tests::resolve_plan_type_preserves_unknown_raw_value_for_diagnostics ... ok
[INFO] [stdout] test auth::account::tests::resolve_plan_type_prefers_latest_access_token_claims ... ok
[INFO] [stdout] test auth::callback::tests::callback_html_response_forces_connection_close ... ok
[INFO] [stdout] test auth::callback::tests::callback_success_page_contains_auto_close_script ... ok
[INFO] [stdout] test auth::callback::tests::callback_error_page_escapes_message ... ok
[INFO] [stdout] test auth::callback::tests::login_server_reports_port_in_use ... ok
[INFO] [stdout] test auth::callback::tests::login_server_rejects_non_loopback_by_default ... ok
[INFO] [stdout] test auth::callback::tests::login_start_fails_when_login_server_cannot_bind ... ok
[INFO] [stdout] test auth::callback::tests::oauth_callback_error_message_maps_missing_entitlement ... ok
[INFO] [stdout] test auth::callback::tests::resolve_redirect_uri_prefers_login_server ... ok
[INFO] [stdout] test auth::tokens::tests::build_account_storage_id_keeps_login_scope_shape ... ok
[INFO] [stdout] test auth::tokens::tests::ensure_workspace_allowed_accepts_matching_auth_chatgpt_account_id ... ok
[INFO] [stdout] test auth::tokens::tests::ensure_workspace_allowed_rejects_mismatched_workspace ... ok
[INFO] [stdout] test auth::tokens::tests::format_api_key_exchange_status_error_appends_debug_headers ... ok
[INFO] [stdout] test auth::tokens::tests::format_api_key_exchange_status_error_uses_identity_header_when_body_empty ... ok
[INFO] [stdout] test auth::tokens::tests::format_token_endpoint_status_error_appends_debug_headers ... ok
[INFO] [stdout] test auth::tokens::tests::format_token_endpoint_status_error_accepts_raw_error_json_header ... ok
[INFO] [stdout] test auth::tokens::tests::format_token_endpoint_status_error_marks_cloudflare_blocked_kind ... ok
[INFO] [stdout] test auth::tokens::tests::format_token_endpoint_status_error_uses_cloudflare_edge_kind_when_only_cf_ray_exists ... ok
[INFO] [stdout] test auth::tokens::tests::format_token_endpoint_status_error_uses_header_only_blocked_signal ... ok
[INFO] [stdout] test auth::tokens::tests::issuer_uses_loopback_host_accepts_local_test_issuers ... ok
[INFO] [stdout] test auth::tokens::tests::issuer_uses_loopback_host_rejects_remote_issuers ... ok
[INFO] [stdout] test account::import::tests::existing_account_index_next_sort_uses_step_five ... ok
[INFO] [stdout] test account::import::tests::import_single_item_reuses_existing_login_account_by_scope_identity ... ok
[INFO] [stdout] test auth::tokens::tests::parse_token_endpoint_error_preserves_plain_text_for_display ... ok
[INFO] [stdout] test auth::tokens::tests::parse_token_endpoint_error_prefers_error_description ... ok
[INFO] [stdout] test auth::tokens::tests::parse_token_endpoint_error_reads_nested_error_message_and_code ... ok
[INFO] [stdout] test auth::tokens::tests::parse_token_endpoint_error_summarizes_blocked_cloudflare_html ... ok
[INFO] [stdout] test auth::tokens::tests::parse_token_endpoint_error_summarizes_challenge_html ... ok
[INFO] [stdout] test auth::tokens::tests::parse_token_endpoint_error_summarizes_generic_html ... ok
[INFO] [stdout] test account::import::tests::import_single_item_prefers_meta_fields_for_new_account ... ok
[INFO] [stdout] test errors::tests::classify_known_messages ... ok
[INFO] [stdout] test gateway::availability_tests::auth_headers::drop_incoming_header_for_failover_strips_session_affinity ... ok
[INFO] [stdout] test gateway::availability_tests::auth_headers::drop_incoming_header_keeps_session_affinity_for_primary_attempt ... ok
[INFO] [stdout] test account::plan::tests::free_or_single_window_account_accepts_weekly_single_window_without_plan_claim ... ok
[INFO] [stdout] test auth::tokens::tests::next_account_sort_uses_step_five ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::compute_url_keeps_v1_for_models_on_codex_backend ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::compute_url_keeps_compact_responses_for_codex_backend ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::models_path_does_not_try_openai_fallback ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::normalize_models_path_keeps_existing_query_string ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::normalize_models_path_keeps_original_path ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::normalize_upstream_base_url_for_chatgpt_host ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::normalize_upstream_base_url_keeps_existing_backend_path ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::status_fallback_only_triggers_for_responses_path ... ok
[INFO] [stdout] test gateway::availability_tests::auth_headers::resolve_openai_bearer_token_uses_cached_storage_value ... ok
[INFO] [stdout] test auth::tokens::tests::pick_existing_account_matches_exact_workspace_scope ... ok
[INFO] [stdout] test gateway::availability_tests::fallback_rules::challenge_detection_requires_html_content_type ... ok
[INFO] [stdout] test gateway::availability_tests::fallback_rules::cooldown_reason_maps_status ... ok
[INFO] [stdout] test gateway::availability_tests::fallback_rules::html_content_type_detection ... ok
[INFO] [stdout] test gateway::availability_tests::metrics_tokens::metrics_prometheus_contains_expected_series ... ok
[INFO] [stdout] test auth::tokens::tests::pick_existing_account_requires_exact_scope_when_workspace_present ... ok
[INFO] [stdout] test gateway::availability_tests::metrics_tokens::rpc_metrics_track_failures_and_duration ... ok
[INFO] [stdout] test gateway::availability_tests::metrics_tokens::token_exchange_lock_reuses_same_account_lock ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_json_response_deduplicates_consecutive_identical_text_blocks ... ok
[INFO] [stdout] test gateway::availability_tests::metrics_tokens::usage_refresh_metrics_track_success_and_failure ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_json_response_maps_from_openai_responses_shape ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_json_response_maps_from_openai_shape ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_json_response_maps_openai_error_body ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_json_response_maps_openai_tool_calls ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_json_response_maps_responses_function_call_input_field ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_messages_request_drops_query_params ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_json_response_maps_event_stream ... ok
[INFO] [stdout] test gateway::availability_tests::failover_paths::failover_on_missing_usage ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_messages_request_sets_prompt_cache_key ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_sse_response_maps_event_stream ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_request_ignores_unsupported_block_type ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_sse_response_maps_openai_responses_completed_event ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_sse_response_uses_output_item_done_when_completed_output_empty ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_sse_response_maps_openai_tool_call_deltas ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_stream_request_uses_sse_adapter ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_tools_request_accepts_type_only_tool_definition ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_tools_request_respects_disable_parallel_tool_use ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_tools_request_maps_to_openai_tools_and_tool_choice ... ok
[INFO] [stdout] test gateway::availability_tests::protocol_adapter::anthropic_messages_request_maps_to_responses ... ok
[INFO] [stdout] test app_settings::ui::tests::codex_cli_default_path_round_trips_and_clears ... ok
[INFO] [stdout] test auth::tokens::tests::obtain_api_key_matches_official_login_server_headers ... ok
[INFO] [stdout] test auth::tokens::tests::exchange_code_for_tokens_matches_official_login_server_headers ... ok
[INFO] [stdout] test auth::account::tests::login_with_chatgpt_auth_tokens_syncs_codex_auth_file ... ok
[INFO] [stdout] test gateway::availability_tests::fallback_rules::apply_request_overrides_maps_extra_high_to_xhigh ... ok
[INFO] [stdout] test gateway::availability_tests::fallback_rules::apply_request_overrides_accepts_xhigh ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_compact_header_profile_matches_remote_compact_shape ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_skips_account_header_when_disabled ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_compact_header_profile_omits_subagent_without_explicit_source ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_compact_header_profile_skips_cookie_when_cpa_no_cookie_mode_enabled ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_can_disable_affinity_headers ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_does_not_forward_conversation_header_even_with_fallback ... ok
[INFO] [stdout] test gateway::cooldown::tests::lookup_evicts_expired_target_entry_without_full_scan ... ok
[INFO] [stdout] test gateway::cooldown::tests::mark_path_cleanup_prunes_expired_entries ... ok
[INFO] [stdout] test gateway::cooldown::tests::non_rate_limited_mark_keeps_existing_behavior_without_offense_count ... ok
[INFO] [stdout] test gateway::cooldown::tests::rate_limit_ladder_maps_to_expected_steps ... ok
[INFO] [stdout] test gateway::cooldown::tests::rate_limited_mark_increments_and_success_clear_decays_offense ... ok
[INFO] [stdout] test gateway::cooldown::tests::rate_limited_offense_resets_after_quiet_period ... ok
[INFO] [stdout] test gateway::error_response::tests::terminal_text_response_sets_error_code_header ... ok
[INFO] [stdout] test gateway::error_response::tests::with_trace_id_header_appends_trace_header ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::bridge_error_message_reports_stream_incomplete_in_chinese ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::extract_error_hint_from_body_prefers_json_message ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::extract_error_hint_from_body_summarizes_html_body ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::extract_error_hint_from_body_summarizes_unsupported_model_detail_json ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::extract_error_hint_from_body_summarizes_unsupported_model_json ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::limit_upstream_error_hint_truncates_large_body ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::summarize_upstream_error_hint_recognizes_challenge_html ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::summarize_upstream_error_hint_recognizes_generic_html ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::output_text::tests::summarize_upstream_error_hint_recognizes_unsupported_model ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::sse_frame::tests::inspect_sse_frame_keeps_last_event_type_from_header ... ok
[INFO] [stdout] test gateway::http_bridge::aggregate::sse_frame::tests::inspect_sse_frame_keeps_last_event_type_from_json_type ... ok
[INFO] [stdout] test gateway::http_bridge::delivery::tests::compact_header_only_cf_ray_is_classified_as_cloudflare_edge ... ok
[INFO] [stdout] test gateway::http_bridge::delivery::tests::compact_header_only_identity_error_is_normalized_and_classified ... ok
[INFO] [stdout] test gateway::http_bridge::stream_readers::common::tests::classify_upstream_stream_read_error_maps_body_error ... ok
[INFO] [stdout] test gateway::http_bridge::stream_readers::common::tests::classify_upstream_stream_read_error_maps_disconnect ... ok
[INFO] [stdout] test gateway::http_bridge::stream_readers::common::tests::classify_upstream_stream_read_error_maps_timeout ... ok
[INFO] [stdout] test gateway::http_bridge::stream_readers::common::tests::stream_terminal_messages_are_user_friendly ... ok
[INFO] [stdout] test gateway::http_bridge::tests::apply_openai_stream_meta_defaults_fills_missing_chunk_meta ... ok
[INFO] [stdout] test gateway::http_bridge::tests::collect_non_stream_json_from_sse_bytes_backfills_function_call_output_items ... ok
[INFO] [stdout] test gateway::http_bridge::tests::collect_non_stream_json_from_sse_bytes_backfills_reasoning_output_items ... ok
[INFO] [stdout] test gateway::http_bridge::tests::collect_non_stream_json_from_sse_bytes_backfills_response_output_from_deltas ... ok
[INFO] [stdout] test gateway::http_bridge::tests::collect_non_stream_json_from_sse_bytes_extracts_response_completed ... ok
[INFO] [stdout] test gateway::http_bridge::tests::collect_non_stream_json_from_sse_bytes_extracts_response_done ... ok
[INFO] [stdout] test gateway::http_bridge::tests::collect_non_stream_json_from_sse_bytes_supports_event_only_type_frames ... ok
[INFO] [stdout] test gateway::http_bridge::tests::collect_non_stream_json_from_sse_bytes_synthesizes_chat_completion_chunks ... ok
[INFO] [stdout] test gateway::http_bridge::tests::extract_openai_completed_output_text_reads_completed_output_message_text ... ok
[INFO] [stdout] test gateway::http_bridge::tests::inspect_sse_frame_recognizes_chat_completion_finish_reason_as_terminal ... ok
[INFO] [stdout] test gateway::http_bridge::tests::inspect_sse_frame_recognizes_done_marker ... ok
[INFO] [stdout] test gateway::http_bridge::tests::inspect_sse_frame_recognizes_nested_response_error_message ... ok
[INFO] [stdout] test gateway::http_bridge::tests::inspect_sse_frame_recognizes_response_done_as_terminal ... ok
[INFO] [stdout] test gateway::http_bridge::tests::inspect_sse_frame_recognizes_response_failed_as_terminal_error ... ok
[INFO] [stdout] test gateway::http_bridge::tests::live_chat_stream_skips_done_and_message_item_text_events ... ok
[INFO] [stdout] test gateway::http_bridge::tests::live_completion_stream_skips_done_and_message_item_text_events ... ok
[INFO] [stdout] test gateway::http_bridge::tests::normalize_chat_chunk_delta_role_keeps_first_and_removes_later ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_does_not_invent_client_request_id_on_failover ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_regenerates_session_on_failover ... ok
[INFO] [stdout] test auth::account::tests::export_codex_cli_profile_auth_rejects_missing_token_without_touching_auth_file ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_sse_frame_json_infers_type_from_event_name ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_sse_frame_json_supports_json_lines_without_data_prefix ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_usage_from_json_merges_response_usage_over_top_level_usage ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_usage_from_json_reads_cached_and_reasoning_details ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_usage_from_json_reads_response_usage_compat_fields ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_usage_from_sse_frame_caps_output_text ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_usage_from_sse_frame_reads_response_completed_usage ... ok
[INFO] [stdout] test gateway::http_bridge::tests::parse_usage_from_sse_frame_reads_top_level_and_response_usage ... ok
[INFO] [stdout] test gateway::http_bridge::tests::openai_chat_sse_reader_emits_keepalive_chunk_during_idle_gap ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_sets_required_headers_for_stream ... ok
[INFO] [stdout] test gateway::http_bridge::tests::synthesize_chat_completion_sse_from_json_emits_done_stream ... ok
[INFO] [stdout] test gateway::http_bridge::tests::synthesize_completions_sse_from_json_emits_done_stream ... ok
[INFO] [stdout] test gateway::incoming_headers::tests::case_insensitive_bearer_parsing_matches_sticky_derivation_behavior ... ok
[INFO] [stdout] test gateway::incoming_headers::tests::strict_bearer_parsing_matches_auth_extraction_behavior ... ok
[INFO] [stdout] test gateway::local_count_tokens::tests::estimate_input_tokens_rejects_invalid_json ... ok
[INFO] [stdout] test gateway::local_count_tokens::tests::estimate_input_tokens_rejects_non_object_payload ... ok
[INFO] [stdout] test gateway::local_count_tokens::tests::estimate_input_tokens_uses_messages_and_system_text ... ok
[INFO] [stdout] test gateway::local_models::tests::build_openai_models_list_outputs_expected_shape ... ok
[INFO] [stdout] test gateway::local_validation::request::tests::anthropic_key_applies_custom_model_and_reasoning ... ok
[INFO] [stdout] test gateway::local_validation::request::tests::anthropic_key_keeps_empty_overrides ... ok
[INFO] [stdout] test gateway::local_validation::request::tests::openai_key_keeps_empty_overrides ... ok
[INFO] [stdout] test gateway::model_picker::request::tests::append_client_version_query_adds_missing_param ... ok
[INFO] [stdout] test gateway::model_picker::request::tests::append_client_version_query_does_not_duplicate_param ... ok
[INFO] [stdout] test gateway::model_picker::request::tests::append_client_version_query_preserves_existing_query ... ok
[INFO] [stdout] test gateway::model_picker::request::tests::build_models_request_headers_match_codex_profile ... ok
[INFO] [stdout] test gateway::model_picker::request::tests::build_models_request_headers_omits_optional_headers_when_not_applicable ... ok
[INFO] [stdout] test gateway::model_picker::request::tests::summarize_models_error_response_includes_identity_error_code ... ok
[INFO] [stdout] test gateway::model_picker::request::tests::summarize_models_error_response_uses_stable_challenge_hint_and_debug_headers ... ok
[INFO] [stdout] test gateway::model_picker::tests::fallback_retry_matches_stable_html_and_challenge_summaries ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_compact_header_profile_omits_session_without_thread_anchor ... ok
[INFO] [stdout] test gateway::openai_fallback::tests::request_affinity_drops_orphan_turn_state_without_conversation_anchor ... ok
[INFO] [stdout] test gateway::openai_fallback::tests::request_affinity_drops_turn_state_without_thread_anchor ... ok
[INFO] [stdout] test gateway::openai_fallback::tests::request_affinity_uses_conversation_anchor_when_prompt_cache_missing ... ok
[INFO] [stdout] test gateway::openai_fallback::tests::request_affinity_uses_thread_anchor_for_fallback_headers ... ok
[INFO] [stdout] test gateway::protocol_adapter::prompt_cache::tests::lru_capacity_evicts_least_recently_seen ... ok
[INFO] [stdout] test gateway::protocol_adapter::prompt_cache::tests::ttl_expires_after_idle_and_is_checked_on_access ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_assistant_tool_use_preserves_text_order_in_responses_input ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_messages_are_the_only_path_adapted_to_responses ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_messages_map_disabled_thinking_to_summary_none ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_messages_map_text_and_base64_image_to_responses_input ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_messages_map_thinking_and_output_config_effort_to_responses ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_messages_map_url_image_to_responses_input ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_messages_preserve_all_tools_across_multiple_mcp_servers ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_messages_shorten_long_tool_names_and_build_restore_map ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_request::anthropic_tool_result_with_image_maps_to_function_call_output_items ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_chat_completions_still_passthrough ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_from_sse_preserves_thinking_block ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_maps_cache_usage_fields ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_maps_custom_tool_call_output_to_text_block ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_maps_custom_tool_call_to_tool_use ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_maps_image_generation_call_to_text_block ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_maps_local_shell_call_to_text_block ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_maps_reasoning_item_to_thinking_block ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_maps_web_search_call_to_text_block ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_json_response_restores_shortened_tool_name ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_sse_response_maps_cache_usage_fields ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_sse_response_maps_custom_tool_call_to_tool_use_events ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_sse_response_maps_reasoning_deltas_to_thinking_events ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_sse_response_maps_web_search_call_to_text_events ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::anthropic_response::anthropic_sse_response_restores_shortened_tool_name ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_completions_are_adapted_to_responses ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_completions_forward_service_tier_to_responses ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_completions_forward_text_verbosity_to_responses ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_completions_map_dynamic_tools_to_responses_tools ... ok
[INFO] [stdout] test gateway::model_picker::tests::sort_model_picker_candidates_prefers_plan_tier_priority ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_completions_shortens_tool_names_and_builds_restore_map ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_completions_stream_uses_sse_adapter ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_json_response_restores_shortened_tool_name ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_stream_chunk_restores_shortened_tool_name ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_completions_are_adapted_to_responses ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_completions_stream_uses_sse_adapter ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_responses_passthrough_keeps_responses_path ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_custom_tool_call_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_request::openai_chat_completions_stream_passthrough_is_forwarded ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_custom_tool_call_output_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_image_generation_call_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_local_shell_call_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_openclaw_tool_call_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_output_text_item ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_web_search_call_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_response_is_converted_from_responses_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_chunk_fallback_maps_unknown_text_event ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_chunk_maps_function_call_argument_delta ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_event_only_completed_still_outputs_text ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_collapse_avoids_done_and_item_text_duplication ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_accepts_output_item_added_text ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_completed_only_preserves_tool_calls ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_completed_only_still_outputs_text ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_delta_only_preserves_custom_tool_calls ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_delta_only_preserves_tool_calls ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_done_only_still_outputs_text ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_is_collapsed_to_chat_completion_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_outputs_web_search_summary_text ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_completions_response_is_converted_from_responses_json ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_completions_stream_chunk_fallback_maps_unknown_text_event ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_completions_stream_completed_only_still_outputs_text ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_completions_stream_done_only_still_outputs_text ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_completions_stream_event_only_done_still_outputs_text ... ok
[INFO] [stdout] test gateway::request_gate::tests::different_scope_uses_different_lock_instances ... ok
[INFO] [stdout] test gateway::request_gate::tests::same_scope_reuses_same_lock_instance ... ok
[INFO] [stdout] test gateway::request_gate::tests::stale_shared_lock_entry_is_not_reclaimed ... ok
[INFO] [stdout] test gateway::request_gate::tests::stale_unshared_lock_entry_is_reclaimed ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_falls_back_gpt_5_3_codex_to_gpt_5_2_codex_price ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_matches_openai_gpt54_large_context_prices ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_matches_openai_gpt54_prices ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_matches_openai_gpt54_pro_large_context_prices ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_matches_openai_gpt54_pro_prices ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_matches_openai_gpt5_family_prices ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_matches_openai_gpt5_mini_and_52_prices ... ok
[INFO] [stdout] test gateway::request_log::tests::estimate_cost_uses_cached_input_rate_for_gpt_5_1_codex ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::chat_completions_accepts_responses_style_payload ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::chat_completions_normalizes_responses_function_tools ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::chat_completions_stream_enforces_include_usage ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::chat_completions_stream_preserves_options_while_enabling_usage ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::chat_completions_uses_reasoning_effort_and_drops_non_official_keys ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::non_matching_endpoint_keeps_non_json_body ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_compact_defaults_parallel_tool_calls_to_false_for_codex_backend ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_compact_uses_codex_compat_rewrite ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_defaults_empty_include_without_reasoning_for_codex_backend ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_defaults_tool_choice_and_reasoning_include_for_codex_backend ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_dynamic_tools_are_mapped_to_tools_for_codex_backend ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_infers_prompt_cache_key_from_conversation_id_for_codex_backend ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_input_string_normalized_to_list ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_keeps_parallel_tool_calls_missing_when_tools_are_present ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_normalizes_fast_service_tier_to_priority_for_codex_backend ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_overrides_model_and_reasoning_effort ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_passthrough_for_non_codex_upstream ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_retains_service_tier_for_codex_supported_fields ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_stream_and_store_are_forced_for_codex_backend ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_skips_cookie_when_cpa_no_cookie_mode_enabled ... ok
[INFO] [stdout] test gateway::request_rewrite::tests::responses_stream_passthrough_keeps_client_stream_flag_when_enabled ... ok
[INFO] [stdout] test gateway::protocol_adapter::tests::openai_response::openai_chat_stream_response_accepts_output_item_done_text ... ok
[INFO] [stdout] test gateway::http_bridge::tests::openai_chat_sse_reader_requires_terminal_event_before_success ... ok
[INFO] [stdout] test gateway::route_hint::tests::balanced_mode_keeps_strict_round_robin_by_default ... ok
[INFO] [stdout] test gateway::route_hint::tests::balanced_round_robin_rotates_start_by_key_and_model ... ok
[INFO] [stdout] test gateway::route_hint::tests::balanced_round_robin_isolated_by_key_and_model ... ok
[INFO] [stdout] test gateway::route_hint::tests::health_p2c_promotes_healthier_candidate_in_ordered_mode ... ok
[INFO] [stdout] test gateway::route_hint::tests::route_state_capacity_evicts_lru_and_keeps_maps_in_sync ... ok
[INFO] [stdout] test gateway::route_hint::tests::set_route_strategy_accepts_aliases_and_reports_canonical_name ... ok
[INFO] [stdout] test gateway::route_quality::tests::record_path_cleanup_prunes_expired_records ... ok
[INFO] [stdout] test gateway::route_quality::tests::route_quality_penalty_evicts_expired_record ... ok
[INFO] [stdout] test gateway::route_quality::tests::route_quality_penalty_prefers_successful_accounts ... ok
[INFO] [stdout] test gateway::route_hint::tests::route_state_ttl_expires_per_key_state ... ok
[INFO] [stdout] test gateway::route_hint::tests::manual_preferred_account_is_preserved_when_current_candidates_do_not_include_it ... ok
[INFO] [stdout] test gateway::route_hint::tests::defaults_to_ordered_strategy ... ok
[INFO] [stdout] test gateway::http_bridge::tests::passthrough_sse_reader_captures_raw_html_error_body ... ok
[INFO] [stdout] test gateway::http_bridge::tests::passthrough_sse_reader_emits_keepalive_for_responses_stream ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_uses_dynamic_originator_and_residency_requirement ... ok
[INFO] [stdout] test gateway::http_bridge::tests::openai_completions_sse_reader_requires_terminal_event_before_success ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_uses_fallback_session_when_incoming_missing ... ok
[INFO] [stdout] test gateway::runtime_config::tests::set_residency_requirement_updates_env_and_cache ... ok
[INFO] [stdout] test gateway::runtime_config::tests::set_upstream_proxy_url_normalizes_socks_scheme ... ok
[INFO] [stdout] test gateway::runtime_config::tests::normalize_model_slug_accepts_auto ... ok
[INFO] [stdout] test gateway::runtime_config::tests::normalize_model_slug_maps_legacy_gpt_5_4_pro_to_gpt_5_4 ... ok
[INFO] [stdout] test gateway::runtime_config::tests::parse_proxy_list_env_limits_to_five_entries ... ok
[INFO] [stdout] test gateway::runtime_config::tests::parse_proxy_list_env_normalizes_socks_entries ... ok
[INFO] [stdout] test gateway::runtime_config::tests::set_upstream_stream_timeout_ms_updates_env_and_cache ... ok
[INFO] [stdout] test gateway::token_exchange::tests::fallback_to_access_token_uses_runtime_access_token_when_exchange_fails ... ok
[INFO] [stdout] test gateway::token_exchange::tests::same_account_reuses_exchange_lock ... ok
[INFO] [stdout] test gateway::token_exchange::tests::stale_shared_exchange_lock_entry_is_not_reclaimed ... ok
[INFO] [stdout] test gateway::token_exchange::tests::stale_unshared_exchange_lock_entry_is_reclaimed ... ok
[INFO] [stdout] test gateway::trace_log::tests::has_error_text_ignores_empty_and_dash ... ok
[INFO] [stdout] test gateway::trace_log::tests::request_record_ignores_success_without_error ... ok
[INFO] [stdout] test gateway::trace_log::tests::trace_error_state_can_mark_and_clear ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::fallback_branch::tests::fallback_non_success_5xx_does_not_failover_even_with_more_candidates ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::fallback_branch::tests::fallback_non_success_auth_and_rate_limit_can_failover_when_candidates_remain ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::fallback_branch::tests::fallback_non_success_headers_only_summary_includes_debug_headers ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::fallback_branch::tests::fallback_non_success_headers_only_summary_marks_server_error_without_debug_headers ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::fallback_branch::tests::fallback_non_success_never_failover_without_more_candidates ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::fallback_branch::tests::fallback_non_success_summary_includes_debug_headers_and_body_hint ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::fallback_branch::tests::fallback_non_success_summary_uses_plain_body_when_no_structured_hint_exists ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::primary_flow::tests::chatgpt_primary_bearer_prefers_access_token ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::primary_flow::tests::chatgpt_primary_bearer_rejects_empty_access_token ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::stateless_retry::tests::stateless_retry_disables_403_when_challenge_retry_is_disabled ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::stateless_retry::tests::stateless_retry_keeps_403_when_challenge_retry_is_enabled ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::stateless_retry::tests::stateless_retry_respects_session_affinity_guard ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::transport::tests::encode_request_body_adds_zstd_content_encoding ... ok
[INFO] [stdout] test gateway::upstream::attempt_flow::transport::tests::request_compression_only_applies_to_streaming_chatgpt_responses ... ok
[INFO] [stdout] test gateway::upstream::config::tests::fallback_base_is_disabled_even_when_env_is_set ... ok
[INFO] [stdout] test gateway::upstream::config::tests::fallback_content_type_trigger_is_limited_to_responses_path ... ok
[INFO] [stdout] test gateway::upstream::config::tests::fallback_status_trigger_is_limited_to_responses_path ... ok
[INFO] [stdout] test gateway::upstream::protocol::azure_openai::tests::static_headers_invalid_value_rejected ... ok
[INFO] [stdout] test gateway::upstream::protocol::azure_openai::tests::static_headers_parse_ok_and_detect_api_key ... ok
[INFO] [stdout] test gateway::upstream::protocol::azure_openai::tests::static_headers_without_api_key_returns_false ... ok
[INFO] [stdout] test gateway::upstream::proxy::tests::exhausted_gateway_error_includes_attempts_skips_and_last_error ... ok
[INFO] [stdout] test gateway::upstream::proxy::tests::exhausted_gateway_error_marks_cooldown_only_skip_kind ... ok
[INFO] [stdout] test gateway::upstream::proxy_pipeline::candidate_state::tests::body_for_attempt_rewrites_model_override ... ok
[INFO] [stdout] test gateway::upstream::support::backoff::tests::jitter_delay_stays_within_cap ... ok
[INFO] [stdout] test gateway::selection::tests::candidate_snapshot_cache_reuses_recent_snapshot ... ok
[INFO] [stdout] test gateway::upstream::support::candidates::tests::free_account_model_override_accepts_single_window_weekly_account ... ok
[INFO] [stdout] test gateway::selection::tests::candidates_follow_account_sort_order ... ok
[INFO] [stdout] test gateway::upstream::support::candidates::tests::free_account_model_override_skips_rewrite_when_configured_auto ... ok
[INFO] [stdout] test gateway::upstream::support::deadline::tests::effective_request_timeout_non_stream_uses_total_only ... ok
[INFO] [stdout] test gateway::upstream::support::deadline::tests::effective_request_timeout_stream_falls_back_when_one_side_missing ... ok
[INFO] [stdout] test gateway::upstream::support::deadline::tests::effective_request_timeout_stream_uses_max_total_and_stream ... ok
[INFO] [stdout] test gateway::upstream::support::candidates::tests::free_account_model_override_uses_configured_model_for_free_account ... ok
[INFO] [stdout] test gateway::upstream::support::outcome::tests::challenge_on_last_candidate_keeps_upstream_response ... ok
[INFO] [stdout] test gateway::upstream::support::outcome::tests::challenge_with_more_candidates_triggers_failover ... ok
[INFO] [stdout] test gateway::upstream::support::outcome::tests::status_404_on_last_candidate_keeps_upstream_response ... ok
[INFO] [stdout] test auth::account::tests::switch_current_account_force_syncs_manual_preferred_for_unavailable_target ... FAILED
[INFO] [stdout] test http::backend_router::tests::falls_back_to_gateway_route ... ok
[INFO] [stdout] test http::backend_router::tests::resolves_auth_callback_route ... ok
[INFO] [stdout] test http::backend_router::tests::resolves_metrics_route ... ok
[INFO] [stdout] test http::backend_router::tests::resolves_rpc_route ... ok
[INFO] [stdout] test http::backend_runtime::tests::panic_payload_message_formats_common_payloads ... ok
[INFO] [stdout] test http::backend_runtime::tests::queue_size_has_minimum_guard ... ok
[INFO] [stdout] test gateway::upstream::support::outcome::tests::status_429_with_more_candidates_triggers_failover ... ok
[INFO] [stdout] test http::header_filter::tests::request_header_filters_hop_by_hop_and_non_ascii ... ok
[INFO] [stdout] test http::header_filter::tests::request_header_keeps_ascii_turn_metadata ... ok
[INFO] [stdout] test http::header_filter::tests::request_header_keeps_normal_content_type ... ok
[INFO] [stdout] test http::header_filter::tests::response_header_filters_content_length_and_connection ... ok
[INFO] [stdout] test http::backend_runtime::tests::worker_count_has_minimum_guard ... ok
[INFO] [stdout] test http::proxy_request::tests::build_target_url_keeps_path_and_query ... ok
[INFO] [stdout] test http::proxy_request::tests::filter_request_headers_drops_forbidden_headers ... ok
[INFO] [stdout] test http::proxy_response::tests::merge_upstream_headers_filters_hop_by_hop_and_content_length ... ok
[INFO] [stdout] test gateway::upstream::support::outcome::tests::status_404_with_more_candidates_triggers_failover ... ok
[INFO] [stdout] test http::proxy_response::tests::text_error_response_sets_error_code_header ... ok
[INFO] [stdout] test http::proxy_response::tests::text_response_sets_status_and_plain_text_header ... ok
[INFO] [stdout] test http::proxy_runtime::tests::backend_base_url_uses_http_scheme ... ok
[INFO] [stdout] test gateway::upstream::support::outcome::tests::status_429_on_last_candidate_keeps_upstream_response ... ok
[INFO] [stdout] test http::rpc_endpoint::tests::normal_rpc_handler_keeps_success_shape ... ok
[INFO] [stdout] test http::rpc_endpoint::tests::panicking_rpc_handler_returns_structured_json_error ... ok
[INFO] [stdout] test requestlog::list::tests::normalize_optional_text_trims_blank_values ... ok
[INFO] [stdout] test requestlog::list::tests::normalize_status_filter_accepts_known_values ... ok
[INFO] [stdout] test requestlog::list::tests::normalize_upstream_url_keeps_custom_addresses ... ok
[INFO] [stdout] test requestlog::list::tests::normalize_upstream_url_keeps_local_addresses ... ok
[INFO] [stdout] test requestlog::list::tests::normalize_upstream_url_keeps_official_domains ... ok
[INFO] [stdout] test requestlog::list::tests::normalize_upstream_url_trims_empty_values ... ok
[INFO] [stdout] test requestlog::list::tests::request_log_list_params_default_to_first_page_with_twenty_items ... ok
[INFO] [stdout] test gateway::runtime_config::tests::reload_from_env_defaults_account_max_inflight_to_one ... ok
[INFO] [stdout] test storage::helpers::tests::open_storage_reuses_cached_connection_in_same_thread ... ok
[INFO] [stdout] test tests::login_complete_requires_params ... ok
[INFO] [stdout] test storage::helpers::tests::open_storage_reopens_when_db_path_changes ... ok
[INFO] [stdout] test usage::account_meta::tests::build_workspace_map_from_accounts_uses_preloaded_snapshot ... ok
[INFO] [stdout] test usage::account_meta::tests::clean_header_value_trims_and_drops_empty ... ok
[INFO] [stdout] test usage::account_meta::tests::build_workspace_map_falls_back_to_chatgpt_account_id ... ok
[INFO] [stdout] test usage::account_meta::tests::patch_account_meta_cached_replaces_subject_style_scope_values ... ok
[INFO] [stdout] test http::proxy_runtime::tests::local_backend_client_builds_without_system_proxy ... ok
[INFO] [stdout] test usage::aggregate::tests::aggregate_summary_preserves_unknown_counts_per_bucket ... ok
[INFO] [stdout] test usage::aggregate::tests::aggregate_summary_routes_free_single_window_account_to_secondary_bucket ... ok
[INFO] [stdout] test usage::http::tests::classify_refresh_token_auth_error_reason_maps_known_and_unknown_401 ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_auth_error_reason_from_message_tracks_canonical_messages ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_status_error_ignores_headers_for_401_reason_when_body_lacks_code ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_status_error_includes_body_snippet ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_status_error_maps_invalidated_401_to_official_message ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_status_error_maps_unknown_401_to_official_message ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_status_error_omits_empty_body ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_status_error_stabilizes_html_and_debug_headers_for_non_401 ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_status_error_uses_header_only_debug_suffix_for_empty_body ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_url_preserves_custom_issuer_and_override ... ok
[INFO] [stdout] test usage::http::tests::refresh_token_url_uses_official_default_for_openai_issuer ... ok
[INFO] [stdout] test usage::http::tests::summarize_usage_error_response_accepts_raw_error_json_header ... ok
[INFO] [stdout] test usage::http::tests::summarize_usage_error_response_stabilizes_html_and_debug_headers ... ok
[INFO] [stdout] test usage::account_meta::tests::patch_account_meta_cached_updates_preloaded_account_without_lookup ... ok
[INFO] [stdout] test usage::account_meta::tests::resolve_workspace_prefers_workspace_then_chatgpt ... ok
[INFO] [stdout] test usage::http::tests::usage_request_headers_use_official_chatgpt_account_header_name ... ok
[INFO] [stdout] test usage::keepalive::tests::keepalive_ignores_expected_idle_errors ... ok
[INFO] [stdout] test usage::refresh::refresh::batch::tests::build_usage_refresh_tasks_skips_disabled_accounts ... ok
[INFO] [stdout] test usage::refresh::refresh::errors::tests::failure_event_throttle_dedupes_within_window ... ok
[INFO] [stdout] test usage::refresh::refresh::errors::tests::failure_event_throttle_isolated_by_error_class ... ok
[INFO] [stdout] test usage::refresh::refresh::errors::tests::usage_refresh_error_class_catches_timeout_and_connection ... ok
[INFO] [stdout] test usage::refresh::refresh::errors::tests::usage_refresh_error_class_groups_by_status_code ... ok
[INFO] [stdout] test auth::account::tests::login_with_chatgpt_auth_tokens_force_syncs_manual_preferred_account ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::apply_status_missing_snapshot_keeps_account_status ... ok
[INFO] [stdout] test usage::http::tests::usage_http_client_is_cloneable ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::apply_status_skips_db_and_event_when_status_unchanged ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::apply_status_available_preserves_manual_disabled_status ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::refresh_retry_filter_matches_auth_failures ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::mark_usage_unreachable_does_not_override_manual_disabled_status ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::mark_usage_unreachable_only_marks_401_as_unavailable ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::refresh_token_auth_error_marks_account_unavailable ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::refresh_token_forbidden_without_invalid_grant_keeps_account_active ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::refresh_token_invalid_grant_on_forbidden_keeps_account_active ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::refresh_token_unknown_401_marks_account_unavailable ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::usage_refresh_failure_events_are_throttled_by_error_class ... ok
[INFO] [stdout] test usage::refresh::refresh::status_tests::usage_refresh_failure_throttle_splits_401_reason_classes ... ok
[INFO] [stdout] test usage::refresh::refresh::tests::schedule_falls_back_to_last_refresh_when_exp_missing ... ok
[INFO] [stdout] test usage::refresh::refresh::tests::enqueue_usage_refresh_for_different_accounts_keeps_queue_progress ... ok
[INFO] [stdout] test usage::refresh::refresh::tests::schedule_prefers_exp_minus_ahead ... ok
[INFO] [stdout] test usage::refresh::refresh::tests::usage_poll_batch_indices_rotate_from_cursor ... ok
[INFO] [stdout] test usage::scheduler::tests::blocking_poll_loop_adds_jitter_on_top_of_base_delay ... ok
[INFO] [stdout] test usage::scheduler::tests::blocking_poll_loop_applies_failure_backoff_with_cap_and_reset ... ok
[INFO] [stdout] test usage::scheduler::tests::blocking_poll_loop_calls_error_filter_before_sleep ... ok
[INFO] [stdout] test usage::scheduler::tests::blocking_poll_loop_runs_task_and_respects_interval ... ok
[INFO] [stdout] test usage::refresh::refresh::tests::usage_poll_cursor_advances_by_processed_count ... ok
[INFO] [stdout] test usage::scheduler::tests::parse_interval_secs_falls_back_and_applies_minimum ... ok
[INFO] [stdout] test usage::refresh::refresh::tests::enqueue_usage_refresh_for_same_account_is_deduplicated_until_finish ... ok
[INFO] [stdout] test http::proxy_runtime::tests::backend_send_failure_returns_502 ... ok
[INFO] [stdout] test http::proxy_runtime::tests::request_without_content_length_over_limit_returns_413 ... ok
[INFO] [stdout] test gateway::runtime_config::tests::reload_from_env_updates_timeout_and_cookie ... ok
[INFO] [stdout] test gateway::runtime_config::tests::set_originator_updates_env_and_dynamic_user_agent ... ok
[INFO] [stdout] test gateway::runtime_config::tests::set_request_compression_enabled_updates_env_and_cache ... ok
[INFO] [stdout] test gateway::availability_tests::upstream_headers::codex_header_profile_uses_json_accept_for_non_stream ... ok
[INFO] [stdout] test gateway::runtime_config::tests::stable_proxy_index_is_deterministic ... ok
[INFO] [stdout] test auth::account::tests::export_codex_cli_profile_auth_is_side_effect_free ... ok
[INFO] [stdout] test gateway::runtime_config::tests::set_upstream_proxy_url_updates_env_and_cache ... ok
[INFO] [stdout] test usage::http::tests::usage_http_default_headers_follow_gateway_runtime_profile ... ok
[INFO] [stdout] test auth::account::tests::switch_current_account_rejects_disabled_account_without_touching_codex_auth_file ... ok
[INFO] [stdout] test auth::account::tests::export_codex_cli_profile_auth_rejects_disabled_account_without_touching_state ... ok
[INFO] [stdout] test auth::account::tests::switch_current_account_syncs_target_codex_auth_file ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- auth::account::tests::switch_current_account_force_syncs_manual_preferred_for_unavailable_target stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'auth::account::tests::switch_current_account_force_syncs_manual_preferred_for_unavailable_target' (107) panicked at crates/service/src/auth/tests/auth_account_tests.rs:504:58:
[INFO] [stdout] switch current account: "storage unavailable"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64b52fe58c9a - std[29689e6404d28ef9]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64b52fe58c9a - std[29689e6404d28ef9]::backtrace_rs::backtrace::trace_unsynchronized::<std[29689e6404d28ef9]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64b52fe58c9a - std[29689e6404d28ef9]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64b52fe58c9a - <<std[29689e6404d28ef9]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[e929cb53b82a81ca]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64b52fe71e3a - <core[e929cb53b82a81ca]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64b52fe71e3a - core[e929cb53b82a81ca]::fmt::write
[INFO] [stdout]    6:     0x64b52fe5f622 - std[29689e6404d28ef9]::io::default_write_fmt::<alloc[9d7caffeb3b5d2c6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x64b52fe5f622 - <alloc[9d7caffeb3b5d2c6]::vec::Vec<u8> as std[29689e6404d28ef9]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x64b52fe323af - <std[29689e6404d28ef9]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64b52fe323af - std[29689e6404d28ef9]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64b52fe4e519 - std[29689e6404d28ef9]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64b52f41ac9c - <alloc[9d7caffeb3b5d2c6]::boxed::Box<dyn for<'a, 'b> core[e929cb53b82a81ca]::ops::function::Fn<(&'a std[29689e6404d28ef9]::panic::PanicHookInfo<'b>,), Output = ()> + core[e929cb53b82a81ca]::marker::Send + core[e929cb53b82a81ca]::marker::Sync> as core[e929cb53b82a81ca]::ops::function::Fn<(&std[29689e6404d28ef9]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   12:     0x64b52f41ac9c - test[a24b3028667022f7]::test_main_inner::<test[a24b3028667022f7]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64b52fe4e792 - <alloc[9d7caffeb3b5d2c6]::boxed::Box<dyn for<'a, 'b> core[e929cb53b82a81ca]::ops::function::Fn<(&'a std[29689e6404d28ef9]::panic::PanicHookInfo<'b>,), Output = ()> + core[e929cb53b82a81ca]::marker::Send + core[e929cb53b82a81ca]::marker::Sync> as core[e929cb53b82a81ca]::ops::function::Fn<(&std[29689e6404d28ef9]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   14:     0x64b52fe4e792 - std[29689e6404d28ef9]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x64b52fe32468 - std[29689e6404d28ef9]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x64b52fe27209 - std[29689e6404d28ef9]::sys::backtrace::__rust_end_short_backtrace::<std[29689e6404d28ef9]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64b52fe335bd - __rustc[3aed6af316653e63]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x64b52fe725fc - core[e929cb53b82a81ca]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64b52fe72372 - core[e929cb53b82a81ca]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x64b52f0a25c5 - <core[e929cb53b82a81ca]::result::Result<codexmanager_service[906aa1d3097be3b2]::auth::account::AccountReadResponse, alloc[9d7caffeb3b5d2c6]::string::String>>::expect
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x64b52f0e046b - codexmanager_service[906aa1d3097be3b2]::auth::account::tests::switch_current_account_force_syncs_manual_preferred_for_unavailable_target
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/service/src/auth/tests/auth_account_tests.rs:504:58
[INFO] [stdout]   22:     0x64b52f0c6737 - codexmanager_service[906aa1d3097be3b2]::auth::account::tests::switch_current_account_force_syncs_manual_preferred_for_unavailable_target::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/service/src/auth/tests/auth_account_tests.rs:446:80
[INFO] [stdout]   23:     0x64b52ee60f06 - <codexmanager_service[906aa1d3097be3b2]::auth::account::tests::switch_current_account_force_syncs_manual_preferred_for_unavailable_target::{closure#0} as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64b52f40df7b - <fn() -> core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x64b52f40df7b - test[a24b3028667022f7]::__rust_begin_short_backtrace::<core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>, fn() -> core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x64b52f41b76b - test[a24b3028667022f7]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x64b52f41b76b - <core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x64b52f41b76b - std[29689e6404d28ef9]::panicking::catch_unwind::do_call::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}>, core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x64b52f41b76b - std[29689e6404d28ef9]::panicking::catch_unwind::<core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>, core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x64b52f41b76b - std[29689e6404d28ef9]::panic::catch_unwind::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}>, core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x64b52f41b76b - test[a24b3028667022f7]::run_test_in_process
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x64b52f41b76b - test[a24b3028667022f7]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x64b52f414e84 - test[a24b3028667022f7]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x64b52f414e84 - std[29689e6404d28ef9]::sys::backtrace::__rust_begin_short_backtrace::<test[a24b3028667022f7]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x64b52f41e372 - std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked::<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x64b52f41e372 - <core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x64b52f41e372 - std[29689e6404d28ef9]::panicking::catch_unwind::do_call::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x64b52f41e372 - std[29689e6404d28ef9]::panicking::catch_unwind::<(), core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x64b52f41e372 - std[29689e6404d28ef9]::panic::catch_unwind::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x64b52f41e372 - std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked::<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x64b52f41e372 - <std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1} as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x64b52fe5778f - <alloc[9d7caffeb3b5d2c6]::boxed::Box<dyn core[e929cb53b82a81ca]::ops::function::FnOnce<(), Output = ()> + core[e929cb53b82a81ca]::marker::Send> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/alloc/src/boxed.rs:2271:9
[INFO] [stdout]   43:     0x64b52fe5778f - <std[29689e6404d28ef9]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7eb9bf8bbaa4 - <unknown>
[INFO] [stdout]   45:     0x7eb9bf948a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     auth::account::tests::switch_current_account_force_syncs_manual_preferred_for_unavailable_target
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 454 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.58s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p codexmanager-service --lib`
[INFO] running `Command { std: "docker" "inspect" "405a7f98bd22424dc79bfba2dcf0fdff53377c8d52b592bbade4a9877018f610", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "405a7f98bd22424dc79bfba2dcf0fdff53377c8d52b592bbade4a9877018f610", kill_on_drop: false }`
[INFO] [stdout] 405a7f98bd22424dc79bfba2dcf0fdff53377c8d52b592bbade4a9877018f610
