[INFO] fetching crate xml-disassembler 0.4.8...
[INFO] testing xml-disassembler-0.4.8 against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739-1
[INFO] extracting crate xml-disassembler 0.4.8 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate xml-disassembler 0.4.8
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate xml-disassembler 0.4.8
[INFO] tweaked toml for crates.io crate xml-disassembler 0.4.8 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate xml-disassembler 0.4.8 on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate xml-disassembler 0.4.8 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" "+33835004928d3bf65db4d4712e1330766263b0bd" "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-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ce1e1f3cca738876c0dcb25241dbbb216a5a88350546d024871a623a5d679931
[INFO] running `Command { std: "docker" "start" "-a" "ce1e1f3cca738876c0dcb25241dbbb216a5a88350546d024871a623a5d679931", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ce1e1f3cca738876c0dcb25241dbbb216a5a88350546d024871a623a5d679931", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce1e1f3cca738876c0dcb25241dbbb216a5a88350546d024871a623a5d679931", kill_on_drop: false }`
[INFO] [stdout] ce1e1f3cca738876c0dcb25241dbbb216a5a88350546d024871a623a5d679931
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 03393d3148b8faedeaf300a574d3569c28e46e8d4175076f44004dce0f34e1bf
[INFO] running `Command { std: "docker" "start" "-a" "03393d3148b8faedeaf300a574d3569c28e46e8d4175076f44004dce0f34e1bf", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling zmij v1.0.19
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling jiff v0.2.23
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling ryu v1.0.22
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling hybrid-array v0.4.10
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling socket2 v0.6.2
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling block-buffer v0.12.0
[INFO] [stderr]    Compiling crypto-common v0.2.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling digest v0.11.2
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling env_filter v1.0.0
[INFO] [stderr]    Compiling env_logger v0.11.10
[INFO] [stderr]    Compiling quick-xml v0.39.2
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling json5 v1.3.1
[INFO] [stderr]    Compiling xml-disassembler v0.4.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 49.61s
[INFO] running `Command { std: "docker" "inspect" "03393d3148b8faedeaf300a574d3569c28e46e8d4175076f44004dce0f34e1bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "03393d3148b8faedeaf300a574d3569c28e46e8d4175076f44004dce0f34e1bf", kill_on_drop: false }`
[INFO] [stdout] 03393d3148b8faedeaf300a574d3569c28e46e8d4175076f44004dce0f34e1bf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bfcf6c69339150ec6b499f19c7b43c34d1b3fab54a1de4e3f23943c1a3081ea2
[INFO] running `Command { std: "docker" "start" "-a" "bfcf6c69339150ec6b499f19c7b43c34d1b3fab54a1de4e3f23943c1a3081ea2", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling cargo-husky v1.5.0
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling xml-disassembler v0.4.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 10.43s
[INFO] running `Command { std: "docker" "inspect" "bfcf6c69339150ec6b499f19c7b43c34d1b3fab54a1de4e3f23943c1a3081ea2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfcf6c69339150ec6b499f19c7b43c34d1b3fab54a1de4e3f23943c1a3081ea2", kill_on_drop: false }`
[INFO] [stdout] bfcf6c69339150ec6b499f19c7b43c34d1b3fab54a1de4e3f23943c1a3081ea2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ff60ac672e2043c77b650f251586155bffea3fe9e9b49558c48bcd68f2752575
[INFO] running `Command { std: "docker" "start" "-a" "ff60ac672e2043c77b650f251586155bffea3fe9e9b49558c48bcd68f2752575", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/xml_disassembler-df6514f8654a16b8)
[INFO] [stdout] 
[INFO] [stdout] running 167 tests
[INFO] [stdout] test builders::build_disassembled_files::tests::get_field_value_returns_nested_text ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::get_field_value_returns_none_when_missing_or_non_string ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::get_root_info_returns_name_and_element ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::get_root_info_returns_none_for_non_object_or_decl_only ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::group_key_from_field_value_takes_prefix_before_dot ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::sanitize_filename_replaces_disallowed_chars_with_underscore ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::order_xml_element_keys_preserves_order_and_drops_absent ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_attribute_value_object_uses_serde_fallback ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_cdata_only_no_text_or_comment ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_declaration_non_object_skips_decl_write ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_declaration_only_defaults_root_key ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_non_object_returns_empty ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_null_child_value ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_primitive_sibling_children ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_root_value_array_sibling_elements ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_root_value_primitive ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_simple_root ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_with_array ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_with_attributes ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_with_declaration_encoding_standalone ... ok
[INFO] [stdout] test builders::extract_root_attributes::tests::converts_xmlns_to_at_xmlns ... ok
[INFO] [stdout] test builders::extract_root_attributes::tests::extracts_at_prefixed_attributes ... ok
[INFO] [stdout] test builders::extract_root_attributes::tests::attr_value_array_uses_serde_json_fallback ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_with_text_comment_cdata ... ok
[INFO] [stdout] test builders::extract_root_attributes::tests::attr_value_object_uses_serde_json_fallback ... ok
[INFO] [stdout] test builders::extract_root_attributes::tests::returns_empty_for_non_object ... ok
[INFO] [stdout] test builders::build_xml_string::tests::build_xml_string_without_declaration ... ok
[INFO] [stdout] test builders::extract_root_attributes::tests::attr_value_number_and_bool_converted_to_string ... ok
[INFO] [stdout] test builders::extract_root_attributes::tests::attr_value_null_converted_to_empty_string ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_array_value_extends_existing_array ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_array_value_when_target_has_key_non_array_coalesces_into_array ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_array_value_when_target_key_absent_sets_array ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::unified_build_returns_ok_when_source_unreadable ... ok
[INFO] [stdout] test builders::build_disassembled_file::tests::build_disassembled_file_file_name_output_when_wrap_key_no_output_name_grouped_array ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_single_element_preserves_structure ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_returns_none_when_every_element_has_no_root ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_skips_leading_empty_object_element ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_primitive_value_does_not_overwrite_existing ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_elements_with_non_object_or_missing_root_skipped ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_elements_without_declaration_uses_default ... ok
[INFO] [stdout] test cli::tests::parse_decompose_spec_comma_separated_rules_trims_whitespace ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_empty_returns_none ... ok
[INFO] [stdout] test cli::tests::parse_decompose_spec_four_segments_uses_explicit_path_segment ... ok
[INFO] [stdout] test cli::tests::parse_decompose_spec_three_segments_defaults_path_segment_to_tag ... ok
[INFO] [stdout] test cli::tests::parse_disassemble_args_defaults_when_empty ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_two_elements_combines_nested_objects_into_array ... ok
[INFO] [stdout] test cli::tests::parse_disassemble_args_handles_flags_and_eq_forms ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::reorder_root_keys_reorders_and_appends_extra ... ok
[INFO] [stdout] test builders::build_disassembled_file::tests::build_disassembled_file_file_name_output_when_no_wrap_key_no_output_name ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::reorder_root_keys_returns_none_for_invalid_inputs ... ok
[INFO] [stdout] test cli::tests::parse_disassemble_args_trailing_extra_positional_ignored ... ok
[INFO] [stdout] test cli::tests::parse_decompose_spec_rejects_empty_segments ... ok
[INFO] [stdout] test cli::tests::parse_disassemble_args_unknown_long_flag_is_skipped ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_skips_leading_declaration_only_element ... ok
[INFO] [stdout] test cli::tests::parse_disassemble_args_handles_space_separated_forms ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::merge_array_value_coalesces_into_array ... ok
[INFO] [stdout] test builders::build_disassembled_files::tests::get_field_value_returns_direct_string ... ok
[INFO] [stdout] test cli::tests::parse_multi_level_spec_rejects_wrong_parts ... ok
[INFO] [stdout] test cli::tests::parse_reassemble_args_picks_path_extension_and_flag ... ok
[INFO] [stdout] test builders::build_disassembled_file::tests::build_disassembled_file_file_name_output_when_wrap_key_content_not_object ... ok
[INFO] [stdout] test builders::merge_xml_elements::tests::reorder_root_keys_without_declaration_omits_it ... ok
[INFO] [stdout] test cli::tests::parse_reassemble_args_defaults_and_extra_args_ignored ... ok
[INFO] [stdout] test cli::tests::parse_disassemble_args_space_forms_without_value_leave_default ... ok
[INFO] [stdout] test cli::tests::run_unknown_command_is_not_an_error ... ok
[INFO] [stdout] test cli::tests::parse_multi_level_spec_valid_returns_rule ... ok
[INFO] [stdout] test handlers::disassemble::tests::disassemble_handler_default_equals_new ... ok
[INFO] [stdout] test cli::tests::parse_disassemble_args_p_alias_for_split_tags ... ok
[INFO] [stdout] test builders::build_disassembled_file::tests::build_disassembled_file_content_not_object_no_spread ... ok
[INFO] [stdout] test handlers::disassemble::tests::is_ignored_default_false_without_rules ... ok
[INFO] [stdout] test handlers::disassemble::tests::is_xml_file_matches_case_insensitively ... ok
[INFO] [stdout] test handlers::disassemble::tests::posix_path_converts_backslashes ... ok
[INFO] [stdout] test handlers::reassemble::tests::is_parsable_file_recognises_supported_extensions ... ok
[INFO] [stdout] test handlers::reassemble::tests::reassemble_handler_default_equals_new ... ok
[INFO] [stdout] test handlers::reassemble::tests::strip_xmlns_from_value_passes_non_object_through ... ok
[INFO] [stdout] test handlers::reassemble::tests::strip_xmlns_from_value_removes_xmlns_key ... ok
[INFO] [stdout] test multi_level::tests::capture_xmlns_from_root_returns_none_when_absent ... ok
[INFO] [stdout] test multi_level::tests::capture_xmlns_from_root_returns_some ... ok
[INFO] [stdout] test cli::tests::run_no_args_prints_usage_and_succeeds ... ok
[INFO] [stdout] test handlers::reassemble::tests::get_output_path_appends_extension_and_uses_parent_dir ... ok
[INFO] [stdout] test handlers::disassemble::tests::load_ignore_rules_noop_when_path_missing ... ok
[INFO] [stdout] test handlers::disassemble::tests::load_ignore_rules_builds_matcher ... ok
[INFO] [stdout] test multi_level::tests::path_segment_from_file_pattern_no_dash ... ok
[INFO] [stdout] test multi_level::tests::path_segment_from_file_pattern_strips_suffix ... ok
[INFO] [stdout] test handlers::reassemble::tests::collect_segment_as_array_skips_unparseable_and_empty_roots ... ok
[INFO] [stdout] test multi_level::tests::strip_root_and_build_xml_strips_child_not_root ... ok
[INFO] [stdout] test multi_level::tests::strip_root_and_build_xml_strips_root_excludes_attributes ... ok
[INFO] [stdout] test handlers::reassemble::tests::collect_segment_as_array_without_extract_inner_wraps_root ... ok
[INFO] [stdout] test multi_level::tests::ensure_segment_files_structure_skips_non_xml_and_subdirs ... ok
[INFO] [stdout] test handlers::reassemble::tests::reassemble_multi_level_segment_skips_files_in_segment_root ... ok
[INFO] [stdout] test multi_level::tests::ensure_segment_files_structure_skips_already_correct_files ... ok
[INFO] [stdout] test parsers::parse_to_xml_object::tests::parse_to_xml_object_json5 ... ok
[INFO] [stdout] test cli::tests::run_disassemble_with_grouped_by_tag_split_tags_runs ... ok
[INFO] [stdout] test parsers::parse_to_xml_object::tests::parse_to_xml_object_unsupported_returns_none ... ok
[INFO] [stdout] test handlers::reassemble::tests::reassemble_multi_level_segment_noop_when_not_dir ... ok
[INFO] [stdout] test multi_level::tests::load_multi_level_config_missing_file_returns_none ... ok
[INFO] [stdout] test parsers::parse_to_xml_object::tests::parse_to_xml_object_json ... ok
[INFO] [stdout] test parsers::parse_to_xml_object::tests::parse_to_xml_object_yaml ... ok
[INFO] [stdout] test parsers::parse_to_xml_object::tests::parse_to_xml_object_yml_extension ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::falls_back_to_hash_when_no_match_and_no_nested_object ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::finds_deeply_nested_field ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::non_object_element_returns_hash ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::finds_id_in_grandchild ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::finds_name_from_text_object ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::hash_fallback_when_unique_id_elements_is_none ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::value_as_string_returns_none_for_non_string_non_text_objects ... ok
[INFO] [stdout] test parsers::parse_unique_id::tests::finds_direct_field ... ok
[INFO] [stdout] test cli::tests::run_disassemble_writes_expected_output ... ok
[INFO] [stdout] test cli::tests::run_disassemble_with_invalid_multi_level_spec_warns_and_continues ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::append_cdata_to_current_noops_on_empty_stack ... ok
[INFO] [stdout] test parsers::parse_xml::tests::extract_xml_declaration_from_raw_returns_none_without_declaration ... ok
[INFO] [stdout] test parsers::parse_xml::tests::extract_xml_declaration_from_raw_returns_none_when_version_missing ... ok
[INFO] [stdout] test handlers::reassemble::tests::collect_segment_as_array_returns_none_for_empty_dir ... ok
[INFO] [stdout] test parsers::parse_xml::tests::parse_xml_missing_file_returns_none ... ok
[INFO] [stdout] test parsers::parse_to_xml_object::tests::parse_to_xml_object_xml_with_declaration_and_xmlns ... ok
[INFO] [stdout] test multi_level::tests::ensure_segment_files_structure_skips_xml_missing_root ... ok
[INFO] [stdout] test cli::tests::run_reassemble_missing_path_returns_err ... ok
[INFO] [stdout] test parsers::parse_xml::tests::parse_xml_from_str_invalid_xml_returns_none ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::append_cdata_to_current_sets_and_appends ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_text_value_f64_leading_zero_non_decimal_stays_string ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_text_value_non_finite_float_falls_through_to_string ... ok
[INFO] [stdout] test multi_level::tests::ensure_segment_files_structure_adds_xmlns_and_rewrites ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_duplicate_empty_siblings_become_array ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_appends_multiple_cdata_sections ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_text_value_number_bool_and_leading_zero ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_duplicate_sibling_elements_become_array ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_empty_document_returns_empty_object ... ok
[INFO] [stdout] test parsers::parse_xml::tests::extract_xml_declaration_from_raw_parses_version_and_encoding ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_comment ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_empty_root_element ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_empty_element ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_empty_element_with_attributes ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_empty_root_returns_empty_object ... ok
[INFO] [stdout] test parsers::parse_xml::tests::extract_xmlns_from_raw_returns_none_when_absent ... ok
[INFO] [stdout] test multi_level::tests::save_and_load_multi_level_config ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_invalid_returns_err ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_attributes ... ok
[INFO] [stdout] test parsers::parse_xml::tests::extract_xmlns_from_raw_finds_namespace ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_malformed_entity_between_tags_is_dropped ... ok
[INFO] [stdout] test cli::tests::run_reassemble_on_existing_directory_succeeds ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_multiple_children ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_mixed_content_appends_text ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_simple_element ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_preserves_space_after_comma_in_entities ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_text_tail_appended_after_second_comment ... ok
[INFO] [stdout] test parsers::strip_whitespace::tests::preserves_non_empty_text ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_text_tail_after_comment ... ok
[INFO] [stdout] test parsers::strip_whitespace::tests::strips_empty_text_nodes_from_array ... ok
[INFO] [stdout] test parsers::strip_whitespace::tests::preserves_null_cdata_comment_and_text_tail_keys ... ok
[INFO] [stdout] test parsers::strip_whitespace::tests::preserves_null_special_keys ... ok
[INFO] [stdout] test transformers::formats::tests::transform_to_json_produces_valid_json ... ok
[INFO] [stdout] test transformers::formats::tests::transform_to_yaml_produces_valid_yaml ... ok
[INFO] [stdout] test parsers::strip_whitespace::tests::leaves_primitive_unchanged ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_preserves_cdata ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_three_empty_siblings_extend_array ... ok
[INFO] [stdout] test transformers::formats::tests::transform_to_json5_produces_valid_json5 ... ok
[INFO] [stdout] test parsers::parse_xml_cdata::tests::parse_xml_with_cdata_unescapes_entities_in_text ... ok
[INFO] [stdout] test parsers::strip_whitespace::tests::preserves_empty_text_when_element_has_cdata ... ok
[INFO] [stdout] test utils::path::tests::converts_backslashes_to_forward ... ok
[INFO] [stdout] test utils::async_queue::tests::add_respects_concurrency ... ok
[INFO] [stdout] test transformers::get_transformer::tests::transform_format_yaml ... ok
[INFO] [stdout] test utils::async_queue::tests::new_and_add_returns_task_result ... ok
[INFO] [stdout] test transformers::get_transformer::tests::transform_format_unsupported_returns_none ... ok
[INFO] [stdout] test transformers::get_transformer::tests::transform_format_json ... ok
[INFO] [stdout] test transformers::get_transformer::tests::transform_format_json5 ... ok
[INFO] [stdout] test utils::path::tests::leaves_unix_paths_unchanged ... ok
[INFO] [stdout] test utils::path::tests::strips_windows_extended_prefix ... ok
[INFO] [stdout] test parsers::parse_xml::tests::extract_xml_declaration_from_raw_parses_standalone ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 167 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/xml_disassembler-6cda4305f1a47fca)
[INFO] [stderr]      Running tests/disassemble_reassemble.rs (/opt/rustwide/target/debug/deps/disassemble_reassemble-e265f4650512d033)
[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] [stdout] 
[INFO] [stdout] running 41 tests
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::parsers::parse_xml] /tmp/.tmp6SifWq/broken.xml was unable to be parsed and will not be processed. Confirm formatting and try again.
[INFO] [stdout] test disassemble_unparseable_xml_is_no_op ... ok
[INFO] [stdout] test disassemble_single_file_ignored_via_ignore_rules ... ok
[INFO] [stdout] test disassemble_nonexistent_path_returns_err ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::builders::build_disassembled_files] The XML file /tmp/.tmpLPNNpp/LeafOnly.xml only has leaf elements. This file will not be disassembled.
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::builders::build_disassembled_files] The XML file /tmp/.tmplSobXV/Dups.xml only has leaf elements. This file will not be disassembled.
[INFO] [stdout] test disassemble_empty_xml_document_is_no_op ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::handlers::disassemble] The file path provided is not an XML file: /tmp/.tmpRkmkJ3/readme.txt
[INFO] [stdout] test disassemble_duplicate_leaf_siblings_under_root_no_op_with_log ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::parsers::parse_xml] /tmp/.tmpA6FoM3/Inner/junk.programProcesses.xml was unable to be parsed and will not be processed. Confirm formatting and try again.
[INFO] [stdout] test disassemble_leaf_only_xml_logs_and_skips ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::handlers::reassemble] No files under /tmp/.tmpbALWWJ/empty were parsed successfully. A reassembled XML file was not created.
[INFO] [stdout] test disassemble_non_xml_file_returns_ok_no_op ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::handlers::reassemble] No usable root element found while merging files under /tmp/.tmpHc7PXK/only_empty. A reassembled XML file was not created.
[INFO] [stdout] test disassemble_directory_ignores_non_xml_files_and_subdirs ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::parsers::parse_xml] /tmp/.tmpaGQT1B/Inner/programProcesses/bad.xml was unable to be parsed and will not be processed. Confirm formatting and try again.
[INFO] [stdout] test grouped_by_tag_split_rule_uses_index_when_field_missing ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::parsers::parse_xml] /tmp/.tmpaGQT1B/Inner/programProcesses/bad.xml was unable to be parsed and will not be processed. Confirm formatting and try again.
[INFO] [stdout] test multi_level_rule_without_matching_file_is_noop ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::handlers::reassemble] The provided path to reassemble is not a directory: fixtures/general/HR_Admin.permissionset-meta.xml
[INFO] [stdout] test disassemble_directory_processes_xml_files ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::parsers::parse_xml] /tmp/.tmpOPK823/Out/bogus.xml was unable to be parsed and will not be processed. Confirm formatting and try again.
[INFO] [stdout] test disassemble_directory_with_ignore_skips_matching_files ... ok
[INFO] [stderr] [2026-05-15T07:00:43Z ERROR xml_disassembler::handlers::reassemble] No files under /tmp/.tmpOPK823/Out were parsed successfully. A reassembled XML file was not created.
[INFO] [stdout] test grouped_by_tag_group_rule_uses_nested_text_value ... ok
[INFO] [stdout] test disassemble_with_post_purge_removes_source_file ... ok
[INFO] [stdout] test comments_preserved_round_trip ... ok
[INFO] [stdout] test grouped_by_tag_with_fallback_mode_writes_single_file ... ok
[INFO] [stdout] test disassemble_json_format_then_reassemble_round_trip ... ok
[INFO] [stdout] test cdata_preserved_round_trip ... ok
[INFO] [stdout] test multi_level_skips_unparseable_matching_file ... ok
[INFO] [stdout] test reassemble_empty_directory_returns_ok_no_output ... ok
[INFO] [stdout] test reassemble_directory_with_only_empty_xml_files_writes_no_output ... ok
[INFO] [stdout] test multi_level_with_empty_path_segment_and_xmlns_derives_segment ... ok
[INFO] [stdout] test reassemble_nonexistent_path_returns_err ... ok
[INFO] [stdout] test reassemble_with_file_path_returns_ok_no_op ... ok
[INFO] [stdout] test multi_level_skips_matching_file_without_root_to_strip ... ok
[INFO] [stdout] test reassemble_with_non_parseable_junk_files_is_skipped ... ok
[INFO] [stdout] test reassemble_invalid_key_order_json_still_writes ... ok
[INFO] [stdout] test reassemble_directory_with_nested_subdir_is_recursed ... ok
[INFO] [stdout] test reassemble_applies_key_order_from_dot_key_order_json ... ok
[INFO] [stdout] test reassemble_multi_level_skips_unparseable_segment_file ... ok
[INFO] [stdout] test multi_level_with_explicit_xmlns_preserved ... ok
[INFO] [stdout] test multi_level_with_multiple_matching_files_appends_rule_once ... ok
[INFO] [stdout] test disassemble_then_reassemble_matches_original_xml ... ok
[INFO] [stdout] test multi_level_skips_matching_file_with_non_object_strip_target ... ok
[INFO] [stdout] test disassemble_with_pre_purge_removes_existing_output ... ok
[INFO] [stdout] test reassemble_with_post_purge_removes_disassembled_dir ... ok
[INFO] [stdout] test disassemble_with_unsupported_strategy_defaults_to_unique_id ... ok
[INFO] [stdout] test split_tags_disassemble_then_reassemble_matches_original ... ok
[INFO] [stdout] test deeply_nested_unique_id_elements_round_trip ... ok
[INFO] [stdout] test fixture_round_trip_matches_original ... ok
[INFO] [stderr]    Doc-tests xml_disassembler
[INFO] [stdout] test multi_level_disassemble_then_reassemble_matches_original ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 41 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.78s
[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" "ff60ac672e2043c77b650f251586155bffea3fe9e9b49558c48bcd68f2752575", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ff60ac672e2043c77b650f251586155bffea3fe9e9b49558c48bcd68f2752575", kill_on_drop: false }`
[INFO] [stdout] ff60ac672e2043c77b650f251586155bffea3fe9e9b49558c48bcd68f2752575
