[INFO] fetching crate llm-pipeline 0.1.0... [INFO] testing llm-pipeline-0.1.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate llm-pipeline 0.1.0 into /workspace/builds/worker-7-tc2/source [INFO] started tweaking crates.io crate llm-pipeline 0.1.0 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate llm-pipeline 0.1.0 [INFO] tweaked toml for crates.io crate llm-pipeline 0.1.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate llm-pipeline 0.1.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 llm-pipeline 0.1.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-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 4276d31203620136a97c9679d77906d211e190cd91a28cb18de489be84407e96 [INFO] running `Command { std: "docker" "start" "-a" "4276d31203620136a97c9679d77906d211e190cd91a28cb18de489be84407e96", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4276d31203620136a97c9679d77906d211e190cd91a28cb18de489be84407e96", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4276d31203620136a97c9679d77906d211e190cd91a28cb18de489be84407e96", kill_on_drop: false }` [INFO] [stdout] 4276d31203620136a97c9679d77906d211e190cd91a28cb18de489be84407e96 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] fad5cfa9e504d6fdbbcfe68cac175cb11399a70846203b2c7920fb57b4cb964d [INFO] running `Command { std: "docker" "start" "-a" "fad5cfa9e504d6fdbbcfe68cac175cb11399a70846203b2c7920fb57b4cb964d", kill_on_drop: false }` [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling syn v2.0.115 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling native-tls v0.2.15 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling encoding_rs v0.8.35 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling thiserror v2.0.18 [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 serde v1.0.228 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling llm-pipeline v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 43.34s [INFO] running `Command { std: "docker" "inspect" "fad5cfa9e504d6fdbbcfe68cac175cb11399a70846203b2c7920fb57b4cb964d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fad5cfa9e504d6fdbbcfe68cac175cb11399a70846203b2c7920fb57b4cb964d", kill_on_drop: false }` [INFO] [stdout] fad5cfa9e504d6fdbbcfe68cac175cb11399a70846203b2c7920fb57b4cb964d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] c064d837ea47adb248575643095c117be073a7d1cf53bea8d0c8685117e9655b [INFO] running `Command { std: "docker" "start" "-a" "c064d837ea47adb248575643095c117be073a7d1cf53bea8d0c8685117e9655b", kill_on_drop: false }` [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling tokio-test v0.4.5 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling llm-pipeline v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 27.17s [INFO] running `Command { std: "docker" "inspect" "c064d837ea47adb248575643095c117be073a7d1cf53bea8d0c8685117e9655b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c064d837ea47adb248575643095c117be073a7d1cf53bea8d0c8685117e9655b", kill_on_drop: false }` [INFO] [stdout] c064d837ea47adb248575643095c117be073a7d1cf53bea8d0c8685117e9655b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 99c3df47f54f775eed32d6ea1b5f112d86db10e8df27b7763d6ebca71e5f7c41 [INFO] running `Command { std: "docker" "start" "-a" "99c3df47f54f775eed32d6ea1b5f112d86db10e8df27b7763d6ebca71e5f7c41", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/llm_pipeline-91eed34b3a244ae5) [INFO] [stdout] [INFO] [stdout] running 256 tests [INFO] [stdout] test backend::backoff::tests::test_backoff_delay_capped_at_max ... ok [INFO] [stdout] test backend::backoff::tests::test_backoff_delay_exponential ... ok [INFO] [stdout] test backend::backoff::tests::test_backoff_jitter_full_in_range ... ok [INFO] [stdout] test backend::backoff::tests::test_backoff_none_preset ... ok [INFO] [stdout] test backend::backoff::tests::test_backoff_standard_preset ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_generate_payload ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_json_mode ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_streaming_body ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_thinking_mode ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_use_chat_logic ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_chat_payload ... ok [INFO] [stdout] test backend::tests::test_backoff_none_no_retry ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_chat_with_history ... ok [INFO] [stdout] test backend::tests::test_is_retryable_other_error_not_retried ... ok [INFO] [stdout] test backend::tests::test_backoff_respects_retry_after_parsing ... ok [INFO] [stdout] test client::tests::test_llm_config_builder ... ok [INFO] [stdout] test backend::tests::test_is_retryable_429 ... ok [INFO] [stdout] test client::tests::test_llm_config_defaults ... ok [INFO] [stdout] test backend::tests::test_is_retryable_503 ... ok [INFO] [stdout] test backend::tests::test_is_retryable_cancelled_not_retried ... ok [INFO] [stdout] test diagnostics::tests::test_diagnostics_default_is_ok ... ok [INFO] [stdout] test diagnostics::tests::test_diagnostics_with_error_is_not_ok ... ok [INFO] [stdout] test exec_ctx::tests::test_normalize_base_url_preserves_clean ... ok [INFO] [stdout] test backend::ollama::tests::test_ollama_backend_custom_options ... ok [INFO] [stdout] test exec_ctx::tests::test_normalize_base_url_strips_api ... ok [INFO] [stdout] test exec_ctx::tests::test_normalize_base_url_strips_full_path ... ok [INFO] [stdout] test exec_ctx::tests::test_normalize_base_url_strips_v1 ... ok [INFO] [stdout] test exec_ctx::tests::test_normalize_base_url_trailing_slash ... ok [INFO] [stdout] test llm_call::tests::test_build_output_choice_strategy ... ok [INFO] [stdout] test llm_call::tests::test_build_output_custom_strategy ... ok [INFO] [stdout] test llm_call::tests::test_build_output_json_strategy_fails ... ok [INFO] [stdout] test llm_call::tests::test_build_output_json_strategy_repairs ... ok [INFO] [stdout] test llm_call::tests::test_build_output_json_strategy_succeeds ... ok [INFO] [stdout] test llm_call::tests::test_build_output_number_in_range_rejects ... ok [INFO] [stdout] test llm_call::tests::test_build_output_lossy_backward_compat ... ok [INFO] [stdout] test llm_call::tests::test_build_output_number_strategy ... ok [INFO] [stdout] test backend::tests::test_is_retryable_400_not_retried ... ok [INFO] [stdout] test llm_call::tests::test_build_output_string_list_strategy ... ok [INFO] [stdout] test llm_call::tests::test_build_output_xml_tag_strategy ... ok [INFO] [stdout] test llm_call::tests::test_build_output_text_strategy ... ok [INFO] [stdout] test llm_call::tests::test_build_output_with_thinking ... ok [INFO] [stdout] test llm_call::tests::test_build_request ... ok [INFO] [stdout] test llm_call::tests::test_choice_strategy_with_retry_detects_failure ... ok [INFO] [stdout] test llm_call::tests::test_build_request_with_messages ... ok [INFO] [stdout] test llm_call::tests::test_custom_validator_with_retry ... ok [INFO] [stdout] test llm_call::tests::test_choice_strategy_succeeds ... ok [INFO] [stdout] test llm_call::tests::test_diagnostics_attached_to_output ... ok [INFO] [stdout] test llm_call::tests::test_retry_cool_down_reduces_temperature ... ok [INFO] [stdout] test llm_call::tests::test_retry_no_cool_down ... ok [INFO] [stdout] test llm_call::tests::test_retry_requiring_keys_passes ... ok [INFO] [stdout] test llm_call::tests::test_retry_not_triggered_on_success ... ok [INFO] [stdout] test llm_call::tests::test_llm_call_accessors ... ok [INFO] [stdout] test llm_call::tests::test_retry_triggered_on_semantic_failure ... ok [INFO] [stdout] test llm_call::tests::test_retry_triggered_on_parse_failure ... ok [INFO] [stdout] test llm_call::tests::test_transport_retry_populates_diagnostics ... ok [INFO] [stdout] test output_parser::choice::tests::exact_match ... ok [INFO] [stdout] test output_parser::choice::tests::bold ... ok [INFO] [stdout] test output_parser::choice::tests::case_insensitive ... ok [INFO] [stdout] test output_parser::choice::tests::first_wins ... ok [INFO] [stdout] test output_parser::choice::tests::no_match ... ok [INFO] [stdout] test output_parser::choice::tests::in_prose ... ok [INFO] [stdout] test output_parser::choice::tests::quoted ... ok [INFO] [stdout] test output_parser::choice::tests::with_period ... ok [INFO] [stdout] test output_parser::choice::tests::no_substring ... ok [INFO] [stdout] test output_parser::extract::tests::extract_bare_code_block ... ok [INFO] [stdout] test output_parser::choice::tests::with_think ... ok [INFO] [stdout] test llm_call::tests::test_number_in_range_with_retry_detects_failure ... ok [INFO] [stdout] test output_parser::extract::tests::extract_code_block_for_json ... ok [INFO] [stdout] test output_parser::extract::tests::extract_code_block_for_wrong_lang ... ok [INFO] [stdout] test output_parser::extract::tests::find_bracketed_json_array ... ok [INFO] [stdout] test output_parser::extract::tests::extract_code_block_no_fence ... ok [INFO] [stdout] test output_parser::extract::tests::extract_json_code_block ... ok [INFO] [stdout] test output_parser::extract::tests::find_bracketed_json_object ... ok [INFO] [stdout] test output_parser::extract::tests::find_bracketed_nested ... ok [INFO] [stdout] test output_parser::extract::tests::find_bracketed_with_string_containing_brackets ... ok [INFO] [stdout] test output_parser::extract::tests::strip_mixed_think_and_thinking ... ok [INFO] [stdout] test output_parser::extract::tests::strip_think_tags_complete ... ok [INFO] [stdout] test output_parser::extract::tests::strip_think_tags_incomplete ... ok [INFO] [stdout] test output_parser::extract::tests::find_bracketed_no_match ... ok [INFO] [stdout] test output_parser::extract::tests::find_bracketed_prefers_later ... ok [INFO] [stdout] test output_parser::extract::tests::preprocess_strips_and_trims ... ok [INFO] [stdout] test output_parser::extract::tests::strip_think_tags_multiple ... ok [INFO] [stdout] test output_parser::extract::tests::strip_thinking_tags_complete ... ok [INFO] [stdout] test output_parser::extract::tests::strip_thinking_tags_incomplete ... ok [INFO] [stdout] test output_parser::json::tests::bare_code_block ... ok [INFO] [stdout] test output_parser::json::tests::direct_json_array ... ok [INFO] [stdout] test output_parser::json::tests::code_block_json ... ok [INFO] [stdout] test output_parser::json::tests::direct_json_object ... ok [INFO] [stdout] test output_parser::json::tests::json_in_prose ... ok [INFO] [stdout] test output_parser::json::tests::json_with_surrounding_text ... ok [INFO] [stdout] test output_parser::json::tests::parse_json_value_works ... ok [INFO] [stdout] test output_parser::json::tests::nested_json ... ok [INFO] [stdout] test output_parser::json::tests::repaired_single_quotes ... ok [INFO] [stdout] test output_parser::json::tests::repaired_trailing_comma ... ok [INFO] [stdout] test output_parser::json::tests::think_and_code_block ... ok [INFO] [stdout] test output_parser::json::tests::think_then_json ... ok [INFO] [stdout] test output_parser::list::tests::clean_tags_filters_empty ... ok [INFO] [stdout] test output_parser::list::tests::json_object_with_items_key ... ok [INFO] [stdout] test output_parser::list::tests::json_object_with_list_key ... ok [INFO] [stdout] test output_parser::list::tests::json_object_with_results_key ... ok [INFO] [stdout] test output_parser::list::tests::parse_bulleted_list ... ok [INFO] [stdout] test output_parser::list::tests::parse_cleans_whitespace_and_case ... ok [INFO] [stdout] test output_parser::list::tests::parse_code_block_with_object ... ok [INFO] [stdout] test output_parser::list::tests::parse_deduplicates ... ok [INFO] [stdout] test output_parser::extract::tests::strip_think_tags_no_tags ... ok [INFO] [stdout] test output_parser::list::tests::parse_empty_fails ... ok [INFO] [stdout] test output_parser::json::tests::empty_response_fails ... ok [INFO] [stdout] test output_parser::list::tests::parse_json_array ... ok [INFO] [stdout] test output_parser::list::tests::parse_markdown_code_block ... ok [INFO] [stdout] test output_parser::list::tests::parse_mixed_text_and_json ... ok [INFO] [stdout] test output_parser::list::tests::parse_object_with_tags_key ... ok [INFO] [stdout] test output_parser::list::tests::parse_star_bulleted_list ... ok [INFO] [stdout] test output_parser::list::tests::parse_think_then_code_block ... ok [INFO] [stdout] test output_parser::list::tests::parse_filters_long_tags ... ok [INFO] [stdout] test output_parser::list::tests::parse_numbered_list ... ok [INFO] [stdout] test output_parser::list::tests::parse_with_incomplete_think_block ... ok [INFO] [stdout] test output_parser::list::tests::parse_think_then_object ... ok [INFO] [stdout] test output_parser::list::tests::parse_with_surrounding_text ... ok [INFO] [stdout] test output_parser::list::tests::parse_with_think_blocks ... ok [INFO] [stdout] test output_parser::list::tests::raw_comma_separated ... ok [INFO] [stdout] test output_parser::list::tests::raw_preserves_case ... ok [INFO] [stdout] test output_parser::list::tests::raw_preserves_length ... ok [INFO] [stdout] test output_parser::list::tests::repaired_json_list ... ok [INFO] [stdout] test output_parser::list::tests::strip_think_tags_complete ... ok [INFO] [stdout] test output_parser::list::tests::thinking_tag_variant ... ok [INFO] [stdout] test output_parser::number::tests::float ... ok [INFO] [stdout] test output_parser::number::tests::fraction ... ok [INFO] [stdout] test output_parser::list::tests::strip_think_tags_incomplete ... ok [INFO] [stdout] test output_parser::list::tests::strip_think_tags_multiple ... ok [INFO] [stdout] test output_parser::number::tests::in_prose ... ok [INFO] [stdout] test output_parser::number::tests::labeled ... ok [INFO] [stdout] test output_parser::number::tests::integer ... ok [INFO] [stdout] test output_parser::number::tests::multiple_numbers_labeled ... ok [INFO] [stdout] test output_parser::number::tests::negative ... ok [INFO] [stdout] test output_parser::number::tests::range_fail ... ok [INFO] [stdout] test output_parser::number::tests::no_number ... ok [INFO] [stdout] test output_parser::number::tests::range_pass ... ok [INFO] [stdout] test output_parser::number::tests::with_think ... ok [INFO] [stdout] test output_parser::repair::tests::apostrophe_safety ... ok [INFO] [stdout] test output_parser::repair::tests::block_comment ... ok [INFO] [stdout] test output_parser::repair::tests::missing_close_bracket ... ok [INFO] [stdout] test output_parser::repair::tests::missing_close_brace ... ok [INFO] [stdout] test output_parser::repair::tests::inline_comment ... ok [INFO] [stdout] test output_parser::repair::tests::mixed_errors ... ok [INFO] [stdout] test output_parser::repair::tests::no_repair_needed ... ok [INFO] [stdout] test output_parser::repair::tests::nested_trailing_commas ... ok [INFO] [stdout] test output_parser::repair::tests::python_booleans ... ok [INFO] [stdout] test output_parser::repair::tests::single_quotes ... ok [INFO] [stdout] test output_parser::repair::tests::single_quoted_array ... ok [INFO] [stdout] test output_parser::repair::tests::python_none ... ok [INFO] [stdout] test output_parser::repair::tests::trailing_comma_object ... ok [INFO] [stdout] test output_parser::repair::tests::trailing_comma_array ... ok [INFO] [stdout] test output_parser::repair::tests::unquoted_keys ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_closes_brace ... ok [INFO] [stdout] test output_parser::repair::tests::unrepairable ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_closes_bracket ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_closes_string ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_already_valid ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_nested ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_trailing_comma ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_not_json ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_with_null_fill ... ok [INFO] [stdout] test output_parser::streaming::tests::test_auto_complete_with_think_tags ... ok [INFO] [stdout] test output_parser::streaming::tests::test_json_parser_recovers_truncated_array ... ok [INFO] [stdout] test output_parser::streaming::tests::test_json_parser_truncated_in_string ... ok [INFO] [stdout] test output_parser::streaming::tests::test_json_parser_recovers_truncated_object ... ok [INFO] [stdout] test output_parser::streaming::tests::test_streaming_parser_clear_resets ... ok [INFO] [stdout] test output_parser::streaming::tests::test_streaming_parser_cache_no_reparse ... ok [INFO] [stdout] test output_parser::streaming::tests::test_streaming_parser_progressive ... ok [INFO] [stdout] test output_parser::text::tests::clean_text ... ok [INFO] [stdout] test output_parser::text::tests::already_clean ... ok [INFO] [stdout] test output_parser::text::tests::empty_after_strip ... ok [INFO] [stdout] test output_parser::text::tests::sure_prefix ... ok [INFO] [stdout] test output_parser::xml::tests::case_sensitive ... ok [INFO] [stdout] test output_parser::xml::tests::missing_close ... ok [INFO] [stdout] test output_parser::xml::tests::multiline_content ... ok [INFO] [stdout] test output_parser::xml::tests::multiple_tags ... ok [INFO] [stdout] test output_parser::xml::tests::nested_content ... ok [INFO] [stdout] test output_parser::xml::tests::no_tags_found ... ok [INFO] [stdout] test output_parser::xml::tests::partial_tags_found ... ok [INFO] [stdout] test output_parser::xml::tests::simple_tag ... ok [INFO] [stdout] test output_parser::xml::tests::tag_not_found ... ok [INFO] [stdout] test output_parser::xml::tests::think_then_tag ... ok [INFO] [stdout] test output_parser::xml::tests::whitespace_trimming ... ok [INFO] [stdout] test output_strategy::tests::test_debug_output ... ok [INFO] [stdout] test output_strategy::tests::test_default_is_lossy ... ok [INFO] [stdout] test parsing::tests::test_extract_json_block ... ok [INFO] [stdout] test parsing::tests::test_extract_json_block_none ... ok [INFO] [stdout] test parsing::tests::test_extract_json_candidate_embedded ... ok [INFO] [stdout] test parsing::tests::test_extract_json_candidate_from_block ... ok [INFO] [stdout] test parsing::tests::test_extract_thinking_absent ... ok [INFO] [stdout] test parsing::tests::test_extract_thinking_empty ... ok [INFO] [stdout] test parsing::tests::test_extract_thinking_present ... ok [INFO] [stdout] test parsing::tests::test_parse_as_direct ... ok [INFO] [stdout] test parsing::tests::test_parse_as_embedded ... ok [INFO] [stdout] test parsing::tests::test_parse_as_failure ... ok [INFO] [stdout] test parsing::tests::test_parse_as_markdown_block ... ok [INFO] [stdout] test parsing::tests::test_parse_value_defensively_err ... ok [INFO] [stdout] test parsing::tests::test_parse_value_defensively_ok ... ok [INFO] [stdout] test parsing::tests::test_parse_value_lossy_json ... ok [INFO] [stdout] test parsing::tests::test_parse_value_lossy_string ... ok [INFO] [stdout] test pipeline::tests::test_all_disabled_pipeline_fails ... ok [INFO] [stdout] test pipeline::tests::test_build_payloads_skips_disabled ... ok [INFO] [stdout] test pipeline::tests::test_empty_pipeline_fails ... ok [INFO] [stdout] test output_parser::text::tests::heres_prefix ... ok [INFO] [stdout] test output_parser::text::tests::with_think ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_builder_success ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_stages_accessor ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_with_cancellation ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_with_context ... ok [INFO] [stdout] test prompt::tests::test_numbered_list ... ok [INFO] [stdout] test prompt::tests::test_numbered_list_empty ... ok [INFO] [stdout] test prompt::tests::test_render_basic ... ok [INFO] [stdout] test prompt::tests::test_render_escaped_braces ... ok [INFO] [stdout] test prompt::tests::test_render_escaped_braces_no_substitution ... ok [INFO] [stdout] test prompt::tests::test_render_mixed_escaped_and_placeholder ... ok [INFO] [stdout] test prompt::tests::test_render_no_placeholders ... ok [INFO] [stdout] test prompt::tests::test_section ... ok [INFO] [stdout] test retry::tests::test_custom_validator ... ok [INFO] [stdout] test retry::tests::test_requiring_keys_missing ... ok [INFO] [stdout] test retry::tests::test_requiring_keys_null ... ok [INFO] [stdout] test output_parser::list::tests::parse_comma_separated ... ok [INFO] [stdout] test retry::tests::test_requiring_keys_ok ... ok [INFO] [stdout] test retry::tests::test_retry_config_capped_at_5 ... ok [INFO] [stdout] test retry::tests::test_retry_config_new ... ok [INFO] [stdout] test stage::tests::test_prompt_rendering_no_context ... ok [INFO] [stdout] test stage::tests::test_prompt_rendering ... ok [INFO] [stdout] test retry::tests::test_retry_no_cool_down ... ok [INFO] [stdout] test stage::tests::test_stage_builder_empty_prompt_fails ... ok [INFO] [stdout] test stage::tests::test_stage_builder_success ... ok [INFO] [stdout] test stage::tests::test_stage_creation ... ok [INFO] [stdout] test streaming::tests::test_complete_lines ... ok [INFO] [stdout] test stage::tests::test_system_prompt_none ... ok [INFO] [stdout] test stage::tests::test_system_prompt_rendering ... ok [INFO] [stdout] test streaming::tests::test_flush_empty ... ok [INFO] [stdout] test stage::tests::test_stage_disabled ... ok [INFO] [stdout] test streaming::tests::test_flush_remaining ... ok [INFO] [stdout] test streaming::tests::test_multiple_chunks_multiple_lines ... ok [INFO] [stdout] test streaming::tests::test_ollama_streaming_simulation ... ok [INFO] [stdout] test streaming::tests::test_split_across_chunks ... ok [INFO] [stdout] test streaming::tests::test_split_mid_value ... ok [INFO] [stdout] test streaming::tests::test_streaming_decoder_flush_recovers_truncated ... ok [INFO] [stdout] test streaming::tests::test_empty_chunks ... ok [INFO] [stdout] test streaming::tests::test_non_json_lines_skipped ... ok [INFO] [stdout] test chain::tests::test_chain_single_payload ... ok [INFO] [stdout] test chain::tests::test_chain_pipes_output ... ok [INFO] [stdout] test chain::tests::test_chain_empty_fails ... ok [INFO] [stdout] test backend::tests::test_backoff_respects_cancellation ... ok [INFO] [stdout] test exec_ctx::tests::test_default_timeout_applied ... ok [INFO] [stdout] test chain::tests::test_chain_cancellation ... ok [INFO] [stdout] test chain::tests::test_chain_execute_all ... ok [INFO] [stdout] test backend::mock::tests::test_mock_cycles_responses ... ok [INFO] [stdout] test backend::mock::tests::test_mock_fixed_response ... ok [INFO] [stdout] test chain::tests::test_chain_as_payload ... ok [INFO] [stdout] test llm_call::tests::test_backend_default_is_ollama ... ok [INFO] [stdout] test backend::mock::tests::test_mock_streaming ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 256 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.91s [INFO] [stdout] [INFO] [stderr] Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-0b0d5fd8897021c0) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test test_pipeline_builder ... ok [INFO] [stdout] test test_error_display ... ok [INFO] [stdout] test test_mixed_enabled_disabled_stages ... ok [INFO] [stdout] test test_llm_config_chaining ... ok [INFO] [stdout] test test_pipeline_context ... ok [INFO] [stdout] test test_cancellation_flag ... ok [INFO] [stdout] test test_pipeline_input_with_concepts ... ok [INFO] [stdout] test test_prompt_rendering ... ok [INFO] [stdout] test test_prompt_section ... ok [INFO] [stdout] test test_prompt_numbered_list ... ok [INFO] [stdout] test test_stage_builder_with_prompt_succeeds ... ok [INFO] [stdout] test test_prompt_rendering_missing_placeholders ... ok [INFO] [stdout] test test_stage_builder_without_prompt_fails ... ok [INFO] [stdout] test test_stage_creation ... ok [INFO] [stdout] test test_stage_with_system_prompt ... ok [INFO] [stdout] test test_stage_without_system_prompt ... ok [INFO] [stdout] test test_all_disabled_pipeline_fails ... ok [INFO] [stdout] test test_pipeline_context_overwrite ... ok [INFO] [stdout] test test_llm_config_defaults ... ok [INFO] [stdout] test test_empty_pipeline_fails ... ok [INFO] [stdout] test test_pipeline_input ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Doc-tests llm_pipeline [INFO] [stdout] [INFO] [stdout] running 29 tests [INFO] [stdout] test src/chain.rs - chain::Chain (line 24) ... ignored [INFO] [stdout] test src/llm_call.rs - llm_call::LlmCall (line 28) ... ignored [INFO] [stdout] test src/lib.rs - (line 27) - compile ... ok [INFO] [stdout] test src/lib.rs - (line 62) - compile ... ok [INFO] [stdout] test src/backend/backoff.rs - backend::backoff::JitterStrategy (line 59) ... ok [INFO] [stdout] test src/events.rs - events::FnEventHandler (line 115) ... ok [INFO] [stdout] test src/backend/mock.rs - backend::mock (line 8) ... ok [INFO] [stdout] test src/output_parser/extract.rs - output_parser::extract::find_bracketed (line 143) ... ok [INFO] [stdout] test src/events.rs - events::EventHandler (line 83) ... ok [INFO] [stdout] test src/output_parser/choice.rs - output_parser::choice::parse_choice (line 24) ... ok [INFO] [stdout] test src/payload.rs - payload::PayloadOutput::parse_as (line 75) ... ignored [INFO] [stdout] test src/output_parser/extract.rs - output_parser::extract::extract_code_block (line 58) ... ok [INFO] [stdout] test src/output_parser/extract.rs - output_parser::extract::strip_think_tags (line 22) ... ok [INFO] [stdout] test src/output_parser/number.rs - output_parser::number::parse_number (line 23) ... ok [INFO] [stdout] test src/output_parser/extract.rs - output_parser::extract::extract_code_block_for (line 101) ... ok [INFO] [stdout] test src/output_parser/streaming.rs - output_parser::streaming::StreamingJsonParser (line 172) ... ok [INFO] [stdout] test src/exec_ctx.rs - exec_ctx::ExecCtx (line 26) ... ok [INFO] [stdout] test src/backend/backoff.rs - backend::backoff::BackoffConfig (line 17) ... ok [INFO] [stdout] test src/output_parser/json.rs - output_parser::json::parse_json (line 28) ... ok [INFO] [stdout] test src/output_parser/text.rs - output_parser::text::parse_text (line 39) ... ok [INFO] [stdout] test src/diagnostics.rs - diagnostics::ParseDiagnostics (line 16) ... ok [INFO] [stdout] test src/output_parser/xml.rs - output_parser::xml::parse_xml_tag (line 20) ... ok [INFO] [stdout] test src/output_parser/streaming.rs - output_parser::streaming::auto_complete_json (line 25) ... ok [INFO] [stdout] test src/output_parser/xml.rs - output_parser::xml::parse_xml_tags (line 63) ... ok [INFO] [stdout] test src/prompt.rs - prompt::render (line 17) ... ok [INFO] [stdout] test src/streaming.rs - streaming::StreamingDecoder (line 18) ... ok [INFO] [stdout] test src/retry.rs - retry::RetryConfig (line 23) ... ok [INFO] [stdout] test src/output_strategy.rs - output_strategy::OutputStrategy (line 25) ... ok [INFO] [stdout] test src/output_parser/number.rs - output_parser::number::parse_number_in_range (line 77) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 26 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 4.93s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "99c3df47f54f775eed32d6ea1b5f112d86db10e8df27b7763d6ebca71e5f7c41", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "99c3df47f54f775eed32d6ea1b5f112d86db10e8df27b7763d6ebca71e5f7c41", kill_on_drop: false }` [INFO] [stdout] 99c3df47f54f775eed32d6ea1b5f112d86db10e8df27b7763d6ebca71e5f7c41