[INFO] fetching crate the-code-graph-domain 0.1.2...
[INFO] testing the-code-graph-domain-0.1.2 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate the-code-graph-domain 0.1.2 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate the-code-graph-domain 0.1.2
[INFO] finished tweaking crates.io crate the-code-graph-domain 0.1.2
[INFO] tweaked toml for crates.io crate the-code-graph-domain 0.1.2 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate the-code-graph-domain 0.1.2 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 the-code-graph-domain 0.1.2 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-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 4000177459c1bf165e229c8bb012674bd051ceaf187bc92c29a8d8b132cc2b3c
[INFO] running `Command { std: "docker" "start" "-a" "4000177459c1bf165e229c8bb012674bd051ceaf187bc92c29a8d8b132cc2b3c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4000177459c1bf165e229c8bb012674bd051ceaf187bc92c29a8d8b132cc2b3c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4000177459c1bf165e229c8bb012674bd051ceaf187bc92c29a8d8b132cc2b3c", kill_on_drop: false }`
[INFO] [stdout] 4000177459c1bf165e229c8bb012674bd051ceaf187bc92c29a8d8b132cc2b3c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] d580d7b74782ac755b1be521614dbfb0c9e24ad97c7d65d0f7608a861628b4fc
[INFO] running `Command { std: "docker" "start" "-a" "d580d7b74782ac755b1be521614dbfb0c9e24ad97c7d65d0f7608a861628b4fc", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling the-code-graph-domain v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.13s
[INFO] running `Command { std: "docker" "inspect" "d580d7b74782ac755b1be521614dbfb0c9e24ad97c7d65d0f7608a861628b4fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d580d7b74782ac755b1be521614dbfb0c9e24ad97c7d65d0f7608a861628b4fc", kill_on_drop: false }`
[INFO] [stdout] d580d7b74782ac755b1be521614dbfb0c9e24ad97c7d65d0f7608a861628b4fc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 8fcf3edb52bd94da0ee17274876c9937f8d36198e2e6b963f8679c3114b2914e
[INFO] running `Command { std: "docker" "start" "-a" "8fcf3edb52bd94da0ee17274876c9937f8d36198e2e6b963f8679c3114b2914e", kill_on_drop: false }`
[INFO] [stderr]    Compiling the-code-graph-domain v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.87s
[INFO] running `Command { std: "docker" "inspect" "8fcf3edb52bd94da0ee17274876c9937f8d36198e2e6b963f8679c3114b2914e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8fcf3edb52bd94da0ee17274876c9937f8d36198e2e6b963f8679c3114b2914e", kill_on_drop: false }`
[INFO] [stdout] 8fcf3edb52bd94da0ee17274876c9937f8d36198e2e6b963f8679c3114b2914e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 1b82f07985d5cf39f4268773e16cd934b3c25e7a5cc8f80634b9341b5d4a7fda
[INFO] running `Command { std: "docker" "start" "-a" "1b82f07985d5cf39f4268773e16cd934b3c25e7a5cc8f80634b9341b5d4a7fda", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/the_code_graph_domain-bb58cbb6b9b9baa3)
[INFO] [stdout] 
[INFO] [stdout] running 208 tests
[INFO] [stdout] test analysis::blast_radius::tests::blast_radius_from_single_symbol ... ok
[INFO] [stdout] test analysis::blast_radius::tests::blast_radius_from_file_target ... ok
[INFO] [stdout] test analysis::change_detection::tests::different_file_no_match ... ok
[INFO] [stdout] test analysis::change_detection::tests::overlapping_hunk_matches_symbol ... ok
[INFO] [stdout] test analysis::change_detection::tests::non_overlapping_hunk_no_match ... ok
[INFO] [stdout] test analysis::clones::tests::bucket_key_groups_similar_symbols ... ok
[INFO] [stdout] test analysis::clones::tests::bucket_key_separates_different_kinds ... ok
[INFO] [stdout] test analysis::clones::tests::cluster_ids_descending_by_size ... ok
[INFO] [stdout] test analysis::clones::tests::cluster_transitive ... ok
[INFO] [stdout] test analysis::clones::tests::cluster_separate_components ... ok
[INFO] [stdout] test analysis::clones::tests::count_bin_boundaries ... ok
[INFO] [stdout] test analysis::clones::tests::fingerprint_empty_input ... ok
[INFO] [stdout] test analysis::clones::tests::compare_pair_type2_renamed_vars ... ok
[INFO] [stdout] test analysis::clones::tests::fingerprint_captures_symbol_structure ... ok
[INFO] [stdout] test analysis::clones::tests::fingerprint_filters_by_min_lines ... ok
[INFO] [stdout] test analysis::clones::tests::fingerprint_counts_contains_edges_as_children ... ok
[INFO] [stdout] test analysis::clones::tests::jaccard_both_empty ... ok
[INFO] [stdout] test analysis::clones::tests::group_into_buckets_correct_grouping ... ok
[INFO] [stdout] test analysis::clones::tests::jaccard_disjoint_tokens ... ok
[INFO] [stdout] test analysis::change_detection::tests::pure_deletion_hunk_matches_symbol ... ok
[INFO] [stdout] test analysis::clones::tests::fingerprint_edge_kind_bitset ... ok
[INFO] [stdout] test analysis::clones::tests::cluster_empty_matches ... ok
[INFO] [stdout] test analysis::clones::tests::compare_pair_type1_exact_match ... ok
[INFO] [stdout] test analysis::clones::tests::compare_pair_below_threshold_returns_none ... ok
[INFO] [stdout] test analysis::clones::tests::compare_pair_cross_language_structural_only ... ok
[INFO] [stdout] test analysis::clones::tests::jaccard_partial_overlap ... ok
[INFO] [stdout] test analysis::clones::tests::tokenize_empty_source ... ok
[INFO] [stdout] test analysis::community::tests::derive_name_uses_most_common_file_stem ... ok
[INFO] [stdout] test analysis::clones::tests::type2_clones_detected_after_normalization ... ok
[INFO] [stdout] test analysis::community::tests::graph_deduplicates_bidirectional_edges ... ok
[INFO] [stdout] test analysis::community::tests::graph_from_symbols_and_edges ... ok
[INFO] [stdout] test analysis::community::tests::isolated_nodes_have_zero_degree ... ok
[INFO] [stdout] test analysis::community::tests::detect_communities_modularity_positive_for_multi_community ... ok
[INFO] [stdout] test analysis::community::tests::derive_name_falls_back_for_generic_stems ... ok
[INFO] [stdout] test analysis::community::tests::detect_communities_counts_isolated_nodes ... ok
[INFO] [stdout] test analysis::community::tests::leiden_triangle_finds_one_community ... ok
[INFO] [stdout] test analysis::community::tests::detect_communities_returns_sorted_by_size ... ok
[INFO] [stdout] test analysis::community::tests::leiden_empty_graph ... ok
[INFO] [stdout] test analysis::community::tests::leiden_all_communities_connected ... ok
[INFO] [stdout] test analysis::community::tests::leiden_two_cliques_finds_two_communities ... ok
[INFO] [stdout] test analysis::community::tests::graph_filters_non_high_confidence_edges ... ok
[INFO] [stdout] test analysis::clones::tests::jaccard_identical_tokens ... ok
[INFO] [stdout] test analysis::community::tests::local_moving_deterministic_with_same_seed ... ok
[INFO] [stdout] test analysis::clones::tests::tokenize_strips_comments_and_splits ... ok
[INFO] [stdout] test analysis::community::tests::empty_graph_modularity_is_zero ... ok
[INFO] [stdout] test analysis::community::tests::local_moving_merges_triangle ... ok
[INFO] [stdout] test analysis::community::tests::modularity_singleton_partition_is_zero ... ok
[INFO] [stdout] test analysis::community::tests::detect_communities_min_size_filters ... ok
[INFO] [stdout] test analysis::community::tests::local_moving_no_edges_no_moves ... ok
[INFO] [stdout] test analysis::community::tests::refinement_preserves_connectivity ... ok
[INFO] [stdout] test analysis::community::tests::modularity_all_in_one_community ... ok
[INFO] [stdout] test analysis::community::tests::local_moving_separates_two_cliques ... ok
[INFO] [stdout] test analysis::dead_code::tests::entry_point_test_kind_not_excluded_as_entry_point ... ok
[INFO] [stdout] test analysis::clones::tests::normalize_replaces_identifiers_with_positional_placeholders ... ok
[INFO] [stdout] test analysis::dead_code::tests::entry_point_patterns_add_exclusions ... ok
[INFO] [stdout] test analysis::dead_code::tests::exclusion_layer_order_first_match_wins ... ok
[INFO] [stdout] test analysis::dead_code::tests::include_tests_flags_dead_tests ... ok
[INFO] [stdout] test analysis::community::tests::leiden_deterministic_with_seed ... ok
[INFO] [stdout] test analysis::dead_code::tests::exported_symbol_excluded ... ok
[INFO] [stdout] test analysis::flow::tests::brandes_empty_graph ... ok
[INFO] [stdout] test analysis::community::tests::leiden_higher_resolution_more_communities ... ok
[INFO] [stdout] test analysis::flow::tests::brandes_disconnected_nodes_have_zero_betweenness ... ok
[INFO] [stdout] test analysis::flow::tests::brandes_linear_graph_center_has_highest_centrality ... ok
[INFO] [stdout] test analysis::dead_code::tests::kind_filter_restricts_results ... ok
[INFO] [stdout] test analysis::dead_code::tests::migration_file_excluded ... ok
[INFO] [stdout] test analysis::flow::tests::brandes_diamond_graph_intermediaries_have_betweenness ... ok
[INFO] [stdout] test analysis::dead_code::tests::structural_edges_do_not_count_as_usage ... ok
[INFO] [stdout] test analysis::dead_code::tests::empty_graph_returns_zero_percentage ... ok
[INFO] [stdout] test analysis::dead_code::tests::used_symbol_alive ... ok
[INFO] [stdout] test analysis::community::tests::refinement_singletons_remain_singletons ... ok
[INFO] [stdout] test analysis::flow::tests::brandes_single_node_no_division_by_zero ... ok
[INFO] [stdout] test analysis::flow::tests::detect_cli_command ... ok
[INFO] [stdout] test analysis::flow::tests::detect_python_dunder_main ... ok
[INFO] [stdout] test analysis::flow::tests::detect_test_prefix_python ... ok
[INFO] [stdout] test analysis::flow::tests::brandes_normalization_directed ... ok
[INFO] [stdout] test analysis::flow::tests::detect_test_entry_point ... ok
[INFO] [stdout] test analysis::flow::tests::detect_http_handler ... ok
[INFO] [stdout] test analysis::dead_code::tests::summary_statistics_correct ... ok
[INFO] [stdout] test analysis::dead_code::tests::tested_by_does_not_count_as_usage ... ok
[INFO] [stdout] test analysis::flow::tests::detect_main_entry_point ... ok
[INFO] [stdout] test analysis::dead_code::tests::user_pattern_excludes_by_qualified_name ... ok
[INFO] [stdout] test analysis::flow::tests::detect_tokio_main ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_cycle_detection ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_branching ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_depth_limit ... ok
[INFO] [stdout] test analysis::dead_code::tests::unused_symbol_detected ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_global_cap ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_linear_graph ... ok
[INFO] [stdout] test analysis::flow::tests::extra_entry_points_added ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_multiple_entry_points_share_global_cap ... ok
[INFO] [stdout] test analysis::flow::tests::detect_public_root ... ok
[INFO] [stdout] test analysis::flow::tests::excluded_entry_points_filtered ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_only_high_confidence_edges ... ok
[INFO] [stdout] test analysis::impact::tests::diff_impact_non_overlapping_returns_empty ... ok
[INFO] [stdout] test analysis::flow::tests::public_root_excluded_when_has_incoming_calls ... ok
[INFO] [stdout] test analysis::flow::tests::public_root_excludes_non_callable_kinds ... ok
[INFO] [stdout] test analysis::flow::tests::public_root_capped_at_max ... ok
[INFO] [stdout] test analysis::dead_code::tests::test_function_excluded_by_default ... ok
[INFO] [stdout] test analysis::risk::tests::test_risk_stats_median ... ok
[INFO] [stdout] test analysis::risk::tests::test_sensitivity_no_match ... ok
[INFO] [stdout] test analysis::flow::tests::brandes_only_uses_high_confidence_edges ... ok
[INFO] [stdout] test analysis::risk::tests::test_sensitivity_word_boundary ... ok
[INFO] [stdout] test analysis::risk::tests::test_coupling_both_endpoints_must_be_symbols ... ok
[INFO] [stdout] test analysis::risk::tests::test_coupling_excludes_structural_edges ... ok
[INFO] [stdout] test analysis::risk::tests::test_coupling_max_degree_zero ... ok
[INFO] [stdout] test analysis::impact::tests::diff_impact_overlapping_hunk_produces_full_report ... ok
[INFO] [stdout] test analysis::risk::tests::test_sensitivity_camel_case ... ok
[INFO] [stdout] test analysis::risk::tests::test_aggregate_file_scores ... ok
[INFO] [stdout] test analysis::risk::tests::test_score_symbols_weighted_sum ... ok
[INFO] [stdout] test analysis::risk::tests::test_sensitivity_decorators ... ok
[INFO] [stdout] test analysis::risk::tests::test_coupling_normalization ... ok
[INFO] [stdout] test analysis::risk::tests::test_criticality_delegates_to_brandes ... ok
[INFO] [stdout] test analysis::risk::tests::test_test_gap_untested ... ok
[INFO] [stdout] test analysis::search::tests::detect_kind_boost_pascal_case ... ok
[INFO] [stdout] test analysis::search::tests::detect_kind_boost_qualified ... ok
[INFO] [stdout] test analysis::search::tests::qualified_name_boost_with_colons ... ok
[INFO] [stdout] test analysis::search::tests::qualified_name_boost_without_colons ... ok
[INFO] [stdout] test analysis::search::tests::rrf_merge_two_lists_boosts_overlap ... ok
[INFO] [stdout] test analysis::search::tests::detect_kind_boost_snake_case ... ok
[INFO] [stdout] test analysis::search::tests::symbol_to_text_with_edges ... ok
[INFO] [stdout] test error::tests::parse_error_display_contains_file_and_message ... ok
[INFO] [stdout] test analysis::search::tests::rrf_merge_empty_lists ... ok
[INFO] [stdout] test model::tests::all_16_edge_kinds_have_confidence ... ok
[INFO] [stdout] test model::tests::confidence_ordering ... ok
[INFO] [stdout] test analysis::search::tests::symbol_to_text_basic ... ok
[INFO] [stdout] test model::tests::graph_stats_optional_fields_present ... ok
[INFO] [stdout] test model::tests::flow_types_serde_roundtrip ... ok
[INFO] [stdout] test error::tests::filesystem_error_display_contains_path ... ok
[INFO] [stdout] test error::tests::all_variants_display_nonempty ... ok
[INFO] [stdout] test analysis::search::tests::rrf_merge_single_list ... ok
[INFO] [stdout] test model::tests::graph_stats_optional_fields_default_none ... ok
[INFO] [stdout] test analysis::risk::tests::test_test_gap_tested ... ok
[INFO] [stdout] test analysis::risk::tests::test_split_segments ... ok
[INFO] [stdout] test model::tests::qualified_name_borrow_str_hashmap_lookup ... ok
[INFO] [stdout] test model::tests::qualified_name_rejects_empty ... ok
[INFO] [stdout] test model::tests::qualified_name_rejects_empty_file_path ... ok
[INFO] [stdout] test model::tests::qualified_name_parse_valid ... ok
[INFO] [stdout] test model::tests::node_id_returns_correct_identifier ... ok
[INFO] [stdout] test model::tests::qualified_name_serde_roundtrip ... ok
[INFO] [stdout] test model::tests::risk_weights_default_sum_to_one ... ok
[INFO] [stdout] test model::tests::risk_score_serde_roundtrip ... ok
[INFO] [stdout] test model::tests::qualified_name_rejects_empty_symbol_path ... ok
[INFO] [stdout] test ports::tests::file_data_construction ... ok
[INFO] [stdout] test model::tests::risk_weights_normalized_preserves_proportions ... ok
[INFO] [stdout] test ports::tests::graph_store_is_send_sync ... ok
[INFO] [stdout] test ports::tests::file_system_is_send_sync ... ok
[INFO] [stdout] test ports::tests::parse_provider_is_send_sync ... ok
[INFO] [stdout] test ports::tests::search_index_is_send_sync ... ok
[INFO] [stdout] test traversal::tests::bfs_backward_finds_callers ... ok
[INFO] [stdout] test traversal::tests::dfs_empty_graph_returns_empty ... ok
[INFO] [stdout] test traversal::tests::bfs_empty_graph_returns_empty ... ok
[INFO] [stdout] test traversal::tests::in_memory_graph_incremental_construction ... ok
[INFO] [stdout] test use_cases::clones::tests::analyze_empty_graph ... ok
[INFO] [stdout] test traversal::tests::bfs_filtered_excludes_low_confidence ... ok
[INFO] [stdout] test traversal::tests::self_referential_edge_handled_gracefully ... ok
[INFO] [stdout] test ports::tests::git_provider_is_send_sync ... ok
[INFO] [stdout] test traversal::tests::dfs_detects_cycle_without_infinite_loop ... ok
[INFO] [stdout] test model::tests::qualified_name_rejects_missing_separator ... ok
[INFO] [stdout] test traversal::tests::bfs_returns_nodes_at_correct_depth ... ok
[INFO] [stdout] test use_cases::clones::tests::analyze_filters_by_min_lines ... ok
[INFO] [stdout] test use_cases::clones::tests::analyze_detects_type2_clones ... ok
[INFO] [stdout] test use_cases::clones::tests::analyze_single_symbol ... ok
[INFO] [stdout] test use_cases::community::tests::community_of_finds_symbol ... ok
[INFO] [stdout] test use_cases::embed::tests::edge_change_triggers_reembed ... ok
[INFO] [stdout] test use_cases::embed::tests::embed_all_embeds_symbols ... ok
[INFO] [stdout] test traversal::tests::bfs_respects_max_depth ... ok
[INFO] [stdout] test model::tests::serde_roundtrip_all_supporting_types ... ok
[INFO] [stdout] test use_cases::dead_code::tests::use_case_detects_dead_code ... ok
[INFO] [stdout] test analysis::flow::tests::enumerate_flows_visit_budget ... ok
[INFO] [stdout] test use_cases::embed::tests::embed_empty_store_returns_zero ... ok
[INFO] [stdout] test use_cases::community::tests::analyze_returns_communities ... ok
[INFO] [stdout] test use_cases::dead_code::tests::use_case_with_include_tests ... ok
[INFO] [stdout] test use_cases::flow::tests::analyze_empty_graph_returns_zeros ... ok
[INFO] [stdout] test use_cases::embed::tests::embed_incremental_skips_unchanged ... ok
[INFO] [stdout] test use_cases::flow::tests::flows_through_filters_correctly ... ok
[INFO] [stdout] test use_cases::community::tests::community_of_returns_none_for_unknown ... ok
[INFO] [stdout] test use_cases::flow::tests::flows_through_ignores_medium_confidence_reachability ... ok
[INFO] [stdout] test use_cases::flow::tests::analyze_returns_flows_and_criticality ... ok
[INFO] [stdout] test use_cases::index::tests::full_index_empty_file_list_returns_zeros ... ok
[INFO] [stdout] test use_cases::embed::tests::cleanup_orphans_removes_stale ... ok
[INFO] [stdout] test use_cases::index::tests::full_index_with_two_files_returns_correct_stats ... ok
[INFO] [stdout] test use_cases::flow::tests::criticality_returns_sorted_scores ... ok
[INFO] [stdout] test use_cases::index::tests::incremental_index_removes_deleted_files ... ok
[INFO] [stdout] test use_cases::index::tests::incremental_index_reparses_one_hop_dependents ... ok
[INFO] [stdout] test use_cases::flow::tests::flows_through_nonexistent_symbol_returns_empty ... ok
[INFO] [stdout] test use_cases::index::tests::incremental_index_skips_unchanged_files ... ok
[INFO] [stdout] test use_cases::impact::tests::blast_radius_with_mock_returns_transitive_closure ... ok
[INFO] [stdout] test use_cases::impact::tests::diff_impact_non_overlapping_returns_empty_report ... ok
[INFO] [stdout] test use_cases::index::tests::full_index_with_three_files_reads_all ... ok
[INFO] [stdout] test use_cases::index::tests::incremental_index_reparses_changed_files ... ok
[INFO] [stdout] test use_cases::impact::tests::diff_impact_overlapping_returns_affected_symbols ... ok
[INFO] [stdout] test use_cases::index::tests::full_index_duration_is_non_zero ... ok
[INFO] [stdout] test use_cases::index::tests::incremental_files_processes_explicit_list ... ok
[INFO] [stdout] test use_cases::index::tests::incremental_files_skips_unchanged_in_list ... ok
[INFO] [stdout] test use_cases::query::tests::search_fts_only_skips_vectors ... ok
[INFO] [stdout] test use_cases::query::tests::find_exact_match ... ok
[INFO] [stdout] test use_cases::query::tests::find_exact_takes_priority_over_prefix ... ok
[INFO] [stdout] test use_cases::query::tests::find_no_match_returns_empty ... ok
[INFO] [stdout] test use_cases::index::tests::incremental_index_no_modified_files_returns_zeros ... ok
[INFO] [stdout] test use_cases::query::tests::find_prefix_fallback ... ok
[INFO] [stdout] test use_cases::risk::tests::test_weight_normalization ... ok
[INFO] [stdout] test use_cases::query::tests::search_falls_back_to_fts_when_no_vector_store ... ok
[INFO] [stdout] test use_cases::query::tests::search_semantic_only_skips_fts ... ok
[INFO] [stderr]    Doc-tests the_code_graph_domain
[INFO] [stdout] test use_cases::risk::tests::test_use_case_score_symbol_not_found ... ok
[INFO] [stdout] test use_cases::risk::tests::test_use_case_analyze ... ok
[INFO] [stdout] test use_cases::risk::tests::test_use_case_score_symbol ... ok
[INFO] [stdout] test use_cases::query::tests::search_uses_hybrid_when_vector_store_has_embeddings ... ok
[INFO] [stdout] test use_cases::query::tests::search_empty_query_returns_empty ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 208 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[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" "1b82f07985d5cf39f4268773e16cd934b3c25e7a5cc8f80634b9341b5d4a7fda", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b82f07985d5cf39f4268773e16cd934b3c25e7a5cc8f80634b9341b5d4a7fda", kill_on_drop: false }`
[INFO] [stdout] 1b82f07985d5cf39f4268773e16cd934b3c25e7a5cc8f80634b9341b5d4a7fda
