[INFO] cloning repository https://github.com/subsriram/codesurgeon
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/subsriram/codesurgeon" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsubsriram%2Fcodesurgeon", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsubsriram%2Fcodesurgeon'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ba72ca19e9c6127d037ccf761b5059d2a23ef109
[INFO] testing subsriram/codesurgeon against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsubsriram%2Fcodesurgeon" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-2-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/subsriram/codesurgeon
[INFO] finished tweaking git repo https://github.com/subsriram/codesurgeon
[INFO] tweaked toml for git repo https://github.com/subsriram/codesurgeon written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/subsriram/codesurgeon on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/subsriram/codesurgeon 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.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thousands v0.2.0
[INFO] [stderr]   Downloaded dhat v0.3.3
[INFO] [stderr]   Downloaded mimalloc v0.1.50
[INFO] [stderr]   Downloaded mintex v0.1.4
[INFO] [stderr]   Downloaded measure_time v0.8.3
[INFO] [stderr]   Downloaded ownedbytes v0.7.0
[INFO] [stderr]   Downloaded tantivy-tokenizer-api v0.3.0
[INFO] [stderr]   Downloaded tantivy-bitpacker v0.6.0
[INFO] [stderr]   Downloaded sketches-ddsketch v0.2.2
[INFO] [stderr]   Downloaded tantivy-common v0.7.0
[INFO] [stderr]   Downloaded tantivy-stacker v0.3.0
[INFO] [stderr]   Downloaded fs4 v0.8.4
[INFO] [stderr]   Downloaded hf-hub v0.3.2
[INFO] [stderr]   Downloaded tree-sitter-html v0.23.2
[INFO] [stderr]   Downloaded kqueue-sys v1.1.0
[INFO] [stderr]   Downloaded tantivy-query-grammar v0.22.0
[INFO] [stderr]   Downloaded tantivy-sstable v0.3.0
[INFO] [stderr]   Downloaded redox_syscall v0.7.5
[INFO] [stderr]   Downloaded lz4_flex v0.11.6
[INFO] [stderr]   Downloaded accelerate-src v0.3.2
[INFO] [stderr]   Downloaded tantivy-columnar v0.3.0
[INFO] [stderr]   Downloaded tree-sitter-javascript v0.25.0
[INFO] [stderr]   Downloaded fancy-regex v0.17.0
[INFO] [stderr]   Downloaded tree-sitter-python v0.25.0
[INFO] [stderr]   Downloaded tokenizers v0.20.4
[INFO] [stderr]   Downloaded tree-sitter v0.25.10
[INFO] [stderr]   Downloaded tree-sitter-md-025 v0.5.6
[INFO] [stderr]   Downloaded libmimalloc-sys v0.1.47
[INFO] [stderr]   Downloaded tree-sitter-rust v0.24.2
[INFO] [stderr]   Downloaded candle-transformers v0.10.2
[INFO] [stderr]   Downloaded tokio v1.52.2
[INFO] [stderr]   Downloaded tree-sitter-sequel v0.3.11
[INFO] [stderr]   Downloaded tree-sitter-swift v0.7.2
[INFO] [stderr]   Downloaded tantivy v0.22.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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] 29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1
[INFO] running `Command { std: "docker" "start" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1", 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" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1", 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" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling ownedbytes v0.7.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling bitpacking v0.9.3
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling utf8-ranges v1.0.5
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling tantivy-fst v0.5.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]    Compiling tantivy-bitpacker v0.6.0
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling murmurhash32 v0.3.1
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling tree-sitter v0.25.10
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling tree-sitter-javascript v0.25.0
[INFO] [stderr]    Compiling tree-sitter-swift v0.7.2
[INFO] [stderr]    Compiling tree-sitter-html v0.23.2
[INFO] [stderr]    Compiling tree-sitter-rust v0.24.2
[INFO] [stderr]    Compiling tree-sitter-typescript v0.23.2
[INFO] [stderr]    Compiling tree-sitter-md-025 v0.5.6
[INFO] [stderr]    Compiling tree-sitter-sequel v0.3.11
[INFO] [stderr]    Compiling tree-sitter-bash v0.25.1
[INFO] [stderr]    Compiling libmimalloc-sys v0.1.47
[INFO] [stderr]    Compiling tree-sitter-python v0.25.0
[INFO] [stderr]    Compiling blake3 v1.8.5
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling fastdivide v0.4.2
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling inotify v0.9.6
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling tantivy-query-grammar v0.22.0
[INFO] [stderr]    Compiling cs-core v1.0.0 (/opt/rustwide/workdir/crates/cs-core)
[INFO] [stderr]    Compiling measure_time v0.8.3
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling fs4 v0.8.4
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling tantivy-common v0.7.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling tantivy-stacker v0.3.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling sketches-ddsketch v0.2.2
[INFO] [stderr]    Compiling rust-stemmers v1.2.0
[INFO] [stderr]    Compiling tantivy-tokenizer-api v0.3.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling arc-swap v1.9.1
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling levenshtein_automata v0.2.1
[INFO] [stderr]    Compiling streaming-iterator v0.1.9
[INFO] [stderr]    Compiling oneshot v0.1.13
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling lz4_flex v0.11.6
[INFO] [stderr]    Compiling census v0.4.2
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling htmlescape v0.3.1
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling tokio v1.52.2
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling notify v6.1.1
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling tantivy-sstable v0.3.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling tantivy-columnar v0.3.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling mimalloc v0.1.50
[INFO] [stderr]    Compiling tantivy v0.22.1
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling cs-cli v1.0.0 (/opt/rustwide/workdir/crates/cs-cli)
[INFO] [stderr]    Compiling cs-mcp v1.0.0 (/opt/rustwide/workdir/crates/cs-mcp)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 35s
[INFO] running `Command { std: "docker" "inspect" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1", 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" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling tantivy-common v0.7.0
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling rust-stemmers v1.2.0
[INFO] [stderr]    Compiling sketches-ddsketch v0.2.2
[INFO] [stderr]    Compiling tantivy-tokenizer-api v0.3.0
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling tantivy-sstable v0.3.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling tantivy-stacker v0.3.0
[INFO] [stderr]    Compiling tantivy-columnar v0.3.0
[INFO] [stderr]    Compiling tantivy v0.22.1
[INFO] [stderr]    Compiling cs-core v1.0.0 (/opt/rustwide/workdir/crates/cs-core)
[INFO] [stderr]    Compiling cs-cli v1.0.0 (/opt/rustwide/workdir/crates/cs-cli)
[INFO] [stderr]    Compiling cs-mcp v1.0.0 (/opt/rustwide/workdir/crates/cs-mcp)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 50s
[INFO] running `Command { std: "docker" "inspect" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1", 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" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.65s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/codesurgeon-c3f43f16a56e4fdb)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/deps/cli-a9d368cde417c30a)
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test config_shows_context_settings ... ok
[INFO] [stdout] test config_displays_config_contents ... ok
[INFO] [stdout] test config_shows_defaults_when_missing ... ok
[INFO] [stdout] test context_on_empty_workspace_exits_zero ... ok
[INFO] [stdout] test context_without_task_exits_nonzero ... ok
[INFO] [stdout] test context_accepts_language_and_file_hint_flags ... ok
[INFO] [stdout] test index_empty_workspace_exits_zero ... ok
[INFO] [stdout] test context_accepts_budget_flag ... ok
[INFO] [stdout] test memory_delete_nonexistent_exits_nonzero ... ok
[INFO] [stdout] test index_workspace_with_python_file ... ok
[INFO] [stdout] test index_progress_output_to_stderr ... ok
[INFO] [stdout] test impact_json_emits_valid_json ... ok
[INFO] [stdout] test no_subcommand_exits_nonzero ... ok
[INFO] [stdout] test anchors_json_emits_valid_json ... ok
[INFO] [stdout] test context_json_emits_valid_json ... ok
[INFO] [stdout] test observe_then_memory_round_trip ... ok
[INFO] [stdout] test memory_output_includes_id ... ok
[INFO] [stdout] test search_without_query_exits_nonzero ... ok
[INFO] [stdout] test memory_delete_removes_observation ... ok
[INFO] [stdout] test search_with_negative_budget_exits_nonzero ... ok
[INFO] [stdout] test search_on_empty_workspace_exits_zero ... ok
[INFO] [stdout] test index_force_reparses_all_files ... ok
[INFO] [stdout] test submit_lsp_edges_file_exits_zero ... ok
[INFO] [stdout] test submit_lsp_edges_stdin_exits_zero ... ok
[INFO] [stdout] test status_on_empty_workspace_exits_zero ... ok
[INFO] [stdout] test unknown_subcommand_exits_nonzero ... ok
[INFO] [stdout] test submit_lsp_edges_missing_file_exits_nonzero ... ok
[INFO] [stdout] test logs_go_to_stderr_not_stdout_under_json ... ok
[INFO] [stdout] test submit_lsp_edges_bad_json_exits_nonzero ... ok
[INFO] [stdout] test search_finds_indexed_symbol ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.97s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cs_core-2540fb7b746a5379)
[INFO] [stdout] 
[INFO] [stdout] running 200 tests
[INFO] [stdout] test anchors::tests::camelcase_accepted ... ok
[INFO] [stdout] test anchors::tests::dotted_prose_three_segments ... ok
[INFO] [stdout] test anchors::tests::dotted_prose_call_extracted ... ok
[INFO] [stdout] test anchors::tests::dedup ... ok
[INFO] [stdout] test anchors::tests::code_block_dotted_marked_as_from_dotted_call ... ok
[INFO] [stdout] test anchors::tests::empty_query ... ok
[INFO] [stdout] test anchors::tests::extract_prose_snake_case ... ok
[INFO] [stdout] test anchors::tests::plain_english_rejected ... ok
[INFO] [stdout] test anchors::tests::stop_words_filtered ... ok
[INFO] [stdout] test anchors::tests::import_outside_code_fence ... ok
[INFO] [stdout] test anchors::tests::extract_code_block_api_call ... ok
[INFO] [stdout] test anchors::tests::traceback_function_names_extracted ... ok
[INFO] [stdout] test anchors::tests::code_block_before_prose ... ok
[INFO] [stdout] test anchors::tests::traceback_dotted_method_frame ... ok
[INFO] [stdout] test anchors::tests::traceback_without_trace_shape_is_noop ... ok
[INFO] [stdout] test anchors::tests::traceback_short_frame_name_skipped ... ok
[INFO] [stdout] test anchors::tests::traceback_frame_stop_word_filtered ... ok
[INFO] [stdout] test anchors::tests::extract_import_statement ... ok
[INFO] [stdout] test anchors::tests::traceback_synthetic_frames_skipped ... ok
[INFO] [stdout] test db::tests::leaf_of_name_extracts_trailing_segment ... ok
[INFO] [stdout] test db::tests::delete_embeddings_for_symbols_empty_list_noop ... ok
[INFO] [stdout] test db::tests::delete_edges_for_symbols_empty_list_noop ... ok
[INFO] [stdout] test db::tests::log_query_round_trip ... ok
[INFO] [stdout] test db::tests::query_log_rows_zero_days_returns_empty ... ok
[INFO] [stdout] test db::tests::delete_file_symbols_purges_edges ... ok
[INFO] [stdout] test db::tests::delete_edges_for_symbols_batches_over_500 ... ok
[INFO] [stdout] test db::tests::query_log_rows_returns_all_within_window ... ok
[INFO] [stdout] test db::tests::leaf_name_migration_backfills_existing_rows ... ok
[INFO] [stdout] test edges::tests::defined_in_skips_import_symbols ... ok
[INFO] [stdout] test edges::tests::calls_do_not_cross_languages ... ok
[INFO] [stdout] test edges::tests::impl_edges_dont_match_non_type_symbols ... ok
[INFO] [stdout] test edges::tests::impl_edges_local_trait_emits_both ... ok
[INFO] [stdout] test edges::tests::impl_edges_skip_external_trait_but_keep_defined_in ... ok
[INFO] [stdout] test edges::tests::imports_do_not_cross_languages ... ok
[INFO] [stdout] test edges::tests::inherits_does_not_cross_languages ... ok
[INFO] [stdout] test edges::tests::inherits_python_multiple_bases ... ok
[INFO] [stdout] test edges::tests::inherits_python_pep695_generic_class ... ok
[INFO] [stdout] test edges::tests::inherits_python_qualified_base ... ok
[INFO] [stdout] test edges::tests::inherits_rust_does_not_confuse_pascalcase_where ... ok
[INFO] [stdout] test edges::tests::inherits_rust_no_supertraits ... ok
[INFO] [stdout] test edges::tests::inherits_rust_supertraits ... ok
[INFO] [stdout] test db::tests::workspace_token_estimate_empty_db_returns_zero ... ok
[INFO] [stdout] test edges::tests::inherits_rust_supertraits_with_generics_and_where ... ok
[INFO] [stdout] test edges::tests::inherits_skips_non_local_parents ... ok
[INFO] [stdout] test edges::tests::inherits_swift_class_inheritance_and_conformance ... ok
[INFO] [stdout] test edges::tests::inherits_swift_class_with_leading_attribute ... ok
[INFO] [stdout] test edges::tests::inherits_rust_supertraits_multiline_where ... ok
[INFO] [stdout] test edges::tests::inherits_swift_enum_raw_value_emitted_when_local ... ok
[INFO] [stdout] test edges::tests::inherits_swift_enum_raw_value_skipped_when_non_local ... ok
[INFO] [stdout] test edges::tests::inherits_swift_keyword_picks_earliest_match ... ok
[INFO] [stdout] test edges::tests::inherits_swift_protocol_inheritance ... ok
[INFO] [stdout] test edges::tests::inherits_swift_struct_conformance ... ok
[INFO] [stdout] test edges::tests::inherits_ts_class_extends_skips_implements ... ok
[INFO] [stdout] test edges::tests::inherits_ts_extends_inside_generic_constraint ... ok
[INFO] [stdout] test edges::tests::inherits_ts_interface_extends_multiple ... ok
[INFO] [stdout] test edges::tests::inherits_ts_js_share_family ... ok
[INFO] [stdout] test edges::tests::no_duplicate_defined_in_between_extractors ... ok
[INFO] [stdout] test edges::tests::references_do_not_cross_languages ... ok
[INFO] [stdout] test engine::consolidation_tests::merge_deduplicates_identical_queries ... ok
[INFO] [stdout] test engine::consolidation_tests::merge_fallback_for_non_standard_content ... ok
[INFO] [stdout] test engine::consolidation_tests::merge_single_item_cluster ... ok
[INFO] [stdout] test engine::consolidation_tests::merge_standard_auto_format ... ok
[INFO] [stdout] test engine::secrets_tests::aws_key_detected ... ok
[INFO] [stdout] test engine::secrets_tests::certificate_key_extensions_blocked ... ok
[INFO] [stdout] test engine::secrets_tests::clean_source_file_not_flagged ... ok
[INFO] [stdout] test engine::secrets_tests::dotenv_blocked ... ok
[INFO] [stdout] test db::tests::symbols_by_leaf_name_finds_class_methods ... ok
[INFO] [stdout] test engine::secrets_tests::github_pat_detected ... ok
[INFO] [stdout] test engine::secrets_tests::normal_source_files_allowed ... ok
[INFO] [stdout] test engine::secrets_tests::openai_key_detected ... ok
[INFO] [stdout] test engine::secrets_tests::secret_credential_password_in_name_blocked ... ok
[INFO] [stdout] test engine::secrets_tests::short_prefix_match_not_flagged ... ok
[INFO] [stdout] test engine::secrets_tests::slack_bot_token_detected ... ok
[INFO] [stdout] test engine::skeleton_detail_tests::body_fractions_ordered ... ok
[INFO] [stdout] test edges::tests::defined_in_handles_nested_namespaces ... ok
[INFO] [stdout] test edges::tests::impl_edges_do_not_cross_languages ... ok
[INFO] [stdout] test edges::tests::inherits_ts_multiline_extends ... ok
[INFO] [stdout] test engine::secrets_tests::dotenv_extension_blocked ... ok
[INFO] [stdout] test edges::tests::defined_in_links_method_to_parent ... ok
[INFO] [stdout] test edges::tests::impl_edges_link_inherent_impl_to_type ... ok
[INFO] [stdout] test edges::tests::defined_in_skips_top_level ... ok
[INFO] [stdout] test graph::tests::centrality_k_empty_graph_uses_default ... ok
[INFO] [stdout] test graph::tests::centrality_k_fully_disconnected_uses_default ... ok
[INFO] [stdout] test engine::skeleton_detail_tests::parse_case_insensitive ... ok
[INFO] [stdout] test engine::skeleton_detail_tests::parse_known_values ... ok
[INFO] [stdout] test engine::skeleton_detail_tests::parse_unknown_falls_back_to_standard ... ok
[INFO] [stdout] test graph::tests::centrality_k_is_corpus_median ... ok
[INFO] [stdout] test indexer::tests::args_snippet_empty_parens ... ok
[INFO] [stdout] test graph::tests::centrality_k_override_pins_value ... ok
[INFO] [stdout] test indexer::tests::args_snippet_unclosed_paren_does_not_panic ... ok
[INFO] [stdout] test indexer::tests::args_snippet_truncates_at_utf8_boundary ... ok
[INFO] [stdout] test indexer::tests::call_edges_skip_python_docstring_doctest ... ok
[INFO] [stdout] test indexer::tests::call_edges_include_args_snippet ... ok
[INFO] [stdout] test graph::tests::centrality_k_ignores_disconnected_symbols ... ok
[INFO] [stdout] test indexer::tests::call_edges_skip_python_triple_quoted_non_docstring ... ok
[INFO] [stdout] test indexer::tests::call_edges_with_multibyte_utf8_args ... ok
[INFO] [stdout] test indexer::tests::call_edges_python_real_call_still_resolved ... ok
[INFO] [stdout] test indexer::tests::empty_file_rust ... ok
[INFO] [stdout] test indexer::tests::comments_only_python ... ok
[INFO] [stdout] test indexer::tests::empty_file_markdown ... ok
[INFO] [stdout] test indexer::tests::empty_file_sql ... ok
[INFO] [stdout] test indexer::tests::import_edges_resolve_python_names ... ok
[INFO] [stdout] test indexer::tests::indexes_python_function ... ok
[INFO] [stdout] test indexer::tests::indexes_markdown_headings ... ok
[INFO] [stdout] test engine::skeleton_detail_tests::default_is_standard ... ok
[INFO] [stdout] test indexer::tests::empty_file_python ... ok
[INFO] [stdout] test indexer::tests::indexes_rust_struct ... ok
[INFO] [stdout] test indexer::tests::python_unicode_function_name ... ok
[INFO] [stdout] test indexer::tests::shell_call_edges_basic ... ok
[INFO] [stdout] test indexer::tests::indexes_sql_create_table ... ok
[INFO] [stdout] test indexer::tests::type_flow_edges_from_signatures ... ok
[INFO] [stdout] test indexer::tests::sql_ref_edges_function_to_table ... ok
[INFO] [stdout] test indexer::tests::whitespace_only_python ... ok
[INFO] [stdout] test macro_expand::tests::test_body_has_macro_invocation ... ok
[INFO] [stdout] test macro_expand::tests::test_file_path_outside_src ... ok
[INFO] [stdout] test macro_expand::tests::test_file_path_to_expand_args_lib ... ok
[INFO] [stdout] test macro_expand::tests::test_file_path_to_expand_args_main ... ok
[INFO] [stdout] test macro_expand::tests::test_file_path_to_expand_args_mod_rs ... ok
[INFO] [stdout] test macro_expand::tests::test_file_path_to_expand_args_module ... ok
[INFO] [stdout] test memory::config_load_tests::load_from_toml_malformed_returns_defaults ... ok
[INFO] [stdout] test macro_expand::tests::test_file_path_to_expand_args_nested ... ok
[INFO] [stdout] test memory::config_load_tests::load_from_toml_missing_file_returns_defaults ... ok
[INFO] [stdout] test memory::config_load_tests::load_from_toml_valid_config_applies_settings ... ok
[INFO] [stdout] test memory::config_load_tests::load_from_toml_missing_memory_section_returns_defaults ... ok
[INFO] [stdout] test memory::indexing_config_tests::missing_context_section_returns_none ... ok
[INFO] [stdout] test memory::indexing_config_tests::context_section_parsed ... ok
[INFO] [stdout] test memory::indexing_config_tests::observability_section_parsed ... ok
[INFO] [stdout] test indexer::tests::markdown_setext_headings ... ok
[INFO] [stdout] test indexer::tests::rust_unicode_struct_name ... ok
[INFO] [stdout] test indexer::tests::shell_call_edges_no_self_loop ... ok
[INFO] [stdout] test memory::indexing_config_tests::user_fallback_workspace_takes_precedence ... ok
[INFO] [stdout] test memory::obs_kind_tests::consolidated_as_str ... ok
[INFO] [stdout] test memory::obs_kind_tests::consolidated_default_ttl_is_90_days ... ok
[INFO] [stdout] test memory::obs_kind_tests::consolidated_expires_at_is_set_on_new ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_bases_with_parents ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_return_type_callable_default ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_return_type_generic ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_return_type_missing ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_return_type_none_annotation ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_return_type_simple ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_type_from_message_basic ... ok
[INFO] [stdout] test memory::obs_kind_tests::consolidated_parse_kind_roundtrip ... ok
[INFO] [stdout] test memory::obs_kind_tests::memory_config_expires_at_for_consolidated ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_type_from_message_no_match ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_bases_no_parents ... ok
[INFO] [stdout] test pyright_enrich::tests::extract_type_from_message_callable ... ok
[INFO] [stdout] test pyright_enrich::tests::merge_enriches_annotated_function ... ok
[INFO] [stdout] test pyright_enrich::tests::merge_enriches_class_with_bases ... ok
[INFO] [stdout] test pyright_enrich::tests::merge_uses_diag_for_inferred_type ... ok
[INFO] [stdout] test pyright_enrich::tests::merge_skips_unannotated_without_diag ... ok
[INFO] [stdout] test pyright_enrich::tests::merge_skips_already_enriched_symbol ... ok
[INFO] [stdout] test pyright_enrich::tests::parse_diagnostics_handles_malformed_json ... ok
[INFO] [stdout] test pyright_enrich::tests::parse_diagnostics_extracts_information_entries ... ok
[INFO] [stdout] test pyright_enrich::tests::parse_diagnostics_ignores_non_information_severity ... ok
[INFO] [stdout] test pyright_enrich::tests::parse_diagnostics_handles_empty_diagnostics_array ... ok
[INFO] [stdout] test pyright_enrich::tests::python_files_hash_changes_when_file_added ... ok
[INFO] [stdout] test pyright_enrich::tests::python_files_hash_ignores_non_python_files ... ok
[INFO] [stdout] test ranking::tests::lexical_overlap_still_dominates_when_strong ... ok
[INFO] [stdout] test indexer::tests::empty_file_shell ... ok
[INFO] [stdout] test ranking::tests::semantic_scorer_promotes_aligned_caller_under_zero_overlap ... ok
[INFO] [stdout] test pyright_enrich::tests::python_files_hash_skips_pycache_dir ... ok
[INFO] [stdout] test ranking::tests::no_scorer_falls_back_to_pure_term_overlap ... ok
[INFO] [stdout] test indexer::tests::indexes_decorated_python_class_and_methods ... ok
[INFO] [stdout] test indexer::tests::sql_ref_edges_view_to_table ... ok
[INFO] [stdout] test rustdoc_enrich::tests::fqn_ends_with_partial_name_no_match ... ok
[INFO] [stdout] test rustdoc_enrich::tests::merge_empty_map_returns_zero ... ok
[INFO] [stdout] test ranking::tests::semantic_scorer_winner_follows_scorer_output ... ok
[INFO] [stdout] test rustdoc_enrich::tests::merge_enriches_rust_symbol_by_name ... ok
[INFO] [stdout] test rustdoc_enrich::tests::merge_enriches_rust_symbol_by_fqn_suffix ... ok
[INFO] [stdout] test rustdoc_enrich::tests::fqn_ends_with_suffix ... ok
[INFO] [stdout] test rustdoc_enrich::tests::merge_skips_non_rust_symbol ... ok
[INFO] [stdout] test rustdoc_enrich::tests::merge_preserves_existing_source ... ok
[INFO] [stdout] test rustdoc_enrich::tests::type_to_string_primitive ... ok
[INFO] [stdout] test rustdoc_enrich::tests::type_to_string_option ... ok
[INFO] [stdout] test rustdoc_enrich::tests::type_to_string_resolved_path ... ok
[INFO] [stdout] test rustdoc_enrich::tests::type_to_string_tuple_unit ... ok
[INFO] [stdout] test rustdoc_enrich::tests::parse_rustdoc_json_malformed_returns_empty ... ok
[INFO] [stdout] test rustdoc_enrich::tests::parse_rustdoc_json_missing_index_returns_err ... ok
[INFO] [stdout] test symbol::tests::symbol_id_distinguishes_files ... ok
[INFO] [stdout] test symbol::tests::symbol_id_distinguishes_names ... ok
[INFO] [stdout] test symbol::tests::symbol_id_stable_across_line_shifts ... ok
[INFO] [stdout] test ts_enrich::tests::fqn_ends_with_negative ... ok
[INFO] [stdout] test ts_enrich::tests::fqn_ends_with_positive ... ok
[INFO] [stdout] test ts_enrich::tests::fqn_ends_with_repeated_segment_name ... ok
[INFO] [stdout] test ts_enrich::tests::merge_empty_map_returns_zero ... ok
[INFO] [stdout] test ts_enrich::tests::merge_jsx_tsx_enriched ... ok
[INFO] [stdout] test ts_enrich::tests::merge_name_only_fallback ... ok
[INFO] [stdout] test ts_enrich::tests::merge_only_ts_js_symbols ... ok
[INFO] [stdout] test ts_enrich::tests::merge_preserves_existing_source ... ok
[INFO] [stdout] test ts_enrich::tests::parse_ndjson_basic ... ok
[INFO] [stdout] test ts_enrich::tests::parse_ndjson_skips_empty_type ... ok
[INFO] [stdout] test ts_enrich::tests::parse_ndjson_skips_malformed ... ok
[INFO] [stdout] test pyright_enrich::tests::enrichment_cache_hit_returns_zero ... ok
[INFO] [stdout] test rustdoc_enrich::tests::nightly_gate_skips_without_cargo_toml ... ok
[INFO] [stdout] test pyright_enrich::tests::run_pyright_enrichment_skips_without_python_symbols ... ok
[INFO] [stdout] test ts_enrich::tests::gate_skips_without_tsconfig ... ok
[INFO] [stdout] test rustdoc_enrich::tests::rustdoc_incremental_cache_hit ... ok
[INFO] [stdout] test search::tests::search_name_ignores_body_noise ... ok
[INFO] [stdout] test search::tests::search_name_matches_tokenised_substring ... ok
[INFO] [stdout] test ts_enrich::tests::ts_incremental_cache_hit ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 200 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.63s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/capsule.rs (/opt/rustwide/target/debug/deps/capsule-815472b0a746e220)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test chunk_for_query_returns_relevant_window ... ok
[INFO] [stderr]      Running tests/engine.rs (/opt/rustwide/target/debug/deps/engine-d84573f5a7dd09dd)
[INFO] [stdout] test chunk_for_query_short_body_unchanged ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 96 tests
[INFO] [stdout] test auto_observation_gets_7_day_ttl ... ok
[INFO] [stdout] test config_toml_enables_auto_observations ... ok
[INFO] [stdout] test compress_observations_merges_symbol_observations ... ok
[INFO] [stdout] test codesurgeonignore_excludes_files ... ok
[INFO] [stdout] test consolidated_kind_not_in_candidates_pool ... ok
[INFO] [stdout] test consolidate_does_not_expire_observations_without_embedder ... ok
[INFO] [stdout] test consolidate_observations_is_noop_without_embedder ... ok
[INFO] [stdout] test context_dedupes_against_task ... ok
[INFO] [stdout] test engine_config_ts_types_defaults_to_false ... ok
[INFO] [stdout] test corrupt_sqlite_returns_err_not_panic ... ok
[INFO] [stdout] test codesurgeonignore_glob_pattern_excludes_directory ... ok
[INFO] [stdout] test context_recovers_identifier_paraphrased_out_of_task ... ok
[INFO] [stdout] test concurrent_reindex_same_file ... ok
[INFO] [stdout] test file_with_api_key_content_is_not_indexed ... ok
[INFO] [stdout] test context_traceback_frame_surfaces_plain_lowercase_function ... ok
[INFO] [stdout] test external_reindex_on_fresh_workspace_invalidates_in_memory_state ... ok
[INFO] [stdout] test context_none_matches_plain_run_pipeline ... ok
[INFO] [stdout] test get_context_capsule_writes_auto_observation ... ok
[INFO] [stdout] test get_context_capsule_min_score_filters_all_below_threshold ... ok
[INFO] [stdout] test get_context_capsule_max_results_caps_pivots ... ok
[INFO] [stdout] test get_impact_graph_max_depth_limits_traversal ... ok
[INFO] [stdout] test get_impact_graph_caps_direct_dependents_for_high_fanout ... ok
[INFO] [stdout] test get_stats_empty_log_returns_no_data_message ... ok
[INFO] [stdout] test get_impact_graph_exclude_tests_filters_test_files ... ok
[INFO] [stdout] test get_stats_counts_logged_queries ... ok
[INFO] [stdout] test get_skeleton_max_depth_filters_nested_symbols ... ok
[INFO] [stdout] test get_session_context_returns_session_context_struct ... ok
[INFO] [stdout] test gitignore_written_on_new ... ok
[INFO] [stdout] test gitignore_omits_manifest_when_tracked ... ok
[INFO] [stdout] test get_stats_large_days_includes_recent_queries ... ok
[INFO] [stdout] test get_stats_savings_pct_in_valid_range ... ok
[INFO] [stdout] test get_symbol_snippet_returns_body_for_known_fqn ... ok
[INFO] [stdout] test index_stubs_false_skips_stub_files ... ok
[INFO] [stdout] test index_stats_reports_live_vs_recorded_edges ... ok
[INFO] [stdout] test index_stats_reports_manifest_info ... ok
[INFO] [stdout] test indexing_config_both_enrichment_flags ... ok
[INFO] [stdout] test indexing_config_defaults_to_false ... ok
[INFO] [stdout] test indexing_config_all_three_enrichment_flags ... ok
[INFO] [stdout] test indexing_config_reads_python_pyright ... ok
[INFO] [stdout] test indexing_config_rust_expand_macros_loaded_from_toml ... ok
[INFO] [stdout] test indexing_config_rust_rustdoc_types_loaded_from_toml ... ok
[INFO] [stdout] test indexing_config_ts_types_defaults_to_false ... ok
[INFO] [stdout] test indexing_config_ts_types_loaded_from_toml ... ok
[INFO] [stdout] test macro_enrichment_skipped_without_cargo_toml ... ok
[INFO] [stdout] test external_reindex_invalidates_in_memory_state ... ok
[INFO] [stdout] test manual_observation_has_no_ttl_by_default ... ok
[INFO] [stdout] test memory_config_toml_missing_returns_defaults ... ok
[INFO] [stdout] test memory_config_toml_overrides_defaults ... ok
[INFO] [stdout] test incremental_index_skips_unchanged_files ... ok
[INFO] [stdout] test index_workspace_produces_inherits_edges_per_language ... ok
[INFO] [stdout] test parallel_queries_do_not_deadlock ... ok
[INFO] [stdout] test macro_enrichment_skipped_for_non_rust_files ... ok
[INFO] [stdout] test index_workspace_prunes_stale_files ... ok
[INFO] [stdout] test pyright_return_type_extraction_variants ... ok
[INFO] [stdout] test external_reindex_invalidates_skeleton_results ... ok
[INFO] [stdout] test engine_applies_ts_types_config_from_toml ... ok
[INFO] [stdout] test prune_expired_removes_past_ttl_observations ... ok
[INFO] [stdout] test pyright_enrichment_skipped_without_python_symbols ... ok
[INFO] [stdout] test project_files_are_not_stubs ... ok
[INFO] [stdout] test manifest_written_after_index ... ok
[INFO] [stdout] test reindex_body_change_sets_change_category ... ok
[INFO] [stdout] test resolved_type_round_trips_through_db ... ok
[INFO] [stdout] test reindex_file_removed_purges_from_search ... ok
[INFO] [stdout] test query_during_indexing_does_not_panic ... ok
[INFO] [stdout] test reindex_deleted_symbol_sets_change_category ... ok
[INFO] [stdout] test python_pyi_stubs_indexed ... ok
[INFO] [stdout] test re_index_after_edit_preserves_edges ... ok
[INFO] [stdout] test run_pipeline_no_pivots_skips_auto_observation ... ok
[INFO] [stdout] test reindex_new_symbol_sets_change_category ... ok
[INFO] [stdout] test rustdoc_enrichment_skipped_without_cargo_toml ... ok
[INFO] [stdout] test search_memory_excludes_expired_observations ... ok
[INFO] [stdout] test run_pipeline_language_filter_excludes_other_langs ... ok
[INFO] [stdout] test reindex_import_sets_dependency_added ... ok
[INFO] [stdout] test search_memory_ranks_by_term_overlap ... ok
[INFO] [stdout] test run_pipeline_writes_auto_observation ... ok
[INFO] [stdout] test run_pipeline_does_not_auto_record_when_flag_disabled ... ok
[INFO] [stdout] test run_pipeline_deduplicates_auto_observations ... ok
[INFO] [stdout] test run_pipeline_file_hint_restricts_to_matching_file ... ok
[INFO] [stdout] test search_memory_respects_max_results ... ok
[INFO] [stdout] test staleness_score_nonzero_after_stale_mark ... ok
[INFO] [stdout] test search_memory_returns_matching_observations ... ok
[INFO] [stdout] test search_memory_returns_empty_for_no_match ... ok
[INFO] [stdout] test submit_lsp_edges_unknown_fqn_skipped ... ok
[INFO] [stdout] test symbol_resolved_type_is_none_by_default ... ok
[INFO] [stdout] test symbol_source_is_none_for_regular_code ... ok
[INFO] [stdout] test staleness_score_zero_when_no_stale ... ok
[INFO] [stdout] test swift_swiftinterface_stubs_indexed ... ok
[INFO] [stdout] test ts_enrichment_skipped_without_tsconfig ... ok
[INFO] [stdout] test stub_files_indexed_but_not_returned_as_pivots ... ok
[INFO] [stdout] test sensitive_files_are_not_indexed ... ok
[INFO] [stdout] test ts_resolved_type_round_trips_through_db ... ok
[INFO] [stdout] test submit_lsp_edges_accepted_count ... ok
[INFO] [stdout] test submit_lsp_edges_idempotent ... ok
[INFO] [stdout] test submit_lsp_edges_invalidated_on_reindex ... ok
[INFO] [stdout] test traceback_resolves_class_method_via_leaf_and_file_path ... ok
[INFO] [stdout] test ts_enrichment_end_to_end_with_node ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 96 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.32s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/enrichment_e2e.rs (/opt/rustwide/target/debug/deps/enrichment_e2e-4aa93e5d943dfd90)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test pyright_empty_symbols_returns_zero ... ok
[INFO] [stdout] test rustdoc_no_cargo_toml_leaves_cache_empty ... ok
[INFO] [stdout] test ts_no_tsconfig_leaves_cache_empty ... ok
[INFO] [stdout] test rustdoc_cache_hit_bypasses_cargo_doc ... ok
[INFO] [stdout] test ts_cache_hit_bypasses_node ... ok
[INFO] [stdout] test all_enrichers_accept_empty_symbol_slice ... ok
[INFO] [stderr]      Running tests/language.rs (/opt/rustwide/target/debug/deps/language-e996f449643e9393)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ranking_v16.rs (/opt/rustwide/target/debug/deps/ranking_v16-76260bcb9e4fd90a)
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.45s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test detects_pyi_as_python ... ok
[INFO] [stdout] test detects_rust ... ok
[INFO] [stdout] test detects_dts_as_typescript ... ok
[INFO] [stdout] test detects_python ... ok
[INFO] [stdout] test detects_swiftinterface_as_swift ... ok
[INFO] [stdout] test detects_tsx ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test three_distinct_files_all_pinned ... ok
[INFO] [stdout] test file_budget_caps_pinning_at_five ... ok
[INFO] [stdout] test specificity_tiebreak_prefers_deeper_fqn ... ok
[INFO] [stdout] test anchor_rrf_overlap_dedup ... ok
[INFO] [stdout] test no_anchors_default_eight_pivots ... ok
[INFO] [stderr]      Running tests/reverse_expand.rs (/opt/rustwide/target/debug/deps/reverse_expand-73cdb60b941fecfc)
[INFO] [stdout] test pinned_plus_fill_equals_max_pivots ... ok
[INFO] [stdout] test many_hits_same_file_pin_once ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.57s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test non_trivial_exception_classes_remain_eligible_as_pivots ... ok
[INFO] [stdout] test trivial_exception_stub_is_excluded_from_pivots ... ok
[INFO] [stdout] test reverse_expand_does_not_surface_import_statements ... ok
[INFO] [stdout] test generic_anchor_does_not_trigger_reverse_expand ... ok
[INFO] [stdout] test reverse_expand_surfaces_indirect_caller ... ok
[INFO] [stdout] test without_reverse_expand_indirect_caller_is_missed ... ok
[INFO] [stdout] test feature_flag_respected ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.60s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/skeletonizer.rs (/opt/rustwide/target/debug/deps/skeletonizer-1fd13f8557d716bf)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test callable_skeleton_has_no_body ... 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/main.rs (/opt/rustwide/target/debug/deps/codesurgeon_mcp-cfc7bfda4b4afc71)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test transport::tests::eof_mid_body_returns_error ... ok
[INFO] [stdout] test transport::tests::ignores_extra_headers_before_blank_line ... ok
[INFO] [stdout] test transport::tests::reads_multiple_framed_messages_sequentially ... ok
[INFO] [stdout] test transport::tests::reads_ndjson_message ... ok
[INFO] [stdout] test transport::tests::rejects_non_numeric_content_length ... ok
[INFO] [stdout] test transport::tests::rejects_non_utf8_body ... ok
[INFO] [stdout] test transport::tests::rejects_oversized_content_length ... ok
[INFO] [stdout] test transport::tests::returns_none_on_eof ... ok
[INFO] [stdout] test transport::tests::skips_blank_lines_between_messages ... ok
[INFO] [stdout] test transport::tests::write_clf_then_read_roundtrip ... ok
[INFO] [stdout] test transport::tests::reads_framed_message ... ok
[INFO] [stdout] test transport::tests::write_ndjson_produces_newline_terminated_json ... ok
[INFO] [stdout] test transport::tests::write_clf_produces_content_length_header ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/mcp_protocol.rs (/opt/rustwide/target/debug/deps/mcp_protocol-adc866f42e710c67)
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test initialize_advertises_resources_capability ... ok
[INFO] [stdout] test malformed_json_returns_parse_error ... ok
[INFO] [stdout] test ndjson_input_gets_ndjson_response ... ok
[INFO] [stdout] test get_diff_capsule_rejects_oversized_file ... ok
[INFO] [stdout] test get_diff_capsule_diff_path_wins_when_both_set ... ok
[INFO] [stdout] test initialize_response_has_jsonrpc_field ... ok
[INFO] [stdout] test ndjson_input_is_accepted ... ok
[INFO] [stdout] test resources_list_returns_empty_array ... ok
[INFO] [stdout] test resources_templates_list_returns_empty_array ... ok
[INFO] [stdout] test ping_returns_ok ... ok
[INFO] [stdout] test responses_are_content_length_framed ... ok
[INFO] [stdout] test get_diff_capsule_rejects_relative_diff_path ... ok
[INFO] [stdout] test prompts_list_returns_empty_array ... ok
[INFO] [stdout] test parallel_connections_both_complete_handshake ... ok
[INFO] [stdout] test get_diff_capsule_rejects_missing_diff ... FAILED
[INFO] [stdout] test get_diff_capsule_via_diff_path_reads_file ... ok
[INFO] [stdout] test tools_call_missing_required_arg_returns_error ... FAILED
[INFO] [stdout] test concurrent_sessions_both_serve_tools_list ... ok
[INFO] [stdout] test tools_list_returns_tools ... ok
[INFO] [stdout] test tools_list_input_schemas_have_no_top_level_combinators ... ok
[INFO] [stdout] test tools_call_unknown_tool_returns_error ... ok
[INFO] [stderr] error: test failed, to rerun pass `-p cs-mcp --test mcp_protocol`
[INFO] [stdout] test unknown_method_returns_minus_32601 ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- get_diff_capsule_rejects_missing_diff stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'get_diff_capsule_rejects_missing_diff' (6014) panicked at crates/cs-mcp/tests/mcp_protocol.rs:702:5:
[INFO] [stdout] assertion `left == right` failed: expected error when both diff and diff_path are missing, got: {"id":7,"jsonrpc":"2.0","result":{"content":[{"text":"⏳ Index build in progress — no symbols yet. Retry in a few seconds or call `index_status` to monitor.","type":"text"}]}}
[INFO] [stdout]   left: None
[INFO] [stdout]  right: Some(-32603)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x57bc427732b8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x57bc427732b8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x57bc427732b8 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x57bc427732b8 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x57bc4278792a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x57bc4278792a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x57bc42777bf2 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x57bc42777bf2 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x57bc42750a46 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x57bc42750a46 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x57bc4276af49 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x57bc426c6c1c - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x57bc426c6c1c - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x57bc4276b102 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x57bc4276b102 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x57bc42750b02 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x57bc42745c29 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x57bc4275181d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x57bc427880bc - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x57bc42787fd3 - core[8fb95b77d25ab6c8]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:434:23
[INFO] [stdout]   20:     0x57bc426b5b73 - core[8fb95b77d25ab6c8]::panicking::assert_failed::<core[8fb95b77d25ab6c8]::option::Option<i64>, core[8fb95b77d25ab6c8]::option::Option<i64>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x57bc426a3a84 - mcp_protocol[7dfa0bc9938d9de6]::get_diff_capsule_rejects_missing_diff
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/cs-mcp/tests/mcp_protocol.rs:702:5
[INFO] [stdout]   22:     0x57bc4269e287 - mcp_protocol[7dfa0bc9938d9de6]::get_diff_capsule_rejects_missing_diff::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/cs-mcp/tests/mcp_protocol.rs:694:43
[INFO] [stdout]   23:     0x57bc426b9636 - <mcp_protocol[7dfa0bc9938d9de6]::get_diff_capsule_rejects_missing_diff::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x57bc426b9cfb - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x57bc426b9cfb - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x57bc426c7575 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x57bc426c7575 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x57bc426c7575 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x57bc426c7575 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x57bc426c7575 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x57bc426c7575 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x57bc426c7575 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x57bc426c0e84 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x57bc426c0e84 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x57bc426ca5f2 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x57bc426ca5f2 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x57bc42772a4f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   43:     0x57bc42772a4f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x712cdc573aa4 - <unknown>
[INFO] [stdout]   45:     0x712cdc600a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tools_call_missing_required_arg_returns_error stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tools_call_missing_required_arg_returns_error' (6303) panicked at crates/cs-mcp/tests/mcp_protocol.rs:454:5:
[INFO] [stdout] assertion `left == right` failed: expected -32603 for missing 'task' arg, got: {"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"⏳ Index build in progress — no symbols yet. Retry in a few seconds or call `index_status` to monitor.","type":"text"}]}}
[INFO] [stdout]   left: None
[INFO] [stdout]  right: Some(-32603)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x57bc427732b8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x57bc427732b8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x57bc427732b8 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x57bc427732b8 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x57bc4278792a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x57bc4278792a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x57bc42777bf2 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x57bc42777bf2 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x57bc42750a46 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x57bc42750a46 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x57bc4276af49 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x57bc426c6c1c - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x57bc426c6c1c - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x57bc4276b102 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x57bc4276b102 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x57bc42750b02 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x57bc42745c29 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x57bc4275181d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x57bc427880bc - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x57bc42787fd3 - core[8fb95b77d25ab6c8]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:434:23
[INFO] [stdout]   20:     0x57bc426b5b73 - core[8fb95b77d25ab6c8]::panicking::assert_failed::<core[8fb95b77d25ab6c8]::option::Option<i64>, core[8fb95b77d25ab6c8]::option::Option<i64>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x57bc426a8813 - mcp_protocol[7dfa0bc9938d9de6]::tools_call_missing_required_arg_returns_error
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/cs-mcp/tests/mcp_protocol.rs:454:5
[INFO] [stdout]   22:     0x57bc4269e497 - mcp_protocol[7dfa0bc9938d9de6]::tools_call_missing_required_arg_returns_error::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/cs-mcp/tests/mcp_protocol.rs:443:51
[INFO] [stdout]   23:     0x57bc426b98f6 - <mcp_protocol[7dfa0bc9938d9de6]::tools_call_missing_required_arg_returns_error::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x57bc426b9cfb - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x57bc426b9cfb - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x57bc426c7575 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x57bc426c7575 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x57bc426c7575 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x57bc426c7575 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x57bc426c7575 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x57bc426c7575 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x57bc426c7575 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x57bc426c0e84 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x57bc426c0e84 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x57bc426ca5f2 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x57bc426ca5f2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x57bc426ca5f2 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x57bc42772a4f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   43:     0x57bc42772a4f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x712cdc573aa4 - <unknown>
[INFO] [stdout]   45:     0x712cdc600a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     get_diff_capsule_rejects_missing_diff
[INFO] [stdout]     tools_call_missing_required_arg_returns_error
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 20 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.32s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1", kill_on_drop: false }`
[INFO] [stdout] 29ff64408031daed99270d01d4fcae74e193077ce67cbd19c5d73dd1a177b0d1
