[INFO] cloning repository https://github.com/wenext-limited/grapha
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wenext-limited/grapha" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwenext-limited%2Fgrapha", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwenext-limited%2Fgrapha'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a482fc293649690c8ef361e5db8fed8706fdbd5c
[INFO] testing wenext-limited/grapha against beta-2026-04-21 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwenext-limited%2Fgrapha" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/wenext-limited/grapha
[INFO] finished tweaking git repo https://github.com/wenext-limited/grapha
[INFO] tweaked toml for git repo https://github.com/wenext-limited/grapha written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/wenext-limited/grapha 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 git repo https://github.com/wenext-limited/grapha 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] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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] 0547ad01716b20733ca503631ee9665dc9a408a7c836b898640e008bb4a2b903
[INFO] running `Command { std: "docker" "start" "-a" "0547ad01716b20733ca503631ee9665dc9a408a7c836b898640e008bb4a2b903", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0547ad01716b20733ca503631ee9665dc9a408a7c836b898640e008bb4a2b903", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0547ad01716b20733ca503631ee9665dc9a408a7c836b898640e008bb4a2b903", kill_on_drop: false }`
[INFO] [stdout] 0547ad01716b20733ca503631ee9665dc9a408a7c836b898640e008bb4a2b903
[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] 3943172784f234ddb071f134414de0b88c6f20fbf9bd1011c2d7cb224ef585bd
[INFO] running `Command { std: "docker" "start" "-a" "3943172784f234ddb071f134414de0b88c6f20fbf9bd1011c2d7cb224ef585bd", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling libz-sys v1.1.25
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling ownedbytes v0.9.0
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling tree-sitter v0.26.8
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling typeid v1.0.3
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling tantivy-common v0.11.0
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling bitpacking v0.9.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling utf8-ranges v1.0.5
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling erased-serde v0.4.10
[INFO] [stderr]    Compiling tantivy-fst v0.5.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling tantivy-bitpacker v0.10.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.37.0
[INFO] [stderr]    Compiling libgit2-sys v0.18.3+1.9.2
[INFO] [stderr]    Compiling tree-sitter-rust v0.24.2
[INFO] [stderr]    Compiling tree-sitter-swift v0.7.1
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling winnow v1.0.2
[INFO] [stderr]    Compiling streaming-iterator v0.1.9
[INFO] [stderr]    Compiling murmurhash32 v0.3.1
[INFO] [stderr]    Compiling typetag v0.2.21
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling tantivy-stacker v0.7.0
[INFO] [stderr]    Compiling bon-macros v3.9.1
[INFO] [stderr]    Compiling grapha-core v0.4.0 (/opt/rustwide/workdir/grapha-core)
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling inotify v0.11.1
[INFO] [stderr]    Compiling ordered-float v5.3.0
[INFO] [stderr]    Compiling unic-langid-impl v0.9.6
[INFO] [stderr]    Compiling notify-types v2.1.0
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling csv-core v0.1.13
[INFO] [stderr]    Compiling typetag-impl v0.2.21
[INFO] [stderr]    Compiling inventory v0.3.24
[INFO] [stderr]    Compiling fastdivide v0.4.2
[INFO] [stderr]    Compiling virtue v0.0.18
[INFO] [stderr]    Compiling downcast-rs v2.0.2
[INFO] [stderr]    Compiling grapha-swift v0.4.0 (/opt/rustwide/workdir/grapha-swift)
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr] warning: grapha-swift@0.4.0: Swift bridge mode: auto (failed to launch `swift build`, using fallback)
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling bon v3.9.1
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling bincode_derive v2.0.1
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling tantivy-query-grammar v0.26.0
[INFO] [stderr]    Compiling csv v1.4.0
[INFO] [stderr]    Compiling encoding_rs_io v0.1.7
[INFO] [stderr]    Compiling notify v8.2.0
[INFO] [stderr]    Compiling unic-langid v0.9.6
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling fs4 v0.13.1
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling arc-swap v1.9.0
[INFO] [stderr]    Compiling hashlink v0.11.0
[INFO] [stderr]    Compiling lru v0.16.4
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling libloading v0.9.0
[INFO] [stderr]    Compiling sketches-ddsketch v0.4.0
[INFO] [stderr]    Compiling tantivy-tokenizer-api v0.7.0
[INFO] [stderr]    Compiling rust-stemmers v1.2.0
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling measure_time v0.9.0
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling htmlescape v0.3.1
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling levenshtein_automata v0.2.1
[INFO] [stderr]    Compiling tantivy-sstable v0.7.0
[INFO] [stderr]    Compiling lz4_flex v0.13.0
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling unty v0.0.4
[INFO] [stderr]    Compiling datasketches v0.2.0
[INFO] [stderr]    Compiling unit-prefix v0.5.2
[INFO] [stderr]    Compiling oneshot v0.1.13
[INFO] [stderr]    Compiling census v0.4.2
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling indicatif v0.18.4
[INFO] [stderr]    Compiling tantivy-columnar v0.7.0
[INFO] [stderr]    Compiling bincode v2.0.1
[INFO] [stderr]    Compiling axum v0.8.8
[INFO] [stderr]    Compiling langcodec v0.12.0
[INFO] [stderr]    Compiling tantivy v0.26.1
[INFO] [stderr]    Compiling rusqlite v0.39.0
[INFO] [stderr]    Compiling notify-debouncer-mini v0.7.0
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling xcassets v0.2.0
[INFO] [stderr]    Compiling grapha-rust v0.4.0 (/opt/rustwide/workdir/grapha-rust)
[INFO] [stderr]    Compiling git2 v0.20.4
[INFO] [stderr]    Compiling grapha v0.4.0 (/opt/rustwide/workdir/grapha)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 04s
[INFO] running `Command { std: "docker" "inspect" "3943172784f234ddb071f134414de0b88c6f20fbf9bd1011c2d7cb224ef585bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3943172784f234ddb071f134414de0b88c6f20fbf9bd1011c2d7cb224ef585bd", kill_on_drop: false }`
[INFO] [stdout] 3943172784f234ddb071f134414de0b88c6f20fbf9bd1011c2d7cb224ef585bd
[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] 58f0dccadf3235bfc1fe9fcc90bc3637c6ee666f874997d608c72a26e098709a
[INFO] running `Command { std: "docker" "start" "-a" "58f0dccadf3235bfc1fe9fcc90bc3637c6ee666f874997d608c72a26e098709a", kill_on_drop: false }`
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr] warning: grapha-swift@0.4.0: Swift bridge mode: auto (failed to launch `swift build`, using fallback)
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling termtree v0.5.1
[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 bstr v1.12.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tree-sitter v0.26.8
[INFO] [stderr]    Compiling langcodec v0.12.0
[INFO] [stderr]    Compiling tantivy v0.26.1
[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.4.0 (/opt/rustwide/workdir/grapha-core)
[INFO] [stderr]    Compiling grapha-swift v0.4.0 (/opt/rustwide/workdir/grapha-swift)
[INFO] [stderr]    Compiling grapha-rust v0.4.0 (/opt/rustwide/workdir/grapha-rust)
[INFO] [stderr]    Compiling grapha v0.4.0 (/opt/rustwide/workdir/grapha)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 10s
[INFO] running `Command { std: "docker" "inspect" "58f0dccadf3235bfc1fe9fcc90bc3637c6ee666f874997d608c72a26e098709a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58f0dccadf3235bfc1fe9fcc90bc3637c6ee666f874997d608c72a26e098709a", kill_on_drop: false }`
[INFO] [stdout] 58f0dccadf3235bfc1fe9fcc90bc3637c6ee666f874997d608c72a26e098709a
[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] 6469f3fb078fbe1eaa3a03c6cc8c2c947ea5f881429f6fd63a0c27b781444814
[INFO] running `Command { std: "docker" "start" "-a" "6469f3fb078fbe1eaa3a03c6cc8c2c947ea5f881429f6fd63a0c27b781444814", kill_on_drop: false }`
[INFO] [stderr] warning: grapha-swift@0.4.0: Swift bridge mode: auto (failed to launch `swift build`, using fallback)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.52s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grapha-a4fa93cf094ed9b3)
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/grapha-f0ca5213c126af0d)
[INFO] [stdout] running 2 tests
[INFO] [stdout] test symbol_locator::tests::builds_rust_style_locator_from_contains_chain ... ok
[INFO] [stdout] test symbol_locator::tests::suffix_matching_requires_segment_boundary ... 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 340 tests
[INFO] [stdout] test app::pipeline::tests::stamp_repo_namespaces_external_ids_and_edges ... ok
[INFO] [stdout] test assets::tests::find_unused_reports_unreferenced_assets ... ok
[INFO] [stdout] test assets::tests::rejects_unsupported_asset_snapshot_version ... ok
[INFO] [stdout] test cache::tests::cache_is_stale_when_cache_missing ... ok
[INFO] [stdout] test assets::tests::builds_and_loads_asset_snapshot ... ok
[INFO] [stdout] test cache::tests::extraction_cache_ignores_legacy_disk_format ... ok
[INFO] [stdout] test cache::tests::extraction_cache_ignores_mismatched_binary_stamp ... ok
[INFO] [stdout] test cache::tests::extraction_cache_round_trips_entries ... ok
[INFO] [stdout] test cache::tests::graph_cache_returns_none_when_stale ... ok
[INFO] [stdout] test app::pipeline::tests::run_pipeline_config_rules_override_builtin_terminal_effects ... ok
[INFO] [stdout] test assets::tests::discover_xcassets_finds_catalogs ... ok
[INFO] [stdout] test cache::tests::query_cache_different_keys_are_independent ... ok
[INFO] [stdout] test app::pipeline::tests::run_pipeline_invalidates_cached_results_when_classifier_rules_change ... ok
[INFO] [stdout] test cache::tests::graph_cache_round_trips ... ok
[INFO] [stdout] test changes::tests::ranges_overlap_works ... ok
[INFO] [stdout] test classify::rust::tests::classifies_fs_read_as_persistence_read ... ok
[INFO] [stdout] test classify::rust::tests::classifies_fs_write_as_persistence_write ... ok
[INFO] [stdout] test changes::tests::collect_changed_symbols_matches_edge_provenance ... ok
[INFO] [stdout] test classify::rust::tests::classifies_rusqlite_execute_as_persistence_write ... ok
[INFO] [stdout] test classify::rust::tests::classifies_reqwest_get_as_network_read ... ok
[INFO] [stdout] test cache::tests::cache_is_stale_when_source_is_newer ... ok
[INFO] [stdout] test classify::rust::tests::classifies_tantivy_writer_as_search_write ... ok
[INFO] [stdout] test classify::rust::tests::classifies_tokio_rx_recv_as_event_read ... ok
[INFO] [stdout] test classify::rust::tests::classifies_reqwest_post_as_network_write ... ok
[INFO] [stdout] test classify::rust::tests::returns_none_for_unknown ... ok
[INFO] [stdout] test cache::tests::file_stamp_changes_when_file_changes ... ok
[INFO] [stdout] test classify::toml_rules::tests::first_matching_rule_wins ... ok
[INFO] [stdout] test classify::rust::tests::classifies_rusqlite_query_as_persistence_read ... ok
[INFO] [stdout] test classify::rust::tests::classifies_tantivy_searcher_as_search_read ... ok
[INFO] [stdout] test classify::rust::tests::classifies_tokio_tx_send_as_event_write ... ok
[INFO] [stdout] test classify::toml_rules::tests::returns_none_when_no_match ... ok
[INFO] [stdout] test classify::toml_rules::tests::skips_invalid_direction ... ok
[INFO] [stdout] test compress::group::tests::collects_calls_into_symbol ... ok
[INFO] [stdout] test classify::toml_rules::tests::skips_invalid_regex ... ok
[INFO] [stdout] test classify::toml_rules::tests::skips_invalid_terminal_kind ... ok
[INFO] [stdout] test compress::group::tests::grouped_output_includes_reads_and_writes ... 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 compress::group::tests::grouped_output_skips_empty_arrays ... 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 compress::prune::tests::prune_keeps_swiftui_contains_edges ... ok
[INFO] [stdout] test concepts::tests::concept_index_loads_missing_store_as_empty ... ok
[INFO] [stdout] test concepts::tests::concept_index_persists_bindings_and_aliases ... ok
[INFO] [stdout] test compress::prune::tests::prune_keeps_contains_edges_between_kept_nodes ... ok
[INFO] [stdout] test concepts::tests::prune_removes_stale_bindings_without_dropping_record ... ok
[INFO] [stdout] test classify::toml_rules::tests::matches_regex_pattern ... ok
[INFO] [stdout] test compress::group::tests::groups_by_file ... ok
[INFO] [stdout] test compress::prune::tests::prune_drops_private_leaves_when_requested ... ok
[INFO] [stdout] test app::pipeline::tests::run_pipeline_honors_swift_index_store_config_false_end_to_end ... ok
[INFO] [stdout] test cache::tests::query_cache_hit_returns_cached_output ... ok
[INFO] [stdout] test concepts::tests::search_concepts_fuzzy_matches_stored_concept_by_default ... ok
[INFO] [stdout] test concepts::tests::search_concepts_falls_back_to_l10n_wrapper_when_record_has_no_usage_sites ... ok
[INFO] [stdout] test concepts::tests::search_concepts_does_not_fuzzy_match_unrelated_short_cjk_values ... ok
[INFO] [stdout] test config::tests::architecture_defaults_empty ... ok
[INFO] [stdout] test config::tests::external_defaults_empty ... ok
[INFO] [stdout] test config::tests::extraction_cache_fingerprint_tracks_only_extraction_settings ... ok
[INFO] [stdout] test config::tests::index_input_fingerprint_tracks_external_repos ... ok
[INFO] [stdout] test config::tests::index_input_fingerprint_tracks_repo_name ... ok
[INFO] [stdout] test config::tests::inferred_defaults_disabled ... ok
[INFO] [stdout] test config::tests::load_from_file_works ... ok
[INFO] [stdout] test concepts::tests::search_concepts_prefers_confirmed_binding_over_heuristics ... ok
[INFO] [stdout] test config::tests::load_missing_file_returns_default ... ok
[INFO] [stdout] test config::tests::parse_architecture_rules ... ok
[INFO] [stdout] test config::tests::parse_classifier_rules ... ok
[INFO] [stdout] test config::tests::parse_empty_config ... ok
[INFO] [stdout] test config::tests::parse_external_repos ... ok
[INFO] [stdout] test config::tests::parse_inferred_config ... ok
[INFO] [stdout] test config::tests::parse_repo_name ... ok
[INFO] [stdout] test config::tests::swift_defaults_when_only_classifiers ... 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 delta::tests::fingerprint_ignores_confidence ... ok
[INFO] [stdout] test delta::tests::graph_delta_tracks_node_and_edge_changes ... 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 extract::rust::tests::detects_test_as_entry_point ... ok
[INFO] [stdout] test extract::rust::tests::extracts_async_unsafe_metadata ... ok
[INFO] [stdout] test extract::rust::tests::extracts_calls_edges ... ok
[INFO] [stdout] test extract::rust::tests::extracts_condition_on_call_inside_if ... ok
[INFO] [stdout] test extract::rust::tests::extracts_condition_on_match_arm ... ok
[INFO] [stdout] test extract::rust::tests::extracts_constants_and_type_aliases ... ok
[INFO] [stdout] test extract::rust::tests::extracts_doc_comment ... 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_implements_edge ... ok
[INFO] [stdout] test extract::rust::tests::extracts_inherits_edge_for_supertraits ... ok
[INFO] [stdout] test extract::rust::tests::extracts_inner_generic_type_refs ... ok
[INFO] [stdout] test extract::rust::tests::extracts_module ... 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_self_field_reads_writes_and_constant_reads ... 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 extract::rust::tests::extracts_type_ref_edges ... ok
[INFO] [stdout] test extract::rust::tests::extracts_use_edges ... ok
[INFO] [stdout] test extract::rust::tests::normalizes_generic_qualified_call_targets_before_merge ... ok
[INFO] [stdout] test extract::rust::tests::private_fn_at_root_is_not_entry_point ... ok
[INFO] [stdout] test extract::rust::tests::scopes_same_named_methods_by_owner ... ok
[INFO] [stdout] test extract::rust::tests::uniquifies_duplicate_impl_blocks_for_same_type ... ok
[INFO] [stdout] test filter::tests::filter_keeps_only_matching_nodes ... ok
[INFO] [stdout] test filter::tests::filter_prunes_orphaned_edges ... ok
[INFO] [stdout] test filter::tests::parse_filter_parses_valid_kinds ... ok
[INFO] [stdout] test filter::tests::parse_filter_rejects_unknown_kind ... ok
[INFO] [stdout] test history::tests::history_store_round_trips_and_filters_events ... ok
[INFO] [stdout] test history::tests::history_store_limit_zero_means_unlimited ... ok
[INFO] [stdout] test index_status::tests::plan_index_work_rebuilds_only_localization_for_catalog_changes ... ok
[INFO] [stdout] test index_status::tests::plan_index_work_rejects_config_changes ... ok
[INFO] [stdout] test index_status::tests::plan_index_work_requires_complete_artifacts ... ok
[INFO] [stdout] test index_status::tests::plan_index_work_is_disabled_for_external_repos ... ok
[INFO] [stdout] test index_status::tests::plan_index_work_skips_when_repo_and_inputs_match ... ok
[INFO] [stdout] test cache::tests::query_cache_miss_when_db_changes ... ok
[INFO] [stdout] test index_status::tests::status_detects_dirty_file_changes_since_index ... ok
[INFO] [stdout] test index_status::tests::status_ignores_docs_only_changes_for_staleness ... ok
[INFO] [stdout] test inferred::tests::build_inferred_index_generates_module_owner_and_doc_records ... ok
[INFO] [stdout] test inferred::tests::inferred_index_round_trips ... ok
[INFO] [stdout] test inferred::tests::missing_inferred_index_loads_as_empty ... ok
[INFO] [stdout] test index_status::tests::status_keeps_same_dirty_snapshot_fresh_until_file_changes_again ... ok
[INFO] [stdout] test index_status::tests::status_reports_clean_repo_as_fresh ... ok
[INFO] [stdout] test localization::tests::builds_snapshot_from_strings_catalogs_using_preferred_source_locale ... ok
[INFO] [stdout] test localization::tests::builds_and_loads_strings_catalogs ... ok
[INFO] [stdout] test localization::tests::closest_records_prefers_nearest_catalog ... ok
[INFO] [stdout] test localization::tests::lookup_by_source_value ... ok
[INFO] [stdout] test localization::tests::lookup_by_translation_value ... ok
[INFO] [stdout] test localization::tests::rejects_unsupported_snapshot_version ... ok
[INFO] [stdout] test localization::tests::builds_and_loads_localization_snapshot ... ok
[INFO] [stdout] test localization::tests::resolve_usage_falls_back_to_approximate_wrapper_name ... ok
[INFO] [stdout] test localization::tests::resolve_usage_falls_back_to_wrapper_name_across_files ... ok
[INFO] [stdout] test localization::tests::resolve_usage_falls_back_to_wrapper_name_for_usr_wrapper_ids ... ok
[INFO] [stdout] test localization::tests::closest_records_keep_equal_distance_ties ... ok
[INFO] [stdout] test localization::tests::resolve_usage_matches_wrapper_name_against_catalog_key_without_wrapper_symbol ... ok
[INFO] [stdout] test localization::tests::resolve_usage_matches_literal_as_catalog_key ... ok
[INFO] [stdout] test localization::tests::resolve_usage_literal_without_catalog_record_remains_unmatched ... ok
[INFO] [stdout] test localization::tests::snapshot_stores_non_source_translations ... ok
[INFO] [stdout] test maintenance::tests::detects_missing_relations_orphan_edges_and_bad_provenance ... ok
[INFO] [stdout] test localization::tests::skips_invalid_xcstrings_catalogs_and_keeps_valid_ones ... ok
[INFO] [stdout] test localization::tests::snapshot_catalog_inputs_group_strings_by_catalog_root ... ok
[INFO] [stdout] test maintenance::tests::detects_stale_inferred_links ... ok
[INFO] [stdout] test mcp::handler::tests::batch_context_empty_array_returns_error ... ok
[INFO] [stdout] test mcp::handler::tests::detect_smells_on_empty_graph ... ok
[INFO] [stdout] test mcp::handler::tests::detect_smells_rejects_multiple_scopes ... ok
[INFO] [stdout] test mcp::handler::tests::get_file_symbols_missing_file_returns_error ... ok
[INFO] [stdout] test mcp::handler::tests::get_module_summary_on_empty_graph ... ok
[INFO] [stdout] test mcp::handler::tests::tool_definitions_count ... ok
[INFO] [stdout] test mcp::handler::tests::detect_smells_symbol_scope_limits_results ... ok
[INFO] [stdout] test mcp::handler::tests::search_symbols_missing_query_returns_error ... ok
[INFO] [stdout] test mcp::tests::dispatch_initialize ... ok
[INFO] [stdout] test mcp::tests::dispatch_tools_list ... ok
[INFO] [stdout] test mcp::tests::dispatch_tools_call ... ok
[INFO] [stdout] test mcp::tests::dispatch_unknown_method ... ok
[INFO] [stdout] test mcp::types::tests::error_response_omits_result ... ok
[INFO] [stdout] test mcp::types::tests::notification_has_no_id ... ok
[INFO] [stdout] test mcp::types::tests::request_round_trip ... ok
[INFO] [stdout] test mcp::types::tests::success_response_omits_error ... ok
[INFO] [stdout] test progress::tests::formats_fractional_milliseconds ... ok
[INFO] [stdout] test progress::tests::formats_microseconds ... ok
[INFO] [stdout] test progress::tests::formats_seconds ... ok
[INFO] [stdout] test query::arch::tests::allows_dependency_without_matching_deny_rule ... ok
[INFO] [stdout] test query::arch::tests::configured_layers_without_deny_rules_are_not_violations ... ok
[INFO] [stdout] test query::arch::tests::detects_denied_layer_dependency ... ok
[INFO] [stdout] test query::arch::tests::matches_file_patterns_when_module_is_not_specific ... ok
[INFO] [stdout] test query::arch::tests::no_config_returns_empty_result ... ok
[INFO] [stdout] test query::arch::tests::wildcard_matching_handles_suffixes_and_single_char_wildcards ... ok
[INFO] [stdout] test query::complexity::tests::counts_init_parameters ... ok
[INFO] [stdout] test query::complexity::tests::counts_properties_and_methods ... ok
[INFO] [stdout] test query::complexity::tests::reports_swiftui_body_metrics_when_querying_body_directly ... 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::context::tests::context_inlines_property_and_function_view_helpers_but_not_subview_types ... ok
[INFO] [stdout] test query::context::tests::context_returns_none_for_unknown ... 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_type_query_includes_member_callers ... ok
[INFO] [stdout] test query::dataflow::tests::aggregates_provenance_and_conditions_on_collapsed_edges ... ok
[INFO] [stdout] test query::dataflow::tests::deduplicates_effect_nodes_across_paths ... ok
[INFO] [stdout] test query::dataflow::tests::derives_effect_nodes_from_terminal_call_edges ... ok
[INFO] [stdout] test query::dataflow::tests::splits_read_write_edges_into_two_semantic_edges ... ok
[INFO] [stdout] test query::entries::tests::file_filter_does_not_match_partial_fragments ... ok
[INFO] [stdout] test query::entries::tests::filters_entries_by_module_and_file_and_limit ... ok
[INFO] [stdout] test query::entries::tests::lists_entry_points ... 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::complexity::tests::reports_swiftui_body_structure_metrics_for_view_types ... ok
[INFO] [stdout] test mcp::handler::tests::unknown_tool_returns_error ... 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::impact::tests::impact_ignores_swiftui_structural_nodes ... ok
[INFO] [stdout] test query::impact::tests::impact_finds_transitive_dependents ... ok
[INFO] [stdout] test query::impact::tests::impact_ignores_unresolved_dependents_without_panicking_during_sort ... ok
[INFO] [stdout] test query::impact::tests::impact_respects_max_depth ... ok
[INFO] [stdout] test query::impact::tests::impact_returns_none_for_unknown ... ok
[INFO] [stdout] test query::impact::tests::impact_summary_counts_direct_files_modules_and_visibility ... ok
[INFO] [stdout] test query::impact::tests::impact_traverses_read_dependencies ... ok
[INFO] [stdout] test query::impact::tests::impact_type_query_traverses_through_members ... ok
[INFO] [stdout] test query::localize::tests::localize_collapses_duplicate_wrapper_bindings_without_usage_sites ... ok
[INFO] [stdout] test query::impact::tests::impact_tree_reflects_bfs_parentage ... ok
[INFO] [stdout] test query::localize::tests::localize_prefers_most_used_wrapper_when_generated_symbols_share_name ... 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_reports_matches_for_usage_nodes ... ok
[INFO] [stdout] test query::localize::tests::localize_wrapper_symbol_query_reports_usage_matches ... ok
[INFO] [stdout] test query::map::tests::counts_unique_files_and_total_symbols ... ok
[INFO] [stdout] test query::map::tests::file_without_slash_uses_empty_directory ... ok
[INFO] [stdout] test query::map::tests::filters_by_module ... ok
[INFO] [stdout] test query::map::tests::groups_by_module_and_directory ... ok
[INFO] [stdout] test query::map::tests::sorts_groups_by_symbol_count_descending ... ok
[INFO] [stdout] test query::map::tests::unknown_module_for_nodes_without_module ... ok
[INFO] [stdout] test query::module_summary::tests::groups_by_module ... ok
[INFO] [stdout] test query::origin::tests::expand_interface_labels_recurses_and_stops_on_cycles ... ok
[INFO] [stdout] test query::origin::tests::filter_origin_result_by_terminal_kind_keeps_only_matching_origins ... ok
[INFO] [stdout] test query::origin::tests::merge_equivalent_origins_collapses_overload_like_duplicates ... ok
[INFO] [stdout] test query::impact::tests::impact_tree_is_deterministic_when_multiple_dependents_exist ... ok
[INFO] [stdout] test query::origin::tests::origin_finds_network_terminal_and_field_candidates ... ok
[INFO] [stdout] test query::origin::tests::origin_does_not_reverse_call_through_accessor_hubs ... 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_prefers_shallow_request_path_when_budget_is_tight ... ok
[INFO] [stdout] test query::origin::tests::origin_does_not_cross_shared_accessor_into_sibling_overload_family ... ok
[INFO] [stdout] test query::origin::tests::origin_ignores_function_to_type_to_function_detours ... ok
[INFO] [stdout] test query::origin::tests::origin_traverses_direct_member_implements_edges ... ok
[INFO] [stdout] test query::origin::tests::origin_traverses_property_helper_caller_chain_to_non_network_terminal ... ok
[INFO] [stdout] test query::origin::tests::project_origin_result_hides_code_snippets_by_default ... ok
[INFO] [stdout] test query::origin::tests::suppress_request_wrapper_siblings_prefers_request_leaf ... ok
[INFO] [stdout] test query::reverse::tests::finds_entry_points_that_reach_symbol ... ok
[INFO] [stdout] test query::origin::tests::origin_returns_multiple_implementor_candidates ... ok
[INFO] [stdout] test query::origin::tests::origin_resolves_typealias_implementor_and_endpoint_without_di_registration ... ok
[INFO] [stdout] test query::reverse::tests::includes_path_from_entry_to_symbol ... ok
[INFO] [stdout] test query::reverse::tests::respects_max_depth_when_walking_upstream ... ok
[INFO] [stdout] test query::reverse::tests::returns_none_for_unknown_symbol ... ok
[INFO] [stdout] test query::reverse::tests::traverses_accessor_clusters_without_exposing_accessor_hops ... ok
[INFO] [stdout] test query::smells::tests::detects_complex_swiftui_body_smell ... ok
[INFO] [stdout] test query::smells::tests::detects_god_type ... ok
[INFO] [stdout] test query::smells::tests::file_scope_matches_repo_relative_query_when_graph_stores_basename ... ok
[INFO] [stdout] test query::reverse::tests::finds_multiple_entry_points ... ok
[INFO] [stdout] test query::reverse::tests::ignores_swiftui_structural_edges ... ok
[INFO] [stdout] test query::smells::tests::module_scope_runs_on_matching_module_only ... 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::smells::tests::symbol_scope_on_view_type_lifts_complex_body_found_via_contains_edge ... 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::smells::tests::symbol_scope_on_view_type_lifts_complex_swiftui_body_to_type ... ok
[INFO] [stdout] test query::trace::tests::captures_async_boundaries ... ok
[INFO] [stdout] test query::tests::swift_file_symbol_query_matches_against_node_file_suffix ... 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::trace::tests::ignores_swiftui_structural_edges ... ok
[INFO] [stdout] test query::trace::tests::returns_none_for_unknown_entry ... 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::trace_falls_back_to_swiftui_implementors_and_body_getter_roots ... ok
[INFO] [stdout] test query::trace::tests::respects_max_depth ... ok
[INFO] [stdout] test query::trace::tests::traces_entry_to_terminal ... ok
[INFO] [stdout] test query::trace::tests::trace_returns_hint_when_fallback_roots_have_no_flows ... ok
[INFO] [stdout] test recall::tests::recall_resolves_ambiguity_from_history ... ok
[INFO] [stdout] test recall::tests::prune_removes_stale_entries ... ok
[INFO] [stdout] test render::tests::architecture_brief_renders_summary_layers_and_violations ... ok
[INFO] [stdout] test render::tests::colorized_context_uses_theme_friendly_styles ... ok
[INFO] [stdout] test render::tests::colorized_dataflow_highlights_edge_labels_and_summary ... ok
[INFO] [stdout] test render::tests::context_brief_renders_compact_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::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_renders_code_snippets_only_when_snippet_field_enabled ... ok
[INFO] [stdout] test render::tests::origin_shows_truncation_hint_even_when_no_origins_survive ... ok
[INFO] [stdout] test render::tests::reverse_merges_paths_and_marks_entries ... ok
[INFO] [stdout] test render::tests::reverse_omits_files_when_file_field_disabled ... 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 render::tests::context_omits_empty_sections ... ok
[INFO] [stdout] test rust_plugin::tests::discovers_workspace_members ... ok
[INFO] [stdout] test render::tests::context_renders_structural_sections ... ok
[INFO] [stdout] test concepts::tests::search_concepts_resolves_localized_value_to_owner_scope ... ok
[INFO] [stdout] test concepts::tests::search_concepts_matches_asset_tokens_and_lifts_to_caller_scope ... ok
[INFO] [stdout] test search::tests::filter_by_file_suffix ... ok
[INFO] [stdout] test search::tests::combined_kind_and_module_filter ... ok
[INFO] [stdout] test concepts::tests::search_concepts_fuzzy_matches_symbols_by_default ... ok
[INFO] [stdout] test concepts::tests::search_concepts_resolves_asset_usage_to_owner_scope ... ok
[INFO] [stdout] test search::tests::filter_by_file_glob ... ok
[INFO] [stdout] test search::tests::exact_name_matches_function_base_name_without_signature_noise ... ok
[INFO] [stdout] test search::tests::declarations_only_excludes_accessors_and_synthetic_nodes ... ok
[INFO] [stdout] test concepts::tests::search_concepts_fuzzy_matches_localized_values_by_default ... ok
[INFO] [stdout] test search::tests::filter_by_kind ... ok
[INFO] [stdout] test search::tests::filter_by_role_internal ... ok
[INFO] [stdout] test search::tests::filter_by_repo ... ok
[INFO] [stdout] test search::tests::filter_by_role_terminal ... ok
[INFO] [stdout] test search::tests::filter_by_role_entry_point ... ok
[INFO] [stdout] test search::tests::projection_respects_fields_and_context ... ok
[INFO] [stdout] test search::tests::filter_by_module ... ok
[INFO] [stdout] test search::tests::filter_excludes_non_matching ... ok
[INFO] [stdout] test search::tests::identifier_search_prefers_real_declaration_over_synthetic_match ... ok
[INFO] [stdout] test search::tests::locator_search_prefers_concrete_type_over_extension_on_ties ... ok
[INFO] [stdout] test search::tests::fuzzy_search_finds_misspelled ... ok
[INFO] [stdout] test search::tests::public_only_filters_private_symbols ... 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 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 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 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 snippet::tests::trim_snippet_indentation_removes_shared_leading_spaces ... ok
[INFO] [stdout] test search::tests::identifier_search_matches_token_equivalent_wrapper_name ... ok
[INFO] [stdout] test store::json::tests::json_store_round_trips ... ok
[INFO] [stdout] test store::sqlite::tests::load_with_edge_filter_empty_slice_behaves_like_no_filter ... ok
[INFO] [stdout] test store::sqlite::tests::load_filtered_skips_metadata_for_non_matching_nodes ... ok
[INFO] [stdout] test search::tests::search_finds_by_name ... ok
[INFO] [stdout] test store::sqlite::tests::load_with_edge_filter_only_loads_matching_kinds ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_full_rebuild_uses_large_page_size ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_full_rebuild_drops_unused_secondary_indexes ... ok
[INFO] [stdout] test serve::api::tests::search_api_applies_filters_and_context ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_incremental_save_updates_added_updated_and_deleted_rows ... 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_batch_insert_round_trips_large_graph ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_save_overwrites_previous ... ok
[INFO] [stdout] test search::tests::search_without_filters_backward_compat ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_load_reads_schema_v6_legacy_binary_provenance ... ok
[INFO] [stdout] test symbol_locator::tests::builds_rust_style_locator_from_contains_chain ... ok
[INFO] [stdout] test symbol_locator::tests::suffix_matching_requires_segment_boundary ... ok
[INFO] [stdout] test watch::tests::filters_source_files ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_snippet_field_round_trips ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_store_round_trips ... ok
[INFO] [stdout] test search::tests::search_returns_empty_for_no_match ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_store_round_trips_dataflow_fields ... ok
[INFO] [stdout] test search::tests::sync_index_rebuilds_legacy_index_without_repo_fields ... ok
[INFO] [stdout] test store::sqlite::tests::sqlite_load_reads_schema_v5_binary_provenance ... ok
[INFO] [stdout] test search::tests::sync_index_updates_added_updated_and_deleted_documents ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 340 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.22s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/dataflow_integration.rs (/opt/rustwide/target/debug/deps/dataflow_integration-d83252449bc72341)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test analyze_outputs_dataflow_fields ... ok
[INFO] [stdout] test help_output_lists_new_command_tree ... ok
[INFO] [stdout] test impact_brief_format_works ... ok
[INFO] [stdout] test context_tree_for_swiftui_body_shows_structure ... ok
[INFO] [stdout] test impact_command_defaults_to_json ... ok
[INFO] [stdout] test context_tree_format_works ... ok
[INFO] [stdout] test removed_top_level_commands_fail ... ok
[INFO] [stdout] test entries_tree_format_works ... ok
[INFO] [stdout] test flow_trace_swiftui_view_falls_back_to_body_or_actions ... ok
[INFO] [stdout] test impact_tree_format_works ... ok
[INFO] [stdout] test index_and_entries_works ... ok
[INFO] [stdout] test reverse_command_works ... ok
[INFO] [stdout] test origin_command_reports_api_and_field_candidates ... ok
[INFO] [stdout] test reverse_trace_respects_depth_limit ... ok
[INFO] [stdout] test origin_command_accepts_network_terminal_filter ... ok
[INFO] [stdout] test trace_brief_format_works ... ok
[INFO] [stdout] test reverse_tree_format_works ... ok
[INFO] [stdout] test trace_tree_format_works ... ok
[INFO] [stdout] test origin_command_resolves_typealias_service_endpoint_without_registration ... ok
[INFO] [stderr]      Running tests/fields_test.rs (/opt/rustwide/target/debug/deps/fields_test-5c9e785bb3a72ce1)
[INFO] [stdout] test trace_command_works ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test from_config_with_vec_of_strings ... ok
[INFO] [stdout] test parse_all_enables_every_field ... ok
[INFO] [stdout] test default_has_file_true_rest_false ... ok
[INFO] [stdout] test from_config_empty_vec_gives_none ... ok
[INFO] [stdout] test parse_comma_separated_fields ... ok
[INFO] [stdout] test parse_none_disables_every_field ... ok
[INFO] [stdout] test parse_trims_whitespace ... ok
[INFO] [stdout] test parse_full_alias_enables_every_field ... ok
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-552fa98e3e71f30e)
[INFO] [stdout] test parse_ignores_unknown_fields ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 43 tests
[INFO] [stdout] test analyzes_swift_file ... ok
[INFO] [stdout] test compact_flag_produces_grouped_output ... ok
[INFO] [stdout] test analyzes_single_file ... ok
[INFO] [stdout] test analyzes_directory ... ok
[INFO] [stdout] test filter_option_works ... ok
[INFO] [stdout] test compact_flag_preserves_swiftui_hierarchy ... ok
[INFO] [stdout] test empty_directory_produces_empty_graph ... ok
[INFO] [stdout] test flow_origin_help_mentions_full_field_alias ... ok
[INFO] [stdout] test cli_smoke_matrix_help_contracts ... ok
[INFO] [stdout] test dataflow_command_outputs_json_and_tree ... ok
[INFO] [stdout] test changes_command_runs_on_clean_repo ... ok
[INFO] [stdout] test flow_entries_tree_respects_file_field_toggle ... ok
[INFO] [stdout] test index_reuses_cached_extractions_when_sources_are_unchanged ... 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 flow_entries_file_filter_rejects_partial_fragments ... ok
[INFO] [stdout] test output_contains_version ... ok
[INFO] [stdout] test output_to_file ... ok
[INFO] [stdout] test json_output_ignores_color_mode ... ok
[INFO] [stdout] test index_creates_sqlite_db ... ok
[INFO] [stdout] test index_skips_invalid_xcstrings_catalogs ... ok
[INFO] [stdout] test localize_and_usages_commands_resolve_swiftui_xcstrings ... ok
[INFO] [stdout] test localize_and_usages_prefer_nearest_duplicate_catalog ... ok
[INFO] [stdout] test repo_history_add_and_list_round_trip ... ok
[INFO] [stdout] test repo_arch_reports_configured_layer_violations ... ok
[INFO] [stdout] test repo_smells_brief_format_works ... ok
[INFO] [stdout] test localize_and_usages_commands_resolve_swiftui_strings_with_l10n_resource ... ok
[INFO] [stdout] test repo_infer_brief_saves_opt_in_metadata ... ok
[INFO] [stdout] test repo_doctor_brief_reports_stale_inferred_links ... ok
[INFO] [stdout] test repeated_index_uses_incremental_store_and_search ... ok
[INFO] [stdout] test invalid_filter_shows_error ... ok
[INFO] [stdout] test repo_smells_no_cache_bypasses_graph_and_query_caches ... ok
[INFO] [stdout] test repo_smells_populates_graph_and_query_caches ... ok
[INFO] [stdout] test serve_mcp_help_mentions_stdio_contract ... ok
[INFO] [stdout] test repo_smells_file_scope_limits_results_to_matching_file ... ok
[INFO] [stdout] test search_command_finds_symbols ... ok
[INFO] [stdout] test usages_command_resolves_non_view_constructor_localization_arguments ... ok
[INFO] [stdout] test repo_smells_symbol_scope_limits_results_to_symbol_neighborhood ... ok
[INFO] [stdout] test tree_output_respects_color_modes ... ok
[INFO] [stdout] test search_fields_projection_works ... ok
[INFO] [stdout] test search_context_projection_keeps_relationships ... ok
[INFO] [stdout] test symbol_search_includes_id_by_default ... ok
[INFO] [stderr]      Running tests/quality_benchmark.rs (/opt/rustwide/target/debug/deps/quality_benchmark-880a085c86d65d23)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 43 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.22s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running tests/snippet_test.rs (/opt/rustwide/target/debug/deps/snippet_test-1a42f88e3054b016)
[INFO] [stdout] running 1 test
[INFO] [stdout] test graph_quality_benchmark ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test test_extract_snippet_end_beyond_file_clamped ... ok
[INFO] [stdout] test test_extract_snippet_span_beyond_file_returns_none ... 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] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grapha_core-cdd9a993f3142142)
[INFO] [stdout] test test_should_extract_snippet_eligible_kinds ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 49 tests
[INFO] [stdout] test classify::tests::composite_returns_first_match ... ok
[INFO] [stdout] test classify::tests::composite_returns_none_when_no_match ... ok
[INFO] [stdout] test discover::tests::discovers_single_file ... ok
[INFO] [stdout] test discover::tests::discovers_files_in_directory ... ok
[INFO] [stdout] test graph::tests::flow_direction_serializes_as_snake_case ... ok
[INFO] [stdout] test graph::tests::edge_serializes_with_confidence ... ok
[INFO] [stdout] test graph::tests::graph_serializes_with_version ... ok
[INFO] [stdout] test graph::tests::edge_kind_serializes_as_snake_case ... ok
[INFO] [stdout] test graph::tests::new_node_kinds_serialize_correctly ... ok
[INFO] [stdout] test graph::tests::node_kind_serializes_as_snake_case ... ok
[INFO] [stdout] test graph::tests::node_role_serializes_with_tag ... ok
[INFO] [stdout] test graph::tests::extended_graph_round_trips ... ok
[INFO] [stdout] test graph::tests::optional_edge_fields_present_when_set ... ok
[INFO] [stdout] test graph::tests::full_graph_round_trips ... ok
[INFO] [stdout] test classify::tests::classifies_external_call_on_source_node ... ok
[INFO] [stdout] test graph::tests::node_role_round_trips ... ok
[INFO] [stdout] test graph::tests::optional_node_fields_present_when_set ... ok
[INFO] [stdout] test graph::tests::optional_node_fields_skipped_when_none ... ok
[INFO] [stdout] test merge::tests::drops_edges_with_unresolved_targets ... ok
[INFO] [stdout] test graph::tests::span_serializes_as_arrays ... ok
[INFO] [stdout] test merge::tests::merges_nodes_from_multiple_results ... ok
[INFO] [stdout] test merge::tests::keeps_uses_edges_even_if_target_unresolved ... ok
[INFO] [stdout] test graph::tests::visibility_serializes_as_snake_case ... ok
[INFO] [stdout] test graph::tests::terminal_kind_serializes_as_snake_case ... ok
[INFO] [stdout] test merge::tests::module_hint_resolves_call_by_file_stem ... ok
[INFO] [stdout] test merge::tests::owner_hint_disambiguates_same_module_candidates ... ok
[INFO] [stdout] test merge::tests::self_field_read_resolves_to_matching_field ... ok
[INFO] [stdout] test module::tests::fallback_uses_root_name ... ok
[INFO] [stdout] test merge::tests::qualified_call_hint_drops_false_local_resolution ... ok
[INFO] [stdout] test merge::tests::same_module_candidate_wins ... ok
[INFO] [stdout] test module::tests::merges_module_fragments ... ok
[INFO] [stdout] test module::tests::module_for_file_prefers_deepest_match ... ok
[INFO] [stdout] test normalize::tests::fingerprint_changes_when_effect_shape_changes ... ok
[INFO] [stdout] test normalize::tests::normalize_graph_merges_duplicate_edges_and_provenance ... ok
[INFO] [stdout] test normalize::tests::normalize_graph_merges_duplicate_nodes_by_id ... ok
[INFO] [stdout] test normalize::tests::fingerprint_ignores_confidence_and_provenance ... ok
[INFO] [stdout] test normalize::tests::normalize_graph_prefers_class_over_struct_for_same_symbol ... ok
[INFO] [stdout] test normalize::tests::terminal_role_is_preserved_by_normalization ... ok
[INFO] [stdout] test pipeline::tests::build_graph_runs_classifier_then_graph_pass ... ok
[INFO] [stdout] test semantic::tests::annotate_call_relations_uses_source_symbol_context ... ok
[INFO] [stdout] test semantic::tests::override_call_relations_replaces_existing_effect ... ok
[INFO] [stdout] test semantic::tests::relation_terminal_effect_marks_source_node_when_target_is_external ... ok
[INFO] [stdout] test pipeline::tests::extract_with_registry_stamps_module ... ok
[INFO] [stdout] test semantic::tests::round_trips_known_metadata_into_typed_artifacts ... ok
[INFO] [stdout] test selector::tests::selects_only_external_graph_edges_when_requested ... ok
[INFO] [stdout] test selector::tests::selects_semantic_symbols_and_relations ... ok
[INFO] [stdout] test plugin::tests::rejects_duplicate_extensions ... ok
[INFO] [stdout] test graph::tests::new_edge_kinds_serialize_correctly ... ok
[INFO] [stdout] test graph::tests::optional_edge_fields_skipped_when_none ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grapha_rust-ce8d9131ab5914e1)
[INFO] [stdout] test result: ok. 49 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.72s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test classifier::tests::classifies_reqwest_post_as_network_write ... ok
[INFO] [stdout] test classifier::tests::classifies_fs_write_as_persistence_write ... ok
[INFO] [stdout] test classifier::tests::classifies_reqwest_get_as_network_read ... ok
[INFO] [stdout] test classifier::tests::classifies_tantivy_searcher_as_search_read ... ok
[INFO] [stdout] test classifier::tests::classifies_fs_read_as_persistence_read ... ok
[INFO] [stdout] test classifier::tests::classifies_rusqlite_query_as_persistence_read ... ok
[INFO] [stdout] test classifier::tests::classifies_tantivy_writer_as_search_write ... ok
[INFO] [stdout] test classifier::tests::classifies_rusqlite_execute_as_persistence_write ... ok
[INFO] [stdout] test classifier::tests::returns_none_for_unknown ... ok
[INFO] [stdout] test classifier::tests::classifies_tokio_rx_recv_as_event_read ... ok
[INFO] [stdout] test classifier::tests::classifies_tokio_tx_send_as_event_write ... ok
[INFO] [stdout] test extract_impl::tests::detects_pub_fn_at_root_as_entry_point ... ok
[INFO] [stdout] test extract_impl::tests::extracts_calls_edges ... ok
[INFO] [stdout] test extract_impl::tests::detects_async_boundary_on_await ... ok
[INFO] [stdout] test extract_impl::tests::extracts_constants_and_type_aliases ... ok
[INFO] [stdout] test extract_impl::tests::extracts_async_unsafe_metadata ... ok
[INFO] [stdout] test extract_impl::tests::detects_main_as_entry_point ... ok
[INFO] [stdout] test extract_impl::tests::extracts_condition_on_match_arm ... ok
[INFO] [stdout] test extract_impl::tests::extracts_enum_with_variants ... ok
[INFO] [stdout] test extract_impl::tests::detects_test_as_entry_point ... ok
[INFO] [stdout] test extract_impl::tests::extracts_condition_on_call_inside_if ... ok
[INFO] [stdout] test extract_impl::tests::extracts_glob_imports ... ok
[INFO] [stdout] test extract_impl::tests::extracts_function_signature ... ok
[INFO] [stdout] test extract_impl::tests::extracts_doc_comment ... ok
[INFO] [stdout] test extract_impl::tests::extracts_function ... ok
[INFO] [stdout] test extract_impl::tests::extracts_implements_edge ... ok
[INFO] [stdout] test extract_impl::tests::extracts_pub_crate_visibility ... ok
[INFO] [stdout] test extract_impl::tests::extracts_impl_block ... ok
[INFO] [stdout] test extract_impl::tests::extracts_inherits_edge_for_supertraits ... ok
[INFO] [stdout] test extract_impl::tests::extracts_struct_with_fields ... ok
[INFO] [stdout] test extract_impl::tests::extracts_structured_imports ... ok
[INFO] [stdout] test extract_impl::tests::extracts_inner_generic_type_refs ... ok
[INFO] [stdout] test extract_impl::tests::extracts_trait ... ok
[INFO] [stdout] test extract_impl::tests::extracts_module ... ok
[INFO] [stdout] test extract_impl::tests::extracts_type_ref_edges ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grapha_swift-aa80afe93449cb9d)
[INFO] [stdout] test extract_impl::tests::extracts_relative_imports ... ok
[INFO] [stdout] test extract_impl::tests::scopes_same_named_methods_by_owner ... ok
[INFO] [stdout] test extract_impl::tests::private_fn_at_root_is_not_entry_point ... ok
[INFO] [stdout] test extract_impl::tests::extracts_self_field_reads_writes_and_constant_reads ... ok
[INFO] [stdout] test extract_impl::tests::uniquifies_duplicate_impl_blocks_for_same_type ... ok
[INFO] [stdout] test extract_impl::tests::extracts_use_edges ... ok
[INFO] [stdout] test tests::discovers_single_cargo_package ... ok
[INFO] [stdout] test extract_impl::tests::normalizes_generic_qualified_call_targets_before_merge ... ok
[INFO] [stdout] test tests::discovers_workspace_members ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 77 tests
[INFO] [stdout] test bridge::tests::decodes_known_status_codes ... ok
[INFO] [stdout] test bridge::tests::ffi_aliases_use_explicit_status_signatures ... ok
[INFO] [stdout] test bridge::tests::rejects_unknown_status_codes ... ok
[INFO] [stdout] test binary::tests::test_bad_version_returns_none ... ok
[INFO] [stdout] test binary::tests::test_bad_magic_returns_none ... ok
[INFO] [stdout] test binary::tests::test_empty_buffer_parses ... ok
[INFO] [stdout] test classifier::tests::classifies_urlsession_as_network ... ok
[INFO] [stdout] test discovery_cache_tests::keeps_directory_roots_stable ... ok
[INFO] [stdout] test discovery_cache_tests::normalizes_file_roots_to_parent_directory ... ok
[INFO] [stdout] test discovery_cache_tests::caches_an_initial_miss ... ok
[INFO] [stdout] test discovery_cache_tests::cached_miss_for_one_project_does_not_block_other_project_discovery ... ok
[INFO] [stdout] test discovery_cache_tests::explicit_refresh_allows_rediscovery_after_a_cached_miss ... ok
[INFO] [stdout] test binary::tests::parses_imports_and_full_spans_from_v2_payload ... ok
[INFO] [stdout] test binary::tests::test_one_node_one_edge ... ok
[INFO] [stdout] test indexstore::tests::caches_handles_per_store_path ... ok
[INFO] [stdout] test indexstore::tests::capacity_eviction_closes_unused_store_handles ... ok
[INFO] [stdout] test discovery_cache_tests::prepare_project_refreshes_a_cached_miss ... ok
[INFO] [stdout] test indexstore::tests::reopens_after_capacity_eviction ... ok
[INFO] [stdout] test indexstore::tests::reuses_live_handle_for_same_path ... ok
[INFO] [stdout] test indexstore::tests::retains_handle_for_sequential_same_path_lookups ... ok
[INFO] [stdout] test marker_tests::localization_and_asset_markers_still_match_common_cases ... ok
[INFO] [stdout] test binary::tests::test_string_out_of_bounds_returns_none ... ok
[INFO] [stdout] test marker_tests::swiftui_markers_cover_view_signatures_and_builders ... ok
[INFO] [stdout] test marker_tests::swiftui_markers_ignore_plain_imports ... ok
[INFO] [stdout] test binary::tests::test_truncated_buffer_returns_none ... ok
[INFO] [stdout] test graph_pass::tests::marks_usr_calls_as_terminals ... ok
[INFO] [stdout] test module_discovery::tests::discovers_swift_package ... ok
[INFO] [stdout] test treesitter::common::tests::source_index_maps_lines_and_spans ... ok
[INFO] [stdout] test module_discovery::tests::discovers_test_fallback_when_no_subdirs ... ok
[INFO] [stdout] test module_discovery::tests::discovers_test_targets_as_modules ... ok
[INFO] [stdout] test plugin_tests::stamp_module_namespaces_package_manifest_ids ... ok
[INFO] [stdout] test treesitter::assets::tests::normalizes_generated_asset_wrapper_names_to_catalog_names ... ok
[INFO] [stdout] test treesitter::tests::detects_main_attr_as_entry_point ... ok
[INFO] [stdout] test treesitter::tests::enrich_doc_comments_patches_missing_docs ... ok
[INFO] [stdout] test treesitter::tests::detects_view_body_as_entry_point ... ok
[INFO] [stdout] test indexstore::tests::opens_same_path_only_once_during_concurrent_miss ... ok
[INFO] [stdout] test treesitter::tests::enrich_asset_references_tags_enclosing_nodes_with_first_image_asset ... ok
[INFO] [stdout] test index_store_toggle_tests::disabled_index_store_skips_initializer ... ok
[INFO] [stdout] test treesitter::tests::enrich_localization_metadata_marks_non_view_constructor_text_arguments ... ok
[INFO] [stdout] test treesitter::tests::enrich_localization_metadata_marks_generated_wrapper_symbols ... ok
[INFO] [stdout] test marker_tests::fallback_runs_l10n_enrichment_for_swiftui_custom_views_without_explicit_markers ... ok
[INFO] [stdout] test treesitter::tests::enrich_swiftui_structure_matches_view_helpers_by_owner_when_line_metadata_drifts ... ok
[INFO] [stdout] test treesitter::tests::enrich_swiftui_structure_overlays_synthetic_nodes_without_duplicating_declarations ... ok
[INFO] [stdout] test treesitter::tests::extracts_call_edges ... ok
[INFO] [stdout] test treesitter::tests::enrich_localization_metadata_marks_string_i18n_identifier_in_custom_view_args ... ok
[INFO] [stdout] test treesitter::tests::enrich_localization_metadata_marks_builtin_views_with_localized_string_key ... ok
[INFO] [stdout] test treesitter::tests::extracts_class ... ok
[INFO] [stdout] test treesitter::tests::extracts_doc_comment ... ok
[INFO] [stdout] test treesitter::tests::extracts_enum_with_cases ... ok
[INFO] [stdout] test treesitter::tests::extracts_doc_comment_with_attributes ... ok
[INFO] [stdout] test treesitter::tests::extracts_extension ... ok
[INFO] [stdout] test treesitter::tests::extracts_function ... ok
[INFO] [stdout] test treesitter::tests::extracts_function_signature ... ok
[INFO] [stdout] test treesitter::tests::extracts_import ... ok
[INFO] [stdout] test treesitter::tests::extracts_protocol ... ok
[INFO] [stdout] test treesitter::tests::extracts_protocol_conformance ... ok
[INFO] [stdout] test treesitter::tests::extracts_condition_on_call_inside_if ... ok
[INFO] [stdout] test treesitter::tests::extracts_struct ... ok
[INFO] [stdout] test treesitter::tests::extracts_swiftui_structure_for_same_type_view_methods ... ok
[INFO] [stdout] test treesitter::tests::enriches_computed_properties_with_read_dependencies ... ok
[INFO] [stdout] test treesitter::tests::extracts_swiftui_branch_hierarchy ... ok
[INFO] [stdout] test treesitter::tests::localized_reference_ignores_non_localized_member_access ... ok
[INFO] [stdout] test treesitter::tests::enrich_localization_metadata_marks_custom_view_string_arguments ... ok
[INFO] [stdout] test treesitter::tests::localized_text_reference_marks_text_i18n_identifier_as_possible_wrapper ... ok
[INFO] [stdout] test treesitter::tests::multiple_extensions_get_distinct_ids ... ok
[INFO] [stdout] test treesitter::tests::extracts_swiftui_view_hierarchy_and_type_refs ... ok
[INFO] [stdout] test treesitter::tests::excludes_action_closures_from_structural_view_tree ... ok
[INFO] [stdout] test treesitter::tests::scopes_body_ids_per_view_type ... ok
[INFO] [stdout] test treesitter::tests::marks_swiftui_dynamic_properties_as_invalidation_sources ... ok
[INFO] [stdout] test treesitter::tests::source_contains_image_asset_markers_detects_swiftui_and_uikit_calls ... ok
[INFO] [stdout] test treesitter::tests::overloaded_initializers_get_distinct_ids ... ok
[INFO] [stdout] test treesitter::tests::property_accesses_become_reads_not_calls ... ok
[INFO] [stdout] test treesitter::tests::enriches_swiftui_body_with_read_dependencies ... ok
[INFO] [stdout] test treesitter::tests::extracts_optional_some_view_structure_and_localized_aliases ... ok
[INFO] [stdout] test treesitter::tests::extracts_swiftui_structure_through_modifier_chains_and_view_refs ... ok
[INFO] [stdout] test treesitter::tests::enrich_localization_metadata_marks_swiftui_text_usages ... ok
[INFO] [stdout] test treesitter::tests::skips_argument_labels_when_enriching_property_reads ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 77 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.37s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/build_modes.rs (/opt/rustwide/target/debug/deps/build_modes-86e5d83f6f7b7438)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test auto_mode_falls_back_when_swift_build_fails ... ok
[INFO] [stdout] test auto_and_required_diverge_when_package_manifest_is_missing ... ok
[INFO] [stdout] test launch_failure_only_falls_back_in_auto_mode ... ok
[INFO] [stdout] test off_mode_skips_bridge_build_without_invoking_swift ... ok
[INFO] [stdout] test parses_default_mode_as_auto ... ok
[INFO] [stdout] test staged_bridge_dir_uses_profile_output_directory ... ok
[INFO] [stdout] test success_and_missing_dylib_decisions_are_mode_aware ... ok
[INFO] [stdout] test rejects_unknown_modes ... ok
[INFO] [stdout] test required_mode_fails_when_swift_build_fails ... ok
[INFO] [stdout] test watches_all_swift_bridge_inputs ... ok
[INFO] [stdout] test parses_known_modes ... ok
[INFO] [stdout] test bridge_build_uses_stable_profile_scratch_space ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/extract_swift_semantic_parity.rs (/opt/rustwide/target/debug/deps/extract_swift_semantic_parity-fba54276002cf702)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test extract_swift_fallback_does_not_infer_known_protocols_as_superclasses ... ok
[INFO] [stdout] test extract_swift_fallback_does_not_infer_external_protocols_in_mixed_lists ... ok
[INFO] [stdout] test extract_swift_classifies_protocol_conformance_independent_of_declaration_order ... ok
[INFO] [stdout] test extract_swift_fallback_keeps_external_superclass_in_mixed_inheritance_lists ... ok
[INFO] [stdout] test extract_swift_fallback_keeps_nsobject_superclass_in_mixed_lists ... ok
[INFO] [stdout] test extract_swift_fallback_does_not_upgrade_view_protocol_to_superclass ... ok
[INFO] [stdout] test extract_swift_without_index_store_matches_fallback_semantics ... ok
[INFO] [stdout] test extract_swift_marks_dynamic_properties_as_invalidation_sources ... ok
[INFO] [stdout] test extract_swift_distinguishes_inherits_from_implements ... ok
[INFO] [stdout] test extract_swift_matches_fallback_semantics_for_task3_fixture ... ok
[INFO] [stdout] test extract_swift_covers_localization_and_asset_enrichment_paths ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.25s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests grapha
[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]    Doc-tests grapha_core
[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]    Doc-tests grapha_rust
[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]    Doc-tests grapha_swift
[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" "6469f3fb078fbe1eaa3a03c6cc8c2c947ea5f881429f6fd63a0c27b781444814", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6469f3fb078fbe1eaa3a03c6cc8c2c947ea5f881429f6fd63a0c27b781444814", kill_on_drop: false }`
[INFO] [stdout] 6469f3fb078fbe1eaa3a03c6cc8c2c947ea5f881429f6fd63a0c27b781444814
