[INFO] cloning repository https://github.com/AllyMarthaJ/git-reabsorb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AllyMarthaJ/git-reabsorb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAllyMarthaJ%2Fgit-reabsorb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAllyMarthaJ%2Fgit-reabsorb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5365f3160257a63a0bbb4c55b1de3fbc8e581e9f
[INFO] testing AllyMarthaJ/git-reabsorb against beta-2026-03-05 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAllyMarthaJ%2Fgit-reabsorb" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AllyMarthaJ/git-reabsorb
[INFO] finished tweaking git repo https://github.com/AllyMarthaJ/git-reabsorb
[INFO] tweaked toml for git repo https://github.com/AllyMarthaJ/git-reabsorb written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AllyMarthaJ/git-reabsorb on toolchain beta-2026-03-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AllyMarthaJ/git-reabsorb 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-03-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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-03-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8ee7101303112ce50b49dec485f4d5cb34f7c94856ac19950f3dd3904b31b542
[INFO] running `Command { std: "docker" "start" "-a" "8ee7101303112ce50b49dec485f4d5cb34f7c94856ac19950f3dd3904b31b542", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8ee7101303112ce50b49dec485f4d5cb34f7c94856ac19950f3dd3904b31b542", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ee7101303112ce50b49dec485f4d5cb34f7c94856ac19950f3dd3904b31b542", kill_on_drop: false }`
[INFO] [stdout] 8ee7101303112ce50b49dec485f4d5cb34f7c94856ac19950f3dd3904b31b542
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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-03-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 35d48c5bc95a003177061f6171e18d31ac1ea252d1034720238002a7b78fdb01
[INFO] running `Command { std: "docker" "start" "-a" "35d48c5bc95a003177061f6171e18d31ac1ea252d1034720238002a7b78fdb01", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling jiff v0.2.16
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling ctrlc v3.5.1
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling env_filter v0.1.4
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling git-reabsorb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.24s
[INFO] running `Command { std: "docker" "inspect" "35d48c5bc95a003177061f6171e18d31ac1ea252d1034720238002a7b78fdb01", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "35d48c5bc95a003177061f6171e18d31ac1ea252d1034720238002a7b78fdb01", kill_on_drop: false }`
[INFO] [stdout] 35d48c5bc95a003177061f6171e18d31ac1ea252d1034720238002a7b78fdb01
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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-03-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2c909bc0260c414e9b5a68666a620c3b329c9d4cf86e42d0505351afae4f9264
[INFO] running `Command { std: "docker" "start" "-a" "2c909bc0260c414e9b5a68666a620c3b329c9d4cf86e42d0505351afae4f9264", kill_on_drop: false }`
[INFO] [stderr]    Compiling git-reabsorb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 9.30s
[INFO] running `Command { std: "docker" "inspect" "2c909bc0260c414e9b5a68666a620c3b329c9d4cf86e42d0505351afae4f9264", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c909bc0260c414e9b5a68666a620c3b329c9d4cf86e42d0505351afae4f9264", kill_on_drop: false }`
[INFO] [stdout] 2c909bc0260c414e9b5a68666a620c3b329c9d4cf86e42d0505351afae4f9264
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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-03-05" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c3dc92caa3547b0ba47194c25b211f211aa55ac1b26842eef51b189ff3949922
[INFO] running `Command { std: "docker" "start" "-a" "c3dc92caa3547b0ba47194c25b211f211aa55ac1b26842eef51b189ff3949922", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/git_reabsorb-495d89de987b491c)
[INFO] [stdout] 
[INFO] [stdout] running 165 tests
[INFO] [stdout] test assessment::comparison::tests::compare_shows_improvement ... ok
[INFO] [stdout] test assessment::criteria::atomicity::tests::has_five_levels ... ok
[INFO] [stdout] test assessment::comparison::tests::compare_shows_regression ... ok
[INFO] [stdout] test assessment::criteria::atomicity::tests::has_indicators ... ok
[INFO] [stdout] test assessment::criteria::cohesion::tests::has_five_levels ... ok
[INFO] [stdout] test assessment::criteria::message::tests::has_higher_weight ... ok
[INFO] [stdout] test assessment::criteria::message::tests::max_weighted_score ... ok
[INFO] [stdout] test assessment::criteria::reversibility::tests::has_five_levels ... ok
[INFO] [stdout] test assessment::criteria::reversibility::tests::has_lower_weight ... ok
[INFO] [stdout] test assessment::criteria::scope::tests::has_lower_weight ... ok
[INFO] [stdout] test assessment::criteria::tests::criterion_id_display ... ok
[INFO] [stdout] test assessment::criteria::scope::tests::max_weighted_score ... ok
[INFO] [stdout] test assessment::criteria::tests::all_criteria ... ok
[INFO] [stdout] test app::planner::tests::drops_empty_commits ... ok
[INFO] [stdout] test assessment::criteria::tests::criterion_id_parse ... ok
[INFO] [stdout] test assessment::llm::parser::tests::parses_response_with_markdown ... ok
[INFO] [stdout] test assessment::llm::parser::tests::parses_valid_batched_response ... ok
[INFO] [stdout] test assessment::llm::parser::tests::rejects_duplicate_criterion ... ok
[INFO] [stdout] test assessment::llm::parser::tests::parses_multi_criterion_response ... ok
[INFO] [stdout] test assessment::llm::parser::tests::rejects_invalid_level ... ok
[INFO] [stdout] test assessment::llm::parser::tests::rejects_unknown_criterion ... ok
[INFO] [stdout] test assessment::llm::prompt::tests::builds_complete_prompt ... ok
[INFO] [stdout] test assessment::llm::prompt::tests::select_context_all_fit ... ok
[INFO] [stdout] test assessment::llm::parser::tests::rejects_missing_criteria ... ok
[INFO] [stdout] test assessment::llm::prompt::tests::select_context_capped ... ok
[INFO] [stdout] test assessment::llm::prompt::tests::select_context_near_end ... ok
[INFO] [stdout] test assessment::llm::parser::tests::rejects_no_json ... ok
[INFO] [stdout] test assessment::llm::prompt::tests::select_context_near_start ... ok
[INFO] [stdout] test assessment::llm::prompt::tests::prompt_caps_context_with_range_note ... ok
[INFO] [stdout] test assessment::llm::tests::assesses_multiple_criteria ... ok
[INFO] [stdout] test assessment::llm::tests::assesses_with_mock_client ... ok
[INFO] [stdout] test assessment::report::tests::compact_format_is_brief ... ok
[INFO] [stdout] test assessment::report::tests::pretty_format_includes_score ... ok
[INFO] [stdout] test assessment::tests::criterion_id_all ... ok
[INFO] [stdout] test assessment::llm::parser::tests::sorts_scores_to_match_definitions_order ... ok
[INFO] [stdout] test assessment::llm::prompt::tests::truncates_long_diff ... ok
[INFO] [stdout] test assessment::report::tests::json_format_is_valid ... ok
[INFO] [stdout] test editor::tests::test_strip_comments ... ok
[INFO] [stdout] test editor::tests::test_strip_comments_empty ... ok
[INFO] [stdout] test git::tests::test_patch_for_deletion ... ok
[INFO] [stdout] test assessment::types::tests::assessment_level_construction ... ok
[INFO] [stdout] test assessment::types::tests::criterion_score_serialization ... ok
[INFO] [stdout] test features::tests::test_feature_parse ... ok
[INFO] [stdout] test features::tests::test_features_enable_disable ... ok
[INFO] [stdout] test llm::tests::test_mock_client ... ok
[INFO] [stdout] test llm::tests::test_provider_parse ... ok
[INFO] [stdout] test git::tests::test_patch_for_new_file_in_range ... ok
[INFO] [stdout] test llm::tests::test_config_overrides ... ok
[INFO] [stdout] test models::tests::test_commit_description_to_message_long_contains_short ... ok
[INFO] [stdout] test models::tests::test_commit_description_to_message_short_and_body ... ok
[INFO] [stdout] test models::tests::test_commit_description_to_message_short_only ... ok
[INFO] [stdout] test features::tests::test_features_with_overrides ... ok
[INFO] [stdout] test models::tests::test_commit_description_new ... ok
[INFO] [stdout] test models::tests::test_hunk_to_full_patch ... ok
[INFO] [stdout] test models::tests::test_commit_description_short_only ... ok
[INFO] [stdout] test models::tests::test_diff_line_variants ... ok
[INFO] [stdout] test models::tests::test_hunk_id_equality ... ok
[INFO] [stdout] test models::tests::test_hunk_to_full_patch_deleted_file ... ok
[INFO] [stdout] test models::tests::test_hunk_to_patch ... ok
[INFO] [stdout] test models::tests::test_hunk_to_full_patch_new_file ... ok
[INFO] [stdout] test git::tests::test_patch_for_existing_file ... ok
[INFO] [stdout] test git::tests::test_patch_for_new_file ... ok
[INFO] [stdout] test models::tests::test_planned_commit_from_hunk_ids ... ok
[INFO] [stdout] test models::tests::test_hunk_to_patch_all_added ... ok
[INFO] [stdout] test models::tests::test_planned_commit_with_dependencies ... ok
[INFO] [stdout] test patch::context::tests::test_determine_change_type_deletion ... ok
[INFO] [stdout] test patch::context::tests::test_determine_change_type_existing_file ... ok
[INFO] [stdout] test models::tests::test_hunk_to_patch_with_removed_lines ... ok
[INFO] [stdout] test patch::context::tests::test_determine_change_type_modification_hunk_no_file_becomes_new ... ok
[INFO] [stdout] test models::tests::test_planned_commit_with_new_hunk ... ok
[INFO] [stdout] test patch::context::tests::test_determine_change_type_new_file_by_hunk ... ok
[INFO] [stdout] test patch::context::tests::test_determine_change_type_new_file_by_range ... ok
[INFO] [stdout] test patch::context::tests::test_generate_patch_modification ... ok
[INFO] [stdout] test patch::context::tests::test_patch_context_empty ... ok
[INFO] [stdout] test patch::context::tests::test_patch_context_with_new_files ... ok
[INFO] [stdout] test patch::tests::test_hunk_id_starts_from_provided_value ... ok
[INFO] [stdout] test patch::tests::test_parse_binary_file_deleted ... ok
[INFO] [stdout] test patch::tests::test_parse_diff_deleted_file ... ok
[INFO] [stdout] test patch::tests::test_parse_binary_file_new ... ok
[INFO] [stdout] test patch::parser::tests::test_hunk_builder_with_header ... ok
[INFO] [stdout] test patch::tests::test_parse_diff_multiple_files ... ok
[INFO] [stdout] test patch::tests::test_parse_binary_file_modified ... ok
[INFO] [stdout] test patch::tests::test_parse_diff_multiple_source_commits ... ok
[INFO] [stdout] test patch::tests::test_parse_diff_multiple_hunks_same_file ... ok
[INFO] [stdout] test patch::tests::test_parse_diff_empty_source_commits ... ok
[INFO] [stdout] test patch::tests::test_parse_diff_with_context_function_header ... ok
[INFO] [stdout] test patch::tests::test_parse_diff_new_file ... ok
[INFO] [stdout] test patch::context::tests::test_generate_patch_deletion ... ok
[INFO] [stdout] test patch::tests::test_parse_mode_only_change ... ok
[INFO] [stdout] test patch::tests::test_parse_multiple_mode_changes ... ok
[INFO] [stdout] test patch::context::tests::test_generate_patch_transforms_modification_to_new_file ... ok
[INFO] [stdout] test patch::tests::test_parse_simple_diff ... ok
[INFO] [stdout] test patch::tests::test_parse_mode_change_with_content_change ... ok
[INFO] [stdout] test patch::writer::tests::test_create_new_file_hunk_from_multiple_hunks ... ok
[INFO] [stdout] test patch::writer::tests::test_multi_hunk_patch ... ok
[INFO] [stdout] test patch::tests::test_parse_mixed_text_and_binary ... ok
[INFO] [stdout] test patch::writer::tests::test_eof_newline_handling ... ok
[INFO] [stdout] test patch::writer::tests::test_create_new_file_hunk_from_modification ... ok
[INFO] [stdout] test patch::writer::tests::test_file_change_type_from_hunk ... ok
[INFO] [stdout] test patch::writer::tests::test_create_delete_file_hunk ... ok
[INFO] [stdout] test patch::writer::tests::test_write_hunk_body ... ok
[INFO] [stdout] test patch::writer::tests::test_write_single_hunk_modified ... ok
[INFO] [stdout] test reorganize::by_file::tests::test_group_by_file ... ok
[INFO] [stdout] test plan_store::tests::roundtrip ... ok
[INFO] [stdout] test reorganize::hierarchical::clusterer::tests::test_cluster_validation ... ok
[INFO] [stdout] test patch::writer::tests::test_write_single_hunk_deleted_file ... ok
[INFO] [stdout] test patch::writer::tests::test_write_patch_with_explicit_type ... ok
[INFO] [stdout] test reorganize::hierarchical::orderer::tests::test_cyclic_dependency_resolution ... ok
[INFO] [stdout] test reorganize::hierarchical::orderer::tests::test_empty_commits ... ok
[INFO] [stdout] test patch::writer::tests::test_write_single_hunk_new_file ... ok
[INFO] [stdout] test reorganize::hierarchical::orderer::tests::test_simple_ordering ... ok
[INFO] [stdout] test reorganize::hierarchical::tests::test_requires_llm_client ... ok
[INFO] [stdout] test reorganize::hierarchical::types::tests::test_analysis_results_indexing ... ok
[INFO] [stdout] test reorganize::hierarchical::orderer::tests::test_independent_commits ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_deduplicate_across_commits_with_duplicates ... ok
[INFO] [stdout] test reorganize::hierarchical::types::tests::test_change_category_display ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_deduplicate_across_commits_no_duplicates ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_deduplicate_removes_empty_commits ... ok
[INFO] [stdout] test reorganize::hierarchical::tests::test_empty_hunks ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_validate_complete_assignment ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_validate_duplicate_hunk ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_validate_empty_message ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_validate_long_message ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_validate_invalid_hunk ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_extract_file_path ... ok
[INFO] [stdout] test reorganize::hierarchical::types::tests::test_cluster_formation_reason_display ... ok
[INFO] [stdout] test reorganize::hierarchical::validator::tests::test_assign_orphans ... ok
[INFO] [stdout] test reorganize::llm::parser::tests::test_extract_json_no_json_found ... ok
[INFO] [stdout] test reorganize::llm::parser::tests::test_extract_json_raw ... ok
[INFO] [stdout] test reorganize::llm::parser::tests::test_extract_json_with_code_fence ... ok
[INFO] [stdout] test reorganize::llm::prompt::tests::test_build_context ... ok
[INFO] [stdout] test reorganize::preserve::tests::test_preserve_original ... ok
[INFO] [stdout] test reorganize::squash::tests::test_squash ... ok
[INFO] [stdout] test test_utils::tests::test_make_hunk ... ok
[INFO] [stdout] test test_utils::tests::test_make_hunk_in_file ... ok
[INFO] [stdout] test test_utils::tests::test_make_source_commit ... ok
[INFO] [stdout] test utils::tests::test_extract_json_str_banner_only ... ok
[INFO] [stdout] test utils::tests::test_extract_json_str_code_fence ... ok
[INFO] [stdout] test utils::tests::test_extract_json_str_generic_fence ... ok
[INFO] [stdout] test utils::tests::test_extract_json_str_none ... ok
[INFO] [stdout] test utils::tests::test_extract_json_str_raw ... ok
[INFO] [stdout] test utils::tests::test_extract_json_str_with_banner ... ok
[INFO] [stdout] test utils::tests::test_format_diff_lines ... ok
[INFO] [stdout] test utils::tests::test_short_sha ... ok
[INFO] [stdout] test validation::tests::test_apply_deterministic_fixes ... ok
[INFO] [stdout] test validation::tests::test_cyclic_dependency ... ok
[INFO] [stdout] test validation::tests::test_duplicate_across_commits ... ok
[INFO] [stdout] test validation::tests::test_duplicate_within_commit ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_session_creates_unique_paths ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_read_response_from_path ... ok
[INFO] [stdout] test validation::tests::test_fix_duplicate_hunks ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_cleanup_on_drop ... ok
[INFO] [stdout] test validation::tests::test_empty_message ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_keep_files_prevents_cleanup ... ok
[INFO] [stdout] test validation::tests::test_fix_duplicate_removes_empty_commits ... ok
[INFO] [stdout] test validation::tests::test_invalid_hunk_reference ... ok
[INFO] [stdout] test validation::tests::test_fix_unassigned_hunks ... ok
[INFO] [stdout] test validation::tests::test_non_overlapping_hunks_ok ... ok
[INFO] [stdout] test validation::tests::test_has_fixable_issues ... ok
[INFO] [stdout] test validation::tests::test_unassigned_hunks ... ok
[INFO] [stdout] test validation::tests::test_overlapping_hunks_across_commits ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_write_input ... ok
[INFO] [stdout] test validation::tests::test_valid_plan ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_read_response_from_path_missing_file ... ok
[INFO] [stdout] test reorganize::llm::file_io::tests::test_read_response_from_path_rejects_outside_allowed_dirs ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- reorganize::llm::file_io::tests::test_read_response_from_path_rejects_outside_allowed_dirs stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'reorganize::llm::file_io::tests::test_read_response_from_path_rejects_outside_allowed_dirs' (148) panicked at src/reorganize/llm/file_io.rs:267:34:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5851ce64ea6a - std[b80a194dd3c418bb]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5851ce64ea6a - std[b80a194dd3c418bb]::backtrace_rs::backtrace::trace_unsynchronized::<std[b80a194dd3c418bb]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5851ce64ea6a - std[b80a194dd3c418bb]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5851ce64ea6a - <<std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[10b6fa85044e1869]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5851ce66523a - <core[10b6fa85044e1869]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5851ce66523a - core[10b6fa85044e1869]::fmt::write
[INFO] [stdout]    6:     0x5851ce653312 - std[b80a194dd3c418bb]::io::default_write_fmt::<alloc[dd269455e567d8e9]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5851ce653312 - <alloc[dd269455e567d8e9]::vec::Vec<u8> as std[b80a194dd3c418bb]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5851ce62c22f - <std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5851ce62c22f - std[b80a194dd3c418bb]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5851ce6467b9 - std[b80a194dd3c418bb]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5851ce5c96dc - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x5851ce5c96dc - test[826cbc6ef54ab466]::test_main_with_exit_callback::<test[826cbc6ef54ab466]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5851ce646972 - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x5851ce646972 - std[b80a194dd3c418bb]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5851ce62c2e8 - std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5851ce623a59 - std[b80a194dd3c418bb]::sys::backtrace::__rust_end_short_backtrace::<std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5851ce62cffd - __rustc[9698a3e60dd14283]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5851ce665b1c - core[10b6fa85044e1869]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5851ce665862 - core[10b6fa85044e1869]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5851ce4866fa - core::result::Result<T,E>::unwrap::h7fa3f88fdd4db147
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5851ce4866fa - git_reabsorb::reorganize::llm::file_io::tests::test_read_response_from_path_rejects_outside_allowed_dirs::h535069ab6bd8205c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reorganize/llm/file_io.rs:267:34
[INFO] [stdout]   22:     0x5851ce486f17 - git_reabsorb::reorganize::llm::file_io::tests::test_read_response_from_path_rejects_outside_allowed_dirs::{{closure}}::h113dffe511b25572
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reorganize/llm/file_io.rs:264:67
[INFO] [stdout]   23:     0x5851ce5431e6 - core::ops::function::FnOnce::call_once::h3ed20236d4d927d9
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5851ce5bd7bb - <fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5851ce5bd7bb - test[826cbc6ef54ab466]::__rust_begin_short_backtrace::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x5851ce5ca1ab - test[826cbc6ef54ab466]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x5851ce5ca1ab - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x5851ce5ca1ab - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5851ce5ca1ab - std[b80a194dd3c418bb]::panicking::catch_unwind::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5851ce5ca1ab - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5851ce5ca1ab - test[826cbc6ef54ab466]::run_test_in_process
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x5851ce5ca1ab - test[826cbc6ef54ab466]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x5851ce5c58c4 - test[826cbc6ef54ab466]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x5851ce5c58c4 - std[b80a194dd3c418bb]::sys::backtrace::__rust_begin_short_backtrace::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5851ce5ccdb2 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x5851ce5ccdb2 - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x5851ce5ccdb2 - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5851ce5ccdb2 - std[b80a194dd3c418bb]::panicking::catch_unwind::<(), core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5851ce5ccdb2 - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5851ce5ccdb2 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x5851ce5ccdb2 - <std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1} as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5851ce64de5f - <alloc[dd269455e567d8e9]::boxed::Box<dyn core[10b6fa85044e1869]::ops::function::FnOnce<(), Output = ()> + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   43:     0x5851ce64de5f - <std[b80a194dd3c418bb]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7d23712fbaa4 - <unknown>
[INFO] [stdout]   45:     0x7d2371388a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     reorganize::llm::file_io::tests::test_read_response_from_path_rejects_outside_allowed_dirs
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 164 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "c3dc92caa3547b0ba47194c25b211f211aa55ac1b26842eef51b189ff3949922", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3dc92caa3547b0ba47194c25b211f211aa55ac1b26842eef51b189ff3949922", kill_on_drop: false }`
[INFO] [stdout] c3dc92caa3547b0ba47194c25b211f211aa55ac1b26842eef51b189ff3949922
