[INFO] cloning repository https://github.com/flox/llamacpp-proxy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/flox/llamacpp-proxy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflox%2Fllamacpp-proxy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflox%2Fllamacpp-proxy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 38ae453cbe245d901cf170255bbb84918d425606
[INFO] testing flox/llamacpp-proxy against 1.100.0-beta.1 for beta-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflox%2Fllamacpp-proxy" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/flox/llamacpp-proxy
[INFO] finished tweaking git repo https://github.com/flox/llamacpp-proxy
[INFO] tweaked toml for git repo https://github.com/flox/llamacpp-proxy written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/flox/llamacpp-proxy on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/flox/llamacpp-proxy 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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89
[INFO] running `Command { std: "docker" "start" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling log v0.4.30
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling llamacpp-proxy v0.4.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.52s
[INFO] running `Command { std: "docker" "inspect" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling llamacpp-proxy v0.4.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.21s
[INFO] running `Command { std: "docker" "inspect" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/llamacpp-proxy/49599e87bbab277a/out/llamacpp_proxy-49599e87bbab277a)
[INFO] [stdout] 
[INFO] [stdout] running 62 tests
[INFO] [stdout] test tests::anthropic_schema_semantic_mode_preserves_standard_constraints ... ok
[INFO] [stdout] test tests::anthropic_sse_error_data_is_not_rewritten ... ok
[INFO] [stdout] test tests::anthropic_response_error_field_is_not_rewritten ... ok
[INFO] [stdout] test tests::anthropic_sse_response_adds_content_block_defaults ... ok
[INFO] [stdout] test tests::converts_future_non_function_responses_tool_types ... ok
[INFO] [stdout] test tests::default_mode_flat_unprefixes_namespaced_response_sse_payloads ... ok
[INFO] [stdout] test tests::default_mode_flat_unprefixes_namespaced_response_tool_calls ... ok
[INFO] [stdout] test tests::anthropic_response_adds_safe_defaults ... ok
[INFO] [stdout] test tests::accumulates_streaming_tool_call_chunks ... ok
[INFO] [stdout] test tests::anthropic_response_error_body_is_not_rewritten ... ok
[INFO] [stdout] test tests::anthropic_response_unrelated_json_is_not_rewritten ... ok
[INFO] [stdout] test tests::anthropic_schema_compat_mode_moves_const_default_to_description ... ok
[INFO] [stdout] test tests::anthropic_schema_compat_mode_omits_parser_risky_standard_constraints ... ok
[INFO] [stdout] test tests::anthropic_schema_sanitizer_adds_missing_property_type ... ok
[INFO] [stdout] test tests::anthropic_schema_sanitizer_merges_all_of_objects ... ok
[INFO] [stdout] test tests::does_not_body_detect_openai_chat_as_gemini ... ok
[INFO] [stdout] test tests::anthropic_schema_sanitizer_preserves_multi_branch_notes ... ok
[INFO] [stdout] test tests::detects_protocols ... ok
[INFO] [stdout] test tests::experimental_wrapped_mode_wraps_namespaced_response_tool_calls ... ok
[INFO] [stdout] test tests::gemini_candidate_count_is_not_forwarded_without_multi_candidate_support ... ok
[INFO] [stdout] test tests::gemini_function_responses_match_repeated_tool_names_in_order ... ok
[INFO] [stdout] test tests::gemini_function_response_references_generated_tool_call_id ... ok
[INFO] [stdout] test tests::flattens_responses_namespace_tools ... ok
[INFO] [stdout] test tests::gemini_model_list_handles_malformed_openai_models_response ... ok
[INFO] [stdout] test tests::gemini_mixed_parts_are_translated_in_part_order ... ok
[INFO] [stdout] test tests::gemini_path_model_is_informational_only ... ok
[INFO] [stdout] test tests::gemini_orphan_function_response_gets_synthetic_tool_call_id ... ok
[INFO] [stdout] test tests::gemini_stream_suppresses_openai_done_sentinel ... ok
[INFO] [stdout] test tests::maps_openai_error_response_to_gemini_using_http_status ... ok
[INFO] [stdout] test tests::maps_openai_error_response_to_gemini_using_numeric_error_code_when_status_is_success ... ok
[INFO] [stdout] test tests::maps_openai_error_type_to_gemini_when_no_http_error_status_or_numeric_code ... ok
[INFO] [stdout] test tests::namespace_response_mode_defaults_to_flat_and_keeps_wrapper_experimental ... ok
[INFO] [stdout] test tests::namespace_rewrite_targets_function_calls_only ... ok
[INFO] [stdout] test tests::integration_backend_sse_tool_call_stream_matches_expected_ollama_ndjson ... ok
[INFO] [stdout] test tests::observed_js_client_chat_nonstream_fixture_rewrites_to_openai_chat ... ok
[INFO] [stdout] test tests::observed_js_client_chat_tools_stream_fixture_rewrites_to_openai_chat ... ok
[INFO] [stdout] test tests::observed_js_client_generate_nonstream_fixture_rewrites_to_openai_chat ... ok
[INFO] [stdout] test tests::observed_python_client_chat_stream_fixture_rewrites_to_openai_chat ... ok
[INFO] [stdout] test tests::observed_ollama_streaming_response_fixtures_are_ndjson ... ok
[INFO] [stdout] test tests::observed_js_lifecycle_fixtures_accept_name_field ... ok
[INFO] [stdout] test tests::observed_python_client_chat_nonstream_fixture_rewrites_to_openai_chat ... ok
[INFO] [stdout] test tests::observed_python_client_generate_nonstream_fixture_rewrites_to_openai_chat ... ok
[INFO] [stdout] test tests::observed_python_client_generate_stream_fixture_rewrites_to_openai_chat ... ok
[INFO] [stdout] test tests::ollama_stream_accumulator_converts_sse_payloads_to_ndjson_payloads ... ok
[INFO] [stdout] test tests::ollama_tags_without_created_use_stable_modified_at ... ok
[INFO] [stdout] test tests::rewrites_ollama_chat_to_openai_chat_with_tool_ids ... ok
[INFO] [stdout] test tests::ollama_tags_use_backend_metadata_modified_at_before_stable_fallback ... ok
[INFO] [stdout] test tests::sanitizer_drops_max_completion_tokens_when_max_tokens_exists ... ok
[INFO] [stdout] test tests::rewrites_ollama_generate_prompt_and_options ... ok
[INFO] [stdout] test tests::detects_gemini_requests_by_body_on_nonstandard_paths ... ok
[INFO] [stdout] test tests::sanitizes_backend_incompatible_request_fields_idempotently ... ok
[INFO] [stdout] test tests::sanitizer_leaves_non_object_inputs_unchanged ... ok
[INFO] [stdout] test tests::synthetic_codex_fixture_uses_flat_unprefixing_by_default ... ok
[INFO] [stdout] test tests::experimental_wrapped_mode_wraps_namespaced_response_sse_payloads ... ok
[INFO] [stdout] test tests::schema_sanitizer_inlines_single_any_of ... ok
[INFO] [stdout] test tests::translates_backend_model_record_to_ollama_show_details ... ok
[INFO] [stdout] test tests::translates_gemini_request_to_chat_completions ... ok
[INFO] [stdout] test tests::translates_openai_models_to_gemini_model_list ... ok
[INFO] [stdout] test tests::translates_openai_models_to_ollama_tags ... ok
[INFO] [stdout] test tests::translates_openai_chat_response_to_ollama_chat ... ok
[INFO] [stdout] test tests::translates_openai_response_to_gemini ... ok
[INFO] [stdout] test tests::detects_ollama_paths ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/llamacpp-proxy/8f89ab4733b996b4/out/llamacpp_proxy-8f89ab4733b996b4)
[INFO] [stdout] test result: ok. 62 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 47 tests
[INFO] [stdout] test tests::anthropic_sse_rewrite_preserves_event_name ... ok
[INFO] [stdout] test tests::gemini_model_list_non_get_does_not_route_to_backend_models ... ok
[INFO] [stdout] test tests::health_response_reports_primary_probe_path ... ok
[INFO] [stdout] test tests::malformed_json_on_gemini_generation_returns_protocol_400 ... ok
[INFO] [stdout] test tests::malformed_json_on_non_generation_gemini_path_still_passes_through ... ok
[INFO] [stdout] test tests::malformed_json_on_ollama_returns_protocol_400 ... ok
[INFO] [stdout] test tests::gemini_non_generation_passthrough_sanitizes_json_before_forwarding ... ok
[INFO] [stdout] test tests::health_response_falls_back_to_ollama_root_after_health_404 ... ok
[INFO] [stdout] test tests::malformed_json_on_responses_returns_protocol_400 ... ok
[INFO] [stdout] test tests::gemini_model_list_routes_to_openai_models_endpoint ... ok
[INFO] [stdout] test tests::anthropic_translation_uses_compat_schema_mode_by_default ... ok
[INFO] [stdout] test tests::observed_pull_and_delete_fixtures_return_client_compatible_synthetic_success ... ok
[INFO] [stdout] test tests::health_response_reports_primary_probe_connection_error ... ok
[INFO] [stdout] test tests::observed_tags_and_show_fixtures_route_to_backend_models ... ok
[INFO] [stdout] test tests::gemini_path_passthrough_disables_response_translation ... ok
[INFO] [stdout] test tests::observed_nonstream_chat_and_generate_fixtures_route_without_streaming ... ok
[INFO] [stdout] test tests::health_response_does_not_accept_non_ollama_root_body ... ok
[INFO] [stdout] test tests::malformed_json_on_anthropic_messages_returns_protocol_400 ... ok
[INFO] [stdout] test tests::ollama_buffered_successful_non_sse_plaintext_becomes_ndjson_error_value ... ok
[INFO] [stdout] test tests::ollama_stream_guard_buffers_every_non_sse_upstream_response ... ok
[INFO] [stdout] test tests::ollama_chat_translates_to_openai_chat_and_defaults_streaming ... ok
[INFO] [stdout] test tests::ollama_backend_json_error_body_becomes_protocol_error ... ok
[INFO] [stdout] test tests::ollama_sse_byte_parser_preserves_split_utf8 ... ok
[INFO] [stdout] test tests::ollama_tags_forwards_to_openai_models ... ok
[INFO] [stdout] test tests::ollama_sse_byte_parser_reports_invalid_utf8_frame ... ok
[INFO] [stdout] test tests::ollama_transform_fallback_turns_raw_json_error_into_ndjson ... ok
[INFO] [stdout] test tests::ollama_pull_defaults_to_ndjson_synthetic_success ... ok
[INFO] [stdout] test tests::ollama_show_queries_backend_models_with_get ... ok
[INFO] [stdout] test tests::pass_through_protocol_preserves_malformed_non_json_body ... ok
[INFO] [stdout] test tests::proxy_replaces_client_accept_encoding_with_identity_for_backend ... ok
[INFO] [stdout] test tests::pass_through_protocol_sanitizes_json_before_forwarding ... ok
[INFO] [stdout] test tests::ollama_unknown_path_passthrough_sanitizes_json_before_forwarding ... ok
[INFO] [stdout] test tests::valid_anthropic_without_tools_still_forwards_as_anthropic ... ok
[INFO] [stdout] test tests::openai_chat_requests_are_sanitized_before_forwarding ... ok
[INFO] [stdout] test tests::well_formed_unexpected_anthropic_json_uses_fallback_path ... ok
[INFO] [stdout] test tests::translation_failure_fallback_preserves_json_without_backend_incompatible_fields ... ok
[INFO] [stdout] test tests::well_formed_unexpected_gemini_generation_falls_back_to_passthrough ... ok
[INFO] [stdout] test tests::proxy_translates_gemini_model_list_response_end_to_end ... ok
[INFO] [stdout] test tests::responses_sse_rewrite_preserves_event_metadata ... ok
[INFO] [stdout] test tests::responses_sse_rewrite_preserves_multiline_data_shape ... ok
[INFO] [stdout] test tests::translation_failure_fallback_sanitizes_json_before_forwarding ... ok
[INFO] [stdout] test tests::translated_paths_reject_compressed_backend_responses ... ok
[INFO] [stdout] test tests::proxy_sanitizes_pass_through_and_translation_failure_fallback_requests ... ok
[INFO] [stdout] test tests::ollama_transform_fallback_turns_sse_error_data_into_ndjson ... ok
[INFO] [stdout] test tests::proxy_sanitizes_backend_requests_for_all_translated_protocols ... ok
[INFO] [stdout] test tests::well_formed_unexpected_responses_json_uses_fallback_path ... ok
[INFO] [stdout] test tests::health_response_reports_fallback_probe_timeout_after_primary_404 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 47 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.02s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests llamacpp_proxy
[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" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89", kill_on_drop: false }`
[INFO] [stdout] 8be23d1b19b7d6d1f226cf7a1a03c788fcb1c80a81463057c108d3623f064e89
