[INFO] fetching crate grapha 0.2.1... [INFO] testing grapha-0.2.1 against beta-2026-04-21 for beta-1.96-1 [INFO] extracting crate grapha 0.2.1 into /workspace/builds/worker-0-tc2/source [INFO] started tweaking crates.io crate grapha 0.2.1 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate grapha 0.2.1 [INFO] tweaked toml for crates.io crate grapha 0.2.1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate grapha 0.2.1 on toolchain beta-2026-04-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate grapha 0.2.1 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4c788c28d42e1dfefaed64178aff10f7cf77b9ea69564eb59266193087696b1b [INFO] running `Command { std: "docker" "start" "-a" "4c788c28d42e1dfefaed64178aff10f7cf77b9ea69564eb59266193087696b1b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4c788c28d42e1dfefaed64178aff10f7cf77b9ea69564eb59266193087696b1b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4c788c28d42e1dfefaed64178aff10f7cf77b9ea69564eb59266193087696b1b", kill_on_drop: false }` [INFO] [stdout] 4c788c28d42e1dfefaed64178aff10f7cf77b9ea69564eb59266193087696b1b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c9a7780d7418d732954da3100d8058cf4d8fd2b73bda9645b29e9c94ebe6649f [INFO] running `Command { std: "docker" "start" "-a" "c9a7780d7418d732954da3100d8058cf4d8fd2b73bda9645b29e9c94ebe6649f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling tree-sitter-language v0.1.7 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling ownedbytes v0.9.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling utf8-ranges v1.0.5 [INFO] [stderr] Compiling anstyle-parse v1.0.0 [INFO] [stderr] Compiling tantivy-fst v0.5.0 [INFO] [stderr] Compiling bitpacking v0.9.3 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling tantivy-bitpacker v0.9.0 [INFO] [stderr] Compiling murmurhash32 v0.3.1 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling notify-types v1.0.1 [INFO] [stderr] Compiling csv-core v0.1.13 [INFO] [stderr] Compiling downcast-rs v2.0.2 [INFO] [stderr] Compiling streaming-iterator v0.1.9 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling fastdivide v0.4.2 [INFO] [stderr] Compiling grapha-swift v0.2.1 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling axum-core v0.5.6 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling cc v1.2.58 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling inotify v0.10.2 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling filetime v0.2.27 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling rand_distr v0.4.3 [INFO] [stderr] Compiling unic-langid-impl v0.9.6 [INFO] [stderr] Compiling notify v7.0.0 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling unic-langid v0.9.6 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling memmap2 v0.9.10 [INFO] [stderr] Compiling clap_derive v4.6.0 [INFO] [stderr] Compiling encoding_rs_io v0.1.7 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling bon-macros v3.9.1 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling csv v1.4.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling libz-sys v1.1.25 [INFO] [stderr] Compiling libgit2-sys v0.18.3+1.9.2 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling libsqlite3-sys v0.32.0 [INFO] [stderr] Compiling tree-sitter-swift v0.7.1 [INFO] [stderr] Compiling tree-sitter v0.25.10 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling tree-sitter-rust v0.23.3 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling tantivy-query-grammar v0.25.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling grapha-core v0.2.1 [INFO] [stderr] Compiling tantivy-common v0.10.0 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling sketches-ddsketch v0.3.1 [INFO] [stderr] Compiling tantivy-tokenizer-api v0.6.0 [INFO] [stderr] Compiling hyperloglogplus v0.4.1 [INFO] [stderr] Compiling rust-stemmers v1.2.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling tantivy-stacker v0.6.0 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling uuid v1.23.0 [INFO] [stderr] Compiling arc-swap v1.9.0 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling fs4 v0.13.1 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling quick-xml v0.37.5 [INFO] [stderr] Compiling measure_time v0.9.0 [INFO] [stderr] Compiling libloading v0.8.9 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling rustc-hash v2.1.2 [INFO] [stderr] Compiling htmlescape v0.3.1 [INFO] [stderr] Compiling lz4_flex v0.11.6 [INFO] [stderr] Compiling levenshtein_automata v0.2.1 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling oneshot v0.1.13 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling census v0.4.2 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling axum v0.8.8 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling clap v4.6.0 [INFO] [stderr] Compiling xcassets v0.1.0 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling notify-debouncer-mini v0.5.0 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling langcodec v0.11.0 [INFO] [stderr] Compiling urlencoding v2.1.3 [INFO] [stderr] Compiling bon v3.9.1 [INFO] [stderr] Compiling zstd v0.13.3 [INFO] [stderr] Compiling tantivy-sstable v0.6.0 [INFO] [stderr] Compiling tantivy-columnar v0.6.0 [INFO] [stderr] Compiling git2 v0.20.4 [INFO] [stderr] Compiling tantivy v0.25.0 [INFO] [stderr] Compiling rusqlite v0.34.0 [INFO] [stderr] Compiling grapha v0.2.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 22s [INFO] running `Command { std: "docker" "inspect" "c9a7780d7418d732954da3100d8058cf4d8fd2b73bda9645b29e9c94ebe6649f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c9a7780d7418d732954da3100d8058cf4d8fd2b73bda9645b29e9c94ebe6649f", kill_on_drop: false }` [INFO] [stdout] c9a7780d7418d732954da3100d8058cf4d8fd2b73bda9645b29e9c94ebe6649f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3c40d92eba135cdc707bc4482e8a85e5b3514545b1c09980173abf760e27e803 [INFO] running `Command { std: "docker" "start" "-a" "3c40d92eba135cdc707bc4482e8a85e5b3514545b1c09980173abf760e27e803", kill_on_drop: false }` [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling predicates-core v1.0.10 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling assert_cmd v2.2.0 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling predicates-tree v1.0.13 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling tree-sitter v0.25.10 [INFO] [stderr] Compiling langcodec v0.11.0 [INFO] [stderr] Compiling tantivy v0.25.0 [INFO] [stderr] Compiling predicates v3.1.4 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling grapha-core v0.2.1 [INFO] [stderr] Compiling grapha-swift v0.2.1 [INFO] [stderr] Compiling grapha v0.2.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 58.73s [INFO] running `Command { std: "docker" "inspect" "3c40d92eba135cdc707bc4482e8a85e5b3514545b1c09980173abf760e27e803", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3c40d92eba135cdc707bc4482e8a85e5b3514545b1c09980173abf760e27e803", kill_on_drop: false }` [INFO] [stdout] 3c40d92eba135cdc707bc4482e8a85e5b3514545b1c09980173abf760e27e803 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 5cdc98c8155b042d3a3295a88780d24307a17452948b27e62af50a774f040f6a [INFO] running `Command { std: "docker" "start" "-a" "5cdc98c8155b042d3a3295a88780d24307a17452948b27e62af50a774f040f6a", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.46s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grapha-c03046833c0816d4) [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/grapha-e6dfc76c4f49faff) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test symbol_locator::tests::suffix_matching_requires_segment_boundary ... ok [INFO] [stdout] test symbol_locator::tests::builds_rust_style_locator_from_contains_chain ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 272 tests [INFO] [stdout] test assets::tests::find_unused_reports_unreferenced_assets ... ok [INFO] [stdout] test classify::rust::tests::classifies_fs_read_as_persistence_read ... ok [INFO] [stdout] test assets::tests::discover_xcassets_finds_catalogs ... ok [INFO] [stdout] test changes::tests::ranges_overlap_works ... ok [INFO] [stdout] test cache::tests::cache_is_stale_when_cache_missing ... ok [INFO] [stdout] test classify::rust::tests::classifies_fs_write_as_persistence_write ... ok [INFO] [stdout] test classify::rust::tests::classifies_reqwest_get_as_network_read ... ok [INFO] [stdout] test cache::tests::graph_cache_returns_none_when_stale ... ok [INFO] [stdout] test assets::tests::builds_and_loads_asset_snapshot ... ok [INFO] [stdout] test assets::tests::rejects_unsupported_asset_snapshot_version ... ok [INFO] [stdout] test cache::tests::query_cache_hit_returns_cached_output ... ok [INFO] [stdout] test classify::rust::tests::classifies_rusqlite_query_as_persistence_read ... ok [INFO] [stdout] test classify::rust::tests::classifies_tantivy_writer_as_search_write ... ok [INFO] [stdout] test classify::rust::tests::classifies_reqwest_post_as_network_write ... ok [INFO] [stdout] test classify::rust::tests::classifies_rusqlite_execute_as_persistence_write ... ok [INFO] [stdout] test classify::rust::tests::classifies_tantivy_searcher_as_search_read ... ok [INFO] [stdout] test cache::tests::graph_cache_round_trips ... ok [INFO] [stdout] test cache::tests::extraction_cache_round_trips_entries ... ok [INFO] [stdout] test cache::tests::query_cache_different_keys_are_independent ... ok [INFO] [stdout] test cache::tests::cache_is_stale_when_source_is_newer ... ok [INFO] [stdout] test cache::tests::file_stamp_changes_when_file_changes ... ok [INFO] [stdout] test classify::rust::tests::classifies_tokio_rx_recv_as_event_read ... ok [INFO] [stdout] test classify::rust::tests::classifies_tokio_tx_send_as_event_write ... ok [INFO] [stdout] test app::pipeline::tests::run_pipeline_honors_swift_index_store_config_false_end_to_end ... ok [INFO] [stdout] test changes::tests::collect_changed_symbols_matches_edge_provenance ... ok [INFO] [stdout] test classify::rust::tests::returns_none_for_unknown ... ok [INFO] [stdout] test classify::toml_rules::tests::first_matching_rule_wins ... ok [INFO] [stdout] test compress::group::tests::grouped_output_includes_reads_and_writes ... ok [INFO] [stdout] test classify::toml_rules::tests::skips_invalid_direction ... ok [INFO] [stdout] test classify::toml_rules::tests::skips_invalid_terminal_kind ... ok [INFO] [stdout] test compress::prune::tests::prune_keeps_contains_edges_between_kept_nodes ... ok [INFO] [stdout] test compress::group::tests::groups_by_file ... ok [INFO] [stdout] test compress::group::tests::grouped_output_skips_empty_arrays ... ok [INFO] [stdout] test compress::prune::tests::prune_drops_private_leaves_when_requested ... ok [INFO] [stdout] test compress::prune::tests::prune_drops_unresolved_uses_edges ... ok [INFO] [stdout] test compress::prune::tests::prune_keeps_private_leaves_when_requested ... ok [INFO] [stdout] test classify::toml_rules::tests::skips_invalid_regex ... ok [INFO] [stdout] test compress::prune::tests::prune_keeps_swiftui_contains_edges ... ok [INFO] [stdout] test config::tests::external_defaults_empty ... ok [INFO] [stdout] test config::tests::parse_empty_config ... ok [INFO] [stdout] test config::tests::swift_defaults_when_only_classifiers ... ok [INFO] [stdout] test config::tests::parse_external_repos ... ok [INFO] [stdout] test config::tests::swift_index_store_defaults_true_when_section_empty ... ok [INFO] [stdout] test config::tests::swift_index_store_disabled ... ok [INFO] [stdout] test extract::rust::tests::detects_main_as_entry_point ... ok [INFO] [stdout] test extract::rust::tests::detects_async_boundary_on_await ... ok [INFO] [stdout] test extract::rust::tests::detects_pub_fn_at_root_as_entry_point ... ok [INFO] [stdout] test delta::tests::graph_delta_tracks_node_and_edge_changes ... ok [INFO] [stdout] test extract::rust::tests::detects_test_as_entry_point ... ok [INFO] [stdout] test classify::toml_rules::tests::returns_none_when_no_match ... ok [INFO] [stdout] test compress::group::tests::grouped_output_includes_role_and_signature ... ok [INFO] [stdout] test compress::group::tests::grouped_output_preserves_member_relationships ... ok [INFO] [stdout] test extract::rust::tests::extracts_calls_edges ... ok [INFO] [stdout] test compress::group::tests::collects_calls_into_symbol ... ok [INFO] [stdout] test extract::rust::tests::extracts_async_unsafe_metadata ... ok [INFO] [stdout] test extract::rust::tests::extracts_condition_on_match_arm ... ok [INFO] [stdout] test extract::rust::tests::extracts_doc_comment ... ok [INFO] [stdout] test extract::rust::tests::extracts_constants_and_type_aliases ... ok [INFO] [stdout] test extract::rust::tests::extracts_condition_on_call_inside_if ... ok [INFO] [stdout] test extract::rust::tests::extracts_enum_with_variants ... ok [INFO] [stdout] test extract::rust::tests::extracts_function ... ok [INFO] [stdout] test extract::rust::tests::extracts_function_signature ... ok [INFO] [stdout] test extract::rust::tests::extracts_glob_imports ... ok [INFO] [stdout] test extract::rust::tests::extracts_impl_block ... ok [INFO] [stdout] test extract::rust::tests::extracts_module ... ok [INFO] [stdout] test extract::rust::tests::extracts_implements_edge ... ok [INFO] [stdout] test extract::rust::tests::extracts_inherits_edge_for_supertraits ... ok [INFO] [stdout] test extract::rust::tests::extracts_pub_crate_visibility ... ok [INFO] [stdout] test extract::rust::tests::extracts_relative_imports ... ok [INFO] [stdout] test extract::rust::tests::extracts_struct_with_fields ... ok [INFO] [stdout] test extract::rust::tests::extracts_structured_imports ... ok [INFO] [stdout] test extract::rust::tests::extracts_trait ... ok [INFO] [stdout] test classify::toml_rules::tests::matches_regex_pattern ... ok [INFO] [stdout] test config::tests::load_missing_file_returns_default ... ok [INFO] [stdout] test delta::tests::fingerprint_ignores_confidence ... ok [INFO] [stdout] test extract::rust::tests::extracts_type_ref_edges ... ok [INFO] [stdout] test filter::tests::filter_keeps_only_matching_nodes ... ok [INFO] [stdout] test localization::tests::closest_records_keep_equal_distance_ties ... ok [INFO] [stdout] test extract::rust::tests::extracts_self_field_reads_writes_and_constant_reads ... ok [INFO] [stdout] test localization::tests::lookup_by_source_value ... ok [INFO] [stdout] test filter::tests::parse_filter_parses_valid_kinds ... ok [INFO] [stdout] test extract::rust::tests::private_fn_at_root_is_not_entry_point ... ok [INFO] [stdout] test filter::tests::parse_filter_rejects_unknown_kind ... ok [INFO] [stdout] test localization::tests::closest_records_prefers_nearest_catalog ... ok [INFO] [stdout] test localization::tests::lookup_by_translation_value ... ok [INFO] [stdout] test localization::tests::rejects_unsupported_snapshot_version ... ok [INFO] [stdout] test extract::rust::tests::extracts_use_edges ... ok [INFO] [stdout] test localization::tests::resolve_usage_falls_back_to_approximate_wrapper_name ... ok [INFO] [stdout] test localization::tests::resolve_usage_matches_literal_as_catalog_key ... ok [INFO] [stdout] test localization::tests::resolve_usage_falls_back_to_wrapper_name_for_usr_wrapper_ids ... ok [INFO] [stdout] test localization::tests::snapshot_catalog_inputs_group_strings_by_catalog_root ... ok [INFO] [stdout] test localization::tests::resolve_usage_falls_back_to_wrapper_name_across_files ... ok [INFO] [stdout] test mcp::handler::tests::get_module_summary_on_empty_graph ... ok [INFO] [stdout] test mcp::handler::tests::detect_smells_rejects_multiple_scopes ... ok [INFO] [stdout] test filter::tests::filter_prunes_orphaned_edges ... ok [INFO] [stdout] test localization::tests::snapshot_stores_non_source_translations ... ok [INFO] [stdout] test mcp::handler::tests::get_file_symbols_missing_file_returns_error ... ok [INFO] [stdout] test localization::tests::builds_and_loads_strings_catalogs ... ok [INFO] [stdout] test localization::tests::resolve_usage_literal_without_catalog_record_remains_unmatched ... ok [INFO] [stdout] test mcp::handler::tests::batch_context_empty_array_returns_error ... ok [INFO] [stdout] test localization::tests::builds_and_loads_localization_snapshot ... ok [INFO] [stdout] test mcp::handler::tests::detect_smells_symbol_scope_limits_results ... ok [INFO] [stdout] test mcp::handler::tests::detect_smells_on_empty_graph ... ok [INFO] [stdout] test mcp::handler::tests::search_symbols_missing_query_returns_error ... ok [INFO] [stdout] test mcp::handler::tests::unknown_tool_returns_error ... ok [INFO] [stdout] test mcp::tests::dispatch_unknown_method ... ok [INFO] [stdout] test mcp::types::tests::notification_has_no_id ... ok [INFO] [stdout] test progress::tests::formats_microseconds ... ok [INFO] [stdout] test mcp::tests::dispatch_initialize ... ok [INFO] [stdout] test mcp::tests::dispatch_tools_call ... ok [INFO] [stdout] test mcp::tests::dispatch_tools_list ... ok [INFO] [stdout] test progress::tests::formats_fractional_milliseconds ... ok [INFO] [stdout] test mcp::types::tests::request_round_trip ... ok [INFO] [stdout] test mcp::handler::tests::tool_definitions_count ... ok [INFO] [stdout] test query::complexity::tests::counts_init_parameters ... ok [INFO] [stdout] test query::context::tests::context_finds_callers_and_callees ... ok [INFO] [stdout] test query::context::tests::context_includes_structural_relationships_in_span_order ... ok [INFO] [stdout] test query::dataflow::tests::aggregates_provenance_and_conditions_on_collapsed_edges ... ok [INFO] [stdout] test query::context::tests::context_inlines_property_and_function_view_helpers_but_not_subview_types ... ok [INFO] [stdout] test query::complexity::tests::counts_properties_and_methods ... ok [INFO] [stdout] test localization::tests::skips_invalid_xcstrings_catalogs_and_keeps_valid_ones ... ok [INFO] [stdout] test query::context::tests::context_tracks_read_dependencies ... ok [INFO] [stdout] test query::context::tests::context_type_query_dedups_callers_that_hit_multiple_members ... ok [INFO] [stdout] test query::context::tests::context_returns_none_for_unknown ... ok [INFO] [stdout] test mcp::types::tests::error_response_omits_result ... ok [INFO] [stdout] test mcp::types::tests::success_response_omits_error ... ok [INFO] [stdout] test progress::tests::formats_seconds ... ok [INFO] [stdout] test query::dataflow::tests::splits_read_write_edges_into_two_semantic_edges ... ok [INFO] [stdout] test query::entries::tests::filters_entries_by_module_and_file_and_limit ... ok [INFO] [stdout] test query::entries::tests::file_filter_does_not_match_partial_fragments ... ok [INFO] [stdout] test query::entries::tests::lists_entry_points ... ok [INFO] [stdout] test query::dataflow::tests::deduplicates_effect_nodes_across_paths ... ok [INFO] [stdout] test query::file_symbols::tests::finds_symbols_by_file_suffix ... ok [INFO] [stdout] test query::file_symbols::tests::matches_repo_relative_query_when_graph_stores_basename ... ok [INFO] [stdout] test query::entries::tests::returns_empty_when_no_entries ... ok [INFO] [stdout] test query::file_symbols::tests::excludes_view_and_branch_nodes ... ok [INFO] [stdout] test query::impact::tests::impact_finds_transitive_dependents ... ok [INFO] [stdout] test query::dataflow::tests::derives_effect_nodes_from_terminal_call_edges ... ok [INFO] [stdout] test localization::tests::builds_snapshot_from_strings_catalogs_using_preferred_source_locale ... ok [INFO] [stdout] test query::impact::tests::impact_ignores_unresolved_dependents_without_panicking_during_sort ... ok [INFO] [stdout] test query::impact::tests::impact_returns_none_for_unknown ... ok [INFO] [stdout] test query::impact::tests::impact_type_query_traverses_through_members ... ok [INFO] [stdout] test query::impact::tests::impact_traverses_read_dependencies ... ok [INFO] [stdout] test query::impact::tests::impact_respects_max_depth ... ok [INFO] [stdout] test query::localize::tests::localize_collapses_duplicate_wrapper_bindings_without_usage_sites ... ok [INFO] [stdout] test query::localize::tests::localize_reports_matches_for_usage_nodes ... ok [INFO] [stdout] test query::map::tests::file_without_slash_uses_empty_directory ... ok [INFO] [stdout] test query::impact::tests::impact_tree_is_deterministic_when_multiple_dependents_exist ... ok [INFO] [stdout] test query::impact::tests::impact_tree_reflects_bfs_parentage ... ok [INFO] [stdout] test query::map::tests::counts_unique_files_and_total_symbols ... ok [INFO] [stdout] test query::map::tests::groups_by_module_and_directory ... ok [INFO] [stdout] test query::localize::tests::localize_wrapper_symbol_query_reports_usage_matches ... ok [INFO] [stdout] test query::localize::tests::localize_prefers_unique_wrapper_binding_when_symbol_query_is_ambiguous ... ok [INFO] [stdout] test query::localize::tests::localize_prefers_most_used_wrapper_when_generated_symbols_share_name ... ok [INFO] [stdout] test query::map::tests::sorts_groups_by_symbol_count_descending ... ok [INFO] [stdout] test query::map::tests::filters_by_module ... ok [INFO] [stdout] test query::origin::tests::filter_origin_result_by_terminal_kind_keeps_only_matching_origins ... ok [INFO] [stdout] test query::map::tests::unknown_module_for_nodes_without_module ... ok [INFO] [stdout] test query::origin::tests::origin_finds_network_terminal_and_field_candidates ... ok [INFO] [stdout] test query::module_summary::tests::groups_by_module ... ok [INFO] [stdout] test query::origin::tests::merge_equivalent_origins_collapses_overload_like_duplicates ... ok [INFO] [stdout] test query::impact::tests::impact_ignores_swiftui_structural_nodes ... ok [INFO] [stdout] test query::origin::tests::expand_interface_labels_recurses_and_stops_on_cycles ... ok [INFO] [stdout] test query::origin::tests::project_origin_result_hides_code_snippets_by_default ... ok [INFO] [stdout] test query::origin::tests::origin_traverses_property_helper_caller_chain_to_non_network_terminal ... ok [INFO] [stdout] test query::origin::tests::suppress_request_wrapper_siblings_prefers_request_leaf ... ok [INFO] [stdout] test query::reverse::tests::finds_multiple_entry_points ... ok [INFO] [stdout] test query::reverse::tests::finds_entry_points_that_reach_symbol ... ok [INFO] [stdout] test query::reverse::tests::ignores_swiftui_structural_edges ... ok [INFO] [stdout] test query::reverse::tests::traverses_accessor_clusters_without_exposing_accessor_hops ... ok [INFO] [stdout] test query::reverse::tests::returns_none_for_unknown_symbol ... ok [INFO] [stdout] test query::smells::tests::detects_god_type ... ok [INFO] [stdout] test query::reverse::tests::respects_max_depth_when_walking_upstream ... ok [INFO] [stdout] test query::reverse::tests::includes_path_from_entry_to_symbol ... ok [INFO] [stdout] test query::smells::tests::file_scope_matches_repo_relative_query_when_graph_stores_basename ... ok [INFO] [stdout] test query::smells::tests::no_smells_for_small_type ... ok [INFO] [stdout] test query::smells::tests::symbol_scope_on_view_type_includes_body_smell_and_lifts_it_to_type ... ok [INFO] [stdout] test query::tests::bare_send_gift_prefers_functions_over_variants_and_properties ... ok [INFO] [stdout] test query::tests::bare_send_gift_returns_ambiguous_when_functions_share_top_rank ... ok [INFO] [stdout] test query::tests::bare_symbol_prefers_real_declarations_over_swiftui_synthetic_nodes ... ok [INFO] [stdout] test query::tests::rust_style_locator_resolves_member ... ok [INFO] [stdout] test query::tests::strict_file_match_requires_full_path_or_suffix ... ok [INFO] [stdout] test query::trace::tests::captures_conditions_on_edges ... ok [INFO] [stdout] test query::tests::swift_file_symbol_query_matches_against_node_file_suffix ... ok [INFO] [stdout] test query::trace::tests::captures_async_boundaries ... ok [INFO] [stdout] test query::trace::tests::ignores_swiftui_structural_edges ... ok [INFO] [stdout] test query::trace::tests::trace_falls_back_to_contained_action_when_view_root_has_no_direct_flows ... ok [INFO] [stdout] test query::trace::tests::respects_max_depth ... ok [INFO] [stdout] test query::trace::tests::returns_none_for_unknown_entry ... ok [INFO] [stdout] test recall::tests::prune_removes_stale_entries ... ok [INFO] [stdout] test query::trace::tests::trace_falls_back_to_swiftui_implementors_and_body_getter_roots ... ok [INFO] [stdout] test query::trace::tests::trace_returns_hint_when_fallback_roots_have_no_flows ... ok [INFO] [stdout] test query::trace::tests::traces_entry_to_terminal ... ok [INFO] [stdout] test recall::tests::recall_resolves_ambiguity_from_history ... ok [INFO] [stdout] test render::tests::colorized_context_uses_theme_friendly_styles ... ok [INFO] [stdout] test render::tests::context_renders_structural_sections ... ok [INFO] [stdout] test render::tests::colorized_dataflow_highlights_edge_labels_and_summary ... ok [INFO] [stdout] test render::tests::context_omits_empty_sections ... ok [INFO] [stdout] test render::tests::context_renders_requested_fields_in_tree_output ... ok [INFO] [stdout] test render::tests::dataflow_omits_files_when_file_field_disabled ... ok [INFO] [stdout] test render::tests::entries_omit_files_when_file_field_disabled ... ok [INFO] [stdout] test render::tests::entries_render_as_tree ... ok [INFO] [stdout] test render::tests::impact_renders_summary_and_dependency_tree ... ok [INFO] [stdout] test render::tests::origin_renders_code_snippets_only_when_snippet_field_enabled ... ok [INFO] [stdout] test render::tests::localize_omits_catalog_file_when_file_field_disabled ... ok [INFO] [stdout] test render::tests::origin_omits_files_when_file_field_disabled ... ok [INFO] [stdout] test render::tests::origin_shows_truncation_hint_even_when_no_origins_survive ... ok [INFO] [stdout] test render::tests::reverse_omits_files_when_file_field_disabled ... ok [INFO] [stdout] test render::tests::reverse_merges_paths_and_marks_entries ... ok [INFO] [stdout] test render::tests::trace_merges_shared_prefixes_and_renders_notes ... ok [INFO] [stdout] test render::tests::usages_omits_catalog_file_when_file_field_disabled ... ok [INFO] [stdout] test rust_plugin::tests::discovers_single_cargo_package ... ok [INFO] [stdout] test query::origin::tests::origin_does_not_reverse_call_through_accessor_hubs ... ok [INFO] [stdout] test query::origin::tests::origin_traverses_direct_member_implements_edges ... ok [INFO] [stdout] test query::origin::tests::origin_prefers_shallow_request_path_when_budget_is_tight ... ok [INFO] [stdout] test query::origin::tests::origin_function_root_does_not_reenter_through_shared_property_hub ... ok [INFO] [stdout] test query::origin::tests::origin_returns_multiple_implementor_candidates ... ok [INFO] [stdout] test query::origin::tests::origin_ignores_function_to_type_to_function_detours ... ok [INFO] [stdout] test rust_plugin::tests::discovers_workspace_members ... ok [INFO] [stdout] test query::origin::tests::origin_resolves_typealias_implementor_and_endpoint_without_di_registration ... ok [INFO] [stdout] test query::context::tests::context_type_query_includes_member_callers ... ok [INFO] [stdout] test config::tests::parse_classifier_rules ... ok [INFO] [stdout] test config::tests::load_from_file_works ... ok [INFO] [stdout] test query::origin::tests::origin_does_not_cross_shared_accessor_into_sibling_overload_family ... ok [INFO] [stdout] test search::tests::projection_respects_fields_and_context ... ok [INFO] [stdout] test search::tests::identifier_search_matches_token_equivalent_wrapper_name ... ok [INFO] [stdout] test search::tests::filter_by_file_suffix ... ok [INFO] [stdout] test search::tests::filter_by_role_internal ... ok [INFO] [stdout] test snippet::tests::extract_full_snippet_accepts_one_based_lines_as_fallback ... ok [INFO] [stdout] test snippet::tests::extract_full_snippet_uses_exact_columns ... ok [INFO] [stdout] test snippet::tests::extract_snippet_truncates_multiline_at_newline_before_utf8_cutoff ... ok [INFO] [stdout] test search::tests::filter_by_kind ... ok [INFO] [stdout] test snippet::tests::extract_snippet_truncates_single_line_at_utf8_boundary ... ok [INFO] [stdout] test snippet::tests::extract_symbol_snippet_falls_back_to_matching_declaration_line ... ok [INFO] [stdout] test snippet::tests::extract_symbol_snippet_prefers_candidate_that_contains_symbol_name ... ok [INFO] [stdout] test cache::tests::query_cache_miss_when_db_changes ... ok [INFO] [stdout] test snippet::tests::extract_symbol_snippet_prefers_nearest_matching_function_block ... ok [INFO] [stdout] test snippet::tests::extract_symbol_snippet_recovers_full_function_block_from_source ... ok [INFO] [stdout] test search::tests::locator_search_prefers_concrete_type_over_extension_on_ties ... ok [INFO] [stdout] test search::tests::filter_by_module ... ok [INFO] [stdout] test search::tests::search_without_filters_backward_compat ... ok [INFO] [stdout] test snippet::tests::trim_snippet_indentation_removes_shared_leading_spaces ... ok [INFO] [stdout] test snippet::tests::extract_symbol_snippet_skips_declaration_scan_when_exact_function_block_already_matches ... ok [INFO] [stdout] test snippet::tests::extract_symbol_snippet_uses_declaration_scan_when_span_only_covers_signature ... ok [INFO] [stdout] test search::tests::filter_by_role_entry_point ... ok [INFO] [stdout] test store::json::tests::json_store_round_trips ... ok [INFO] [stdout] test search::tests::combined_kind_and_module_filter ... ok [INFO] [stdout] test search::tests::filter_by_role_terminal ... ok [INFO] [stdout] test search::tests::filter_excludes_non_matching ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_full_rebuild_uses_large_page_size ... ok [INFO] [stdout] test search::tests::search_returns_empty_for_no_match ... ok [INFO] [stdout] test store::sqlite::tests::load_with_edge_filter_empty_slice_behaves_like_no_filter ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_full_rebuild_drops_unused_secondary_indexes ... ok [INFO] [stdout] test search::tests::search_finds_by_name ... ok [INFO] [stdout] test symbol_locator::tests::builds_rust_style_locator_from_contains_chain ... ok [INFO] [stdout] test search::tests::filter_by_file_glob ... ok [INFO] [stdout] test watch::tests::filters_source_files ... ok [INFO] [stdout] test symbol_locator::tests::suffix_matching_requires_segment_boundary ... ok [INFO] [stdout] test store::sqlite::tests::load_with_edge_filter_only_loads_matching_kinds ... ok [INFO] [stdout] test store::sqlite::tests::load_filtered_skips_metadata_for_non_matching_nodes ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_incremental_save_updates_added_updated_and_deleted_rows ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_store_round_trips_dataflow_fields ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_store_round_trips ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_snippet_field_round_trips ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_save_overwrites_previous ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_incremental_save_rebuilds_legacy_store ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_load_reads_schema_v4_json_provenance ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_load_reads_schema_v5_binary_provenance ... ok [INFO] [stdout] test search::tests::fuzzy_search_finds_misspelled ... ok [INFO] [stdout] test store::sqlite::tests::sqlite_batch_insert_round_trips_large_graph ... ok [INFO] [stdout] test serve::api::tests::search_api_applies_filters_and_context ... ok [INFO] [stdout] test search::tests::sync_index_updates_added_updated_and_deleted_documents ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 272 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.52s [INFO] [stdout] [INFO] [stderr] Running tests/dataflow_integration.rs (/opt/rustwide/target/debug/deps/dataflow_integration-0c6c1778cce86ce4) [INFO] [stdout] [INFO] [stdout] running 18 tests [INFO] [stdout] test analyze_outputs_dataflow_fields ... ok [INFO] [stdout] test help_output_lists_new_command_tree ... ok [INFO] [stdout] test removed_top_level_commands_fail ... ok [INFO] [stdout] test index_and_entries_works ... ok [INFO] [stdout] test reverse_tree_format_works ... ok [INFO] [stdout] test context_tree_format_works ... ok [INFO] [stdout] test origin_command_accepts_network_terminal_filter ... ok [INFO] [stdout] test trace_tree_format_works ... ok [INFO] [stdout] test entries_tree_format_works ... ok [INFO] [stdout] test origin_command_reports_api_and_field_candidates ... ok [INFO] [stdout] test impact_command_defaults_to_json ... ok [INFO] [stdout] test flow_trace_swiftui_view_falls_back_to_body_or_actions ... ok [INFO] [stdout] test trace_command_works ... ok [INFO] [stdout] test reverse_command_works ... ok [INFO] [stdout] test context_tree_for_swiftui_body_shows_structure ... ok [INFO] [stdout] test origin_command_resolves_typealias_service_endpoint_without_registration ... ok [INFO] [stdout] test impact_tree_format_works ... ok [INFO] [stderr] Running tests/fields_test.rs (/opt/rustwide/target/debug/deps/fields_test-d95eed7a08c5dec3) [INFO] [stdout] test reverse_trace_respects_depth_limit ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.11s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test from_config_empty_vec_gives_none ... ok [INFO] [stdout] test from_config_with_vec_of_strings ... ok [INFO] [stdout] test parse_all_enables_every_field ... ok [INFO] [stdout] test parse_comma_separated_fields ... ok [INFO] [stdout] test parse_full_alias_enables_every_field ... ok [INFO] [stdout] test parse_ignores_unknown_fields ... ok [INFO] [stdout] test parse_none_disables_every_field ... ok [INFO] [stdout] test parse_trims_whitespace ... ok [INFO] [stderr] Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-2f368d2fb2fc5537) [INFO] [stdout] test default_has_file_true_rest_false ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 36 tests [INFO] [stdout] test flow_origin_help_mentions_full_field_alias ... ok [INFO] [stdout] test analyzes_directory ... ok [INFO] [stdout] test compact_flag_produces_grouped_output ... ok [INFO] [stdout] test filter_option_works ... ok [INFO] [stdout] test empty_directory_produces_empty_graph ... ok [INFO] [stdout] test analyzes_swift_file ... ok [INFO] [stdout] test compact_flag_preserves_swiftui_hierarchy ... ok [INFO] [stdout] test analyzes_single_file ... ok [INFO] [stdout] test cli_smoke_matrix_help_contracts ... ok [INFO] [stdout] test output_contains_version ... ok [INFO] [stdout] test flow_entries_file_filter_rejects_partial_fragments ... ok [INFO] [stdout] test invalid_filter_shows_error ... ok [INFO] [stdout] test output_to_file ... ok [INFO] [stdout] test context_command_returns_symbol_info ... ok [INFO] [stdout] test index_json_format ... ok [INFO] [stdout] test flow_entries_file_scope_and_limit_returns_focused_subset ... ok [INFO] [stdout] test json_output_ignores_color_mode ... ok [INFO] [stdout] test index_creates_sqlite_db ... ok [INFO] [stdout] test flow_entries_tree_respects_file_field_toggle ... ok [INFO] [stdout] test serve_mcp_help_mentions_stdio_contract ... ok [INFO] [stdout] test localize_and_usages_prefer_nearest_duplicate_catalog ... ok [INFO] [stdout] test index_skips_invalid_xcstrings_catalogs ... ok [INFO] [stdout] test localize_and_usages_commands_resolve_swiftui_xcstrings ... ok [INFO] [stdout] test changes_command_runs_on_clean_repo ... ok [INFO] [stdout] test dataflow_command_outputs_json_and_tree ... ok [INFO] [stdout] test index_reuses_cached_extractions_when_sources_are_unchanged ... ok [INFO] [stdout] test localize_and_usages_commands_resolve_swiftui_strings_with_l10n_resource ... ok [INFO] [stdout] test search_fields_projection_works ... ok [INFO] [stdout] test search_context_projection_keeps_relationships ... ok [INFO] [stdout] test tree_output_respects_color_modes ... ok [INFO] [stdout] test repo_smells_file_scope_limits_results_to_matching_file ... ok [INFO] [stdout] test symbol_search_includes_id_by_default ... ok [INFO] [stdout] test search_command_finds_symbols ... ok [INFO] [stdout] test repo_smells_symbol_scope_limits_results_to_symbol_neighborhood ... ok [INFO] [stdout] test usages_command_resolves_non_view_constructor_localization_arguments ... ok [INFO] [stdout] test repeated_index_uses_incremental_store_and_search ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.74s [INFO] [stdout] [INFO] [stderr] Running tests/snippet_test.rs (/opt/rustwide/target/debug/deps/snippet_test-b042f977f5a4ef56) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test test_extract_snippet_end_beyond_file_clamped ... ok [INFO] [stdout] test test_extract_snippet_single_line ... ok [INFO] [stdout] test test_extract_snippet_multiline ... ok [INFO] [stdout] test test_should_extract_snippet_excluded_kinds ... ok [INFO] [stdout] test test_extract_snippet_truncation_at_line_boundary ... ok [INFO] [stdout] test test_should_extract_snippet_eligible_kinds ... ok [INFO] [stdout] test test_extract_snippet_span_beyond_file_returns_none ... ok [INFO] [stderr] Doc-tests grapha [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "5cdc98c8155b042d3a3295a88780d24307a17452948b27e62af50a774f040f6a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5cdc98c8155b042d3a3295a88780d24307a17452948b27e62af50a774f040f6a", kill_on_drop: false }` [INFO] [stdout] 5cdc98c8155b042d3a3295a88780d24307a17452948b27e62af50a774f040f6a