[INFO] fetching crate specloom-core 0.2.0... [INFO] testing specloom-core-0.2.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate specloom-core 0.2.0 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate specloom-core 0.2.0 [INFO] finished tweaking crates.io crate specloom-core 0.2.0 [INFO] tweaked toml for crates.io crate specloom-core 0.2.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate specloom-core 0.2.0 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate specloom-core 0.2.0 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a2832319bbcffe1833396b8ed4c16c9ab00d3213207b782923b942a422dfe3f8 [INFO] running `Command { std: "docker" "start" "-a" "a2832319bbcffe1833396b8ed4c16c9ab00d3213207b782923b942a422dfe3f8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a2832319bbcffe1833396b8ed4c16c9ab00d3213207b782923b942a422dfe3f8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a2832319bbcffe1833396b8ed4c16c9ab00d3213207b782923b942a422dfe3f8", kill_on_drop: false }` [INFO] [stdout] a2832319bbcffe1833396b8ed4c16c9ab00d3213207b782923b942a422dfe3f8 [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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1d0eae139483a52ff54bdb631b9dbfce447b017b3bad503831c1c9b21d4d849f [INFO] running `Command { std: "docker" "start" "-a" "1d0eae139483a52ff54bdb631b9dbfce447b017b3bad503831c1c9b21d4d849f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling untrusted v0.9.0 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling tower-service v0.3.3 [INFO] [stderr] Compiling try-lock v0.2.5 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling want v0.3.1 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling tower-layer v0.3.3 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling iri-string v0.7.10 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling base64 v0.21.7 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling rustls-webpki v0.103.9 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling ron v0.8.1 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling specloom-core v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 42.99s [INFO] running `Command { std: "docker" "inspect" "1d0eae139483a52ff54bdb631b9dbfce447b017b3bad503831c1c9b21d4d849f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d0eae139483a52ff54bdb631b9dbfce447b017b3bad503831c1c9b21d4d849f", kill_on_drop: false }` [INFO] [stdout] 1d0eae139483a52ff54bdb631b9dbfce447b017b3bad503831c1c9b21d4d849f [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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5a8c37c4da5def25407dd8da90d38b2e0658e4e7262d20a0cd981d5d14a83306 [INFO] running `Command { std: "docker" "start" "-a" "5a8c37c4da5def25407dd8da90d38b2e0658e4e7262d20a0cd981d5d14a83306", kill_on_drop: false }` [INFO] [stderr] Compiling specloom-core v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.35s [INFO] running `Command { std: "docker" "inspect" "5a8c37c4da5def25407dd8da90d38b2e0658e4e7262d20a0cd981d5d14a83306", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5a8c37c4da5def25407dd8da90d38b2e0658e4e7262d20a0cd981d5d14a83306", kill_on_drop: false }` [INFO] [stdout] 5a8c37c4da5def25407dd8da90d38b2e0658e4e7262d20a0cd981d5d14a83306 [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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] aea62e78d43962b16b2774440f84cad787f7c9d322a02ef84f817f07c8c47ac5 [INFO] running `Command { std: "docker" "start" "-a" "aea62e78d43962b16b2774440f84cad787f7c9d322a02ef84f817f07c8c47ac5", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/specloom_core-350b4ae92b65c736) [INFO] [stdout] running 98 tests [INFO] [stdout] test agent_context::search::tests::normalize_tokens_lowercases_and_strips_punctuation ... ok [INFO] [stdout] test agent_context::tests::warning_file_round_trip_json ... ok [INFO] [stdout] test agent_context::tests::agent_context_round_trip_json ... ok [INFO] [stdout] test asset_pipeline::tests::asset_manifest_round_trip ... ok [INFO] [stdout] test asset_pipeline::tests::manifest_contract_matches_next_stage_map ... ok [INFO] [stdout] test asset_pipeline::tests::asset_entry_field_order_is_deterministic ... ok [INFO] [stdout] test asset_pipeline::tests::build_asset_manifest_extracts_image_fill_assets_deterministically ... ok [INFO] [stdout] test figma_client::normalizer::tests::children_order_is_stable ... ok [INFO] [stdout] test figma_client::normalizer::tests::normalize_snapshot_prunes_null_and_empty_passthrough_values ... ok [INFO] [stdout] test figma_client::normalizer::tests::normalize_snapshot_preserves_unsupported_fields_in_passthrough ... ok [INFO] [stdout] test figma_client::normalizer::tests::normalize_snapshot_rejects_missing_document_payload ... ok [INFO] [stdout] test figma_client::normalizer::tests::normalized_node_deserializes_when_empty_collections_are_omitted ... ok [INFO] [stdout] test figma_client::normalizer::tests::normalize_snapshot_maps_minimal_document_tree ... ok [INFO] [stdout] test agent_context::search::tests::rank_candidates_marks_low_confidence_and_no_match_thresholds ... ok [INFO] [stdout] test figma_client::normalizer::tests::normalize_snapshot_traverses_instance_children ... ok [INFO] [stdout] test figma_client::normalizer::tests::parse_style_maps_fills ... ok [INFO] [stdout] test figma_client::normalizer::tests::parse_style_rejects_non_array_fills ... ok [INFO] [stdout] test figma_client::normalizer::tests::defaults_include_explicit_versions ... ok [INFO] [stdout] test figma_client::normalizer::tests::normalized_document_round_trip ... ok [INFO] [stdout] test figma_client::tests::build_snapshot_from_live_nodes_payload_extracts_requested_document ... ok [INFO] [stdout] test figma_client::tests::build_snapshot_from_live_nodes_payload_requires_document_for_node ... ok [INFO] [stdout] test asset_pipeline::tests::asset_entry_order_is_stable ... ok [INFO] [stdout] test figma_client::normalizer::tests::root_contract_fields_are_explicit ... ok [INFO] [stdout] test figma_client::tests::fetch_client_error_contract_includes_live_transport_variants ... ok [INFO] [stdout] test figma_client::normalizer::tests::parse_style_rejects_unsupported_fill_type ... ok [INFO] [stdout] test figma_client::tests::fetch_nodes_request_rejects_missing_file_key ... ok [INFO] [stdout] test asset_pipeline::tests::default_manifest_uses_expected_contract_version ... ok [INFO] [stdout] test figma_client::tests::fetch_snapshot_from_fixture_preserves_source_and_payload ... ok [INFO] [stdout] test figma_client::normalizer::tests::node_collection_order_is_stable ... ok [INFO] [stdout] test figma_client::tests::raw_snapshot_contract_round_trip ... ok [INFO] [stdout] test figma_client::tests::live_fetch_request_rejects_missing_figma_token ... ok [INFO] [stdout] test figma_client::tests::fetch_snapshot_live_rejects_missing_figma_token ... ok [INFO] [stdout] test agent_context::search::tests::rank_candidates_is_stable_with_tie_break_on_node_id ... ok [INFO] [stdout] test figma_client::tests::live_fetch_request_allows_explicit_api_base_url_override ... ok [INFO] [stdout] test figma_client::tests::fetch_node_screenshot_live_with_base_url_reports_missing_image_ref ... ok [INFO] [stdout] test tests::build_agent_context_accepts_repeat_element_ids_as_node_metadata ... ok [INFO] [stdout] test tests::build_agent_context_uses_transformed_final_spec ... ok [INFO] [stdout] test tests::run_stage_fetch_with_snapshot_input_writes_snapshot_artifact ... ok [INFO] [stdout] test figma_client::tests::fetch_snapshot_live_maps_non_success_status_with_body ... ok [INFO] [stdout] test figma_client::tests::fetch_snapshot_from_fixture_reports_invalid_json ... ok [INFO] [stdout] test figma_client::tests::fetch_node_screenshot_live_with_base_url_requests_images_endpoint ... ok [INFO] [stdout] test tests::run_stage_returns_execution_result_for_known_stage ... ok [INFO] [stdout] test tests::find_nodes_in_workspace_returns_ranked_candidates ... ok [INFO] [stdout] test figma_client::tests::fetch_snapshot_live_with_base_url_sends_auth_header_and_maps_success ... ok [INFO] [stdout] test figma_client::tests::fetch_snapshot_live_maps_unauthorized_status ... ok [INFO] [stdout] test tests::build_agent_context_reuses_cached_root_screenshot_when_present ... ok [INFO] [stdout] test tests::run_all_in_workspace_executes_stages_in_order ... ok [INFO] [stdout] test tests::run_stage_normalize_requires_raw_artifact ... ok [INFO] [stdout] test tests::run_stage_export_assets_writes_asset_manifest_artifact ... ok [INFO] [stdout] test tests::run_stage_fetch_with_live_config_surfaces_actionable_fetch_error ... ok [INFO] [stdout] test tests::get_node_info_in_workspace_returns_not_found_for_missing_node ... ok [INFO] [stdout] test tests::run_stage_unknown_stage_is_rejected ... ok [INFO] [stdout] test ui_spec::tests::apply_transform_plan_keep_preserves_children_and_sets_hstack_type ... ok [INFO] [stdout] test ui_spec::tests::apply_transform_plan_remove_self_drops_node_from_parent_children ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_container_with_all_shape_children_to_shape ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_container_with_one_image_and_shapes_to_image ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_container_with_multiple_vector_children_to_vector ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_instance_with_multiple_vector_children_to_vector ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_container_with_single_image_child_to_image ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_container_with_single_text_child_into_text_field ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_container_with_one_vector_and_shapes_to_vector ... ok [INFO] [stdout] test tests::run_stage_build_agent_context_writes_agent_artifacts ... ok [INFO] [stdout] test tests::stage_output_directories_are_reported ... ok [INFO] [stdout] test tests::stages_are_reported_in_order ... ok [INFO] [stdout] test tests::run_stage_build_spec_writes_ron_artifact ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_instance_with_one_image_and_shapes_to_image ... ok [INFO] [stdout] test ui_spec::tests::apply_transform_plan_overrides_repeat_element_ids_when_decision_provides_them ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_instance_with_single_image_child_to_image ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_drops_children_for_instance_with_one_vector_and_shapes ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_maps_unknown_node_with_children_to_container ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_drops_children_for_instance_with_multiple_vectors_and_shapes ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_preserves_original_node_ids ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_omits_invisible_nodes ... ok [INFO] [stdout] test ui_spec::tests::apply_transform_plan_replace_with_rewires_children_order ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_instance_with_single_vector_child_to_vector ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_collapses_container_with_single_vector_child_to_vector ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_marks_image_fill_nodes_as_image ... ok [INFO] [stdout] test ui_spec::tests::transform_plan_round_trip_json ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_maps_instance_kind_to_instance ... ok [INFO] [stdout] test ui_spec::tests::transform_plan_validate_rejects_duplicate_repeat_element_ids ... ok [INFO] [stdout] test ui_spec::tests::transform_plan_validate_rejects_missing_node_id ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_maps_rectangle_kind_to_shape ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_maps_unknown_leaf_node_kind_to_vector ... ok [INFO] [stdout] test ui_spec::tests::transform_plan_validate_rejects_remove_self_for_root_node ... ok [INFO] [stdout] test ui_spec::tests::build_ui_spec_rejects_missing_root_node ... ok [INFO] [stdout] test ui_spec::tests::transform_plan_validate_rejects_replace_with_child_marked_remove_self ... ok [INFO] [stdout] test ui_spec::tests::transform_plan_validate_rejects_replace_with_unknown_child ... ok [INFO] [stdout] test ui_spec::tests::ui_spec_round_trip ... ok [INFO] [stdout] test ui_spec::tests::container_repeat_element_ids_omit_when_empty_and_serialize_when_present ... ok [INFO] [stdout] test ui_spec::tests::apply_transform_plan_preserves_repeat_element_ids_when_type_changes ... ok [INFO] [stdout] test ui_spec::tests::leaf_repeat_element_ids_omit_when_empty_and_serialize_when_present ... ok [INFO] [stdout] test ui_spec::tests::apply_transform_plan_drop_removes_children_and_sets_button_type ... ok [INFO] [stdout] test ui_spec::tests::container_text_field_omits_when_empty_and_serializes_when_present ... ok [INFO] [stdout] test ui_spec::tests::transform_plan_validate_rejects_non_replace_mode_with_children ... ok [INFO] [stdout] test tests::tool_lookup_no_match_emits_warning_artifact_entry ... ok [INFO] [stdout] test figma_client::tests::live_fetch_request_uses_default_figma_api_base_url ... ok [INFO] [stdout] test ui_spec::tests::leaf_nodes_omit_empty_children_in_ron ... ok [INFO] [stdout] test ui_spec::tests::ron_serialization_is_stable ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 98 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Doc-tests specloom_core [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "aea62e78d43962b16b2774440f84cad787f7c9d322a02ef84f817f07c8c47ac5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aea62e78d43962b16b2774440f84cad787f7c9d322a02ef84f817f07c8c47ac5", kill_on_drop: false }` [INFO] [stdout] aea62e78d43962b16b2774440f84cad787f7c9d322a02ef84f817f07c8c47ac5