[INFO] fetching crate ricecoder-images 0.1.71...
[INFO] testing ricecoder-images-0.1.71 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate ricecoder-images 0.1.71 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate ricecoder-images 0.1.71
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate ricecoder-images 0.1.71
[INFO] tweaked toml for crates.io crate ricecoder-images 0.1.71 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate ricecoder-images 0.1.71 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ricecoder-images 0.1.71 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ricecoder-storage v0.1.71
[INFO] [stderr]   Downloaded ricecoder-providers v0.1.71
[INFO] [stderr]   Downloaded cc v1.0.106
[INFO] [stderr]   Downloaded ricecoder-files v0.1.71
[INFO] [stderr]   Downloaded git2 v0.18.3
[INFO] [stderr]   Downloaded libgit2-sys v0.16.2+1.7.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009
[INFO] running `Command { std: "docker" "start" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009", 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" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009", 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" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling bytes v1.11.0
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling indexmap v2.12.1
[INFO] [stderr]    Compiling tracing-core v0.1.35
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling pulldown-cmark v0.9.6
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling getopts v0.2.24
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling weezl v0.1.12
[INFO] [stderr]    Compiling flate2 v1.1.5
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling cc v1.0.106
[INFO] [stderr]    Compiling lebe v0.5.3
[INFO] [stderr]    Compiling ipnet v2.11.0
[INFO] [stderr]    Compiling bytemuck v1.24.0
[INFO] [stderr]    Compiling gif v0.13.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling signal-hook-registry v1.4.7
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling mio v1.1.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling libz-sys v1.1.23
[INFO] [stderr]    Compiling libssh2-sys v0.3.1
[INFO] [stderr]    Compiling libgit2-sys v0.16.2+1.7.2
[INFO] [stderr]    Compiling inotify v0.9.6
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling filetime v0.2.26
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling notify v6.1.1
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]    Compiling jpeg-decoder v0.3.2
[INFO] [stderr]    Compiling tiff v0.9.1
[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 serde_derive v1.0.228
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tokio v1.48.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 regex v1.12.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tracing v0.1.43
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling icu_properties v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling exr v1.74.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling tokio-util v0.7.17
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling ricecoder-storage v0.1.71
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling git2 v0.18.3
[INFO] [stderr]    Compiling ricecoder-providers v0.1.71
[INFO] [stderr]    Compiling ricecoder-files v0.1.71
[INFO] [stderr]    Compiling ricecoder-images v0.1.71 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2m 55s
[INFO] running `Command { std: "docker" "inspect" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009", 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" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling pulldown-cmark v0.9.6
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling git2 v0.18.3
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling proptest v1.9.0
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling tokio-util v0.7.17
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling ricecoder-storage v0.1.71
[INFO] [stderr]    Compiling ricecoder-files v0.1.71
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling ricecoder-providers v0.1.71
[INFO] [stderr]    Compiling ricecoder-images v0.1.71 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 17s
[INFO] running `Command { std: "docker" "inspect" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009", 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" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.34s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/ricecoder_images-1922d60895bdf074)
[INFO] [stdout] 
[INFO] [stdout] running 143 tests
[INFO] [stdout] test analyzer::tests::test_base64_encode ... ok
[INFO] [stdout] test analyzer::tests::test_retry_context_error_message ... ok
[INFO] [stdout] test analyzer::tests::test_analyzer_default ... ok
[INFO] [stdout] test analyzer::tests::test_optimize_image_empty ... ok
[INFO] [stdout] test analyzer::tests::test_retry_context_creation ... ok
[INFO] [stdout] test analyzer::tests::test_optimize_image_valid ... ok
[INFO] [stdout] test analyzer::tests::test_count_image_tokens_openai ... ok
[INFO] [stdout] test analyzer::tests::test_count_image_tokens_google ... ok
[INFO] [stdout] test analyzer::tests::test_count_image_tokens_ollama ... ok
[INFO] [stdout] test analyzer::tests::test_analyzer_with_config ... ok
[INFO] [stdout] test audit_logging::tests::test_log_analysis_success ... ok
[INFO] [stdout] test audit_logging::tests::test_log_cache_hit ... ok
[INFO] [stdout] test audit_logging::tests::test_multiple_audit_entries ... ok
[INFO] [stdout] test analyzer::tests::test_retry_context_record_failure ... ok
[INFO] [stdout] test audit_logging::tests::test_log_analysis_request ... ok
[INFO] [stdout] test audit_logging::tests::test_log_cache_eviction ... ok
[INFO] [stdout] test audit_logging::tests::test_log_analysis_failure ... ok
[INFO] [stdout] test audit_logging::tests::test_log_cache_miss ... ok
[INFO] [stdout] test analyzer::tests::test_retry_context_max_retries ... ok
[INFO] [stdout] test analyzer::tests::test_retry_context_error_message_max_retries ... ok
[INFO] [stdout] test audit_logging::tests::test_log_analysis_timeout ... ok
[INFO] [stdout] test audit_logging::tests::test_log_file_size_violation ... ok
[INFO] [stdout] test analyzer::tests::test_analyzer_creation ... ok
[INFO] [stdout] test analyzer::tests::test_count_image_tokens_anthropic ... ok
[INFO] [stdout] test audit_logging::tests::test_log_path_traversal_attempt ... ok
[INFO] [stdout] test cache::tests::test_cache_clear ... ok
[INFO] [stdout] test config::tests::test_is_format_supported ... ok
[INFO] [stdout] test audit_logging::tests::test_log_invalid_format ... ok
[INFO] [stdout] test cache::tests::test_compute_hash ... ok
[INFO] [stdout] test config::tests::test_config_serialization ... ok
[INFO] [stdout] test display::tests::test_calculate_resized_dimensions_height_limited ... ok
[INFO] [stdout] test config::tests::test_supported_formats_string ... ok
[INFO] [stdout] test display::tests::test_calculate_resized_dimensions_width_limited ... ok
[INFO] [stdout] test display::tests::test_display_creation ... ok
[INFO] [stdout] test cache::tests::test_cache_exists ... FAILED
[INFO] [stdout] test cache::tests::test_cache_invalidate ... FAILED
[INFO] [stdout] test cache::tests::test_cache_set_and_get ... FAILED
[INFO] [stdout] test cache::tests::test_hash_to_cache_key ... FAILED
[INFO] [stdout] test cache::tests::test_cache_creation ... FAILED
[INFO] [stdout] test display::tests::test_render_ascii_placeholder ... ok
[INFO] [stdout] test config::tests::test_default_config ... ok
[INFO] [stdout] test display::tests::test_render_multiple_images_single ... ok
[INFO] [stdout] test cache::tests::test_cache_miss ... FAILED
[INFO] [stdout] test cache::tests::test_cache_with_config ... FAILED
[INFO] [stdout] test display::tests::test_render_multiple_images_empty ... ok
[INFO] [stdout] test display::tests::test_render_multiple_images_multiple ... ok
[INFO] [stdout] test display::tests::test_display_with_config ... ok
[INFO] [stdout] test display::tests::test_render_separator ... ok
[INFO] [stdout] test display::tests::test_render_image ... ok
[INFO] [stdout] test display::tests::test_render_metadata ... ok
[INFO] [stdout] test display::tests::test_verify_fits_in_terminal ... ok
[INFO] [stdout] test display::tests::test_calculate_resized_dimensions_zero_dimensions ... ok
[INFO] [stdout] test display::tests::test_verify_metadata_present ... ok
[INFO] [stdout] test formats::tests::test_detect_webp_format ... ok
[INFO] [stdout] test formats::tests::test_invalid_format ... ok
[INFO] [stdout] test handler::tests::test_calculate_file_hash ... ok
[INFO] [stdout] test handler::tests::test_check_file_accessible_directory ... ok
[INFO] [stdout] test handler::tests::test_calculate_file_hash_consistency ... ok
[INFO] [stdout] test handler::tests::test_check_file_accessible_nonexistent ... ok
[INFO] [stdout] test handler::tests::test_check_file_accessible_valid ... ok
[INFO] [stdout] test handler::tests::test_format_validation_error_includes_supported_formats ... ok
[INFO] [stdout] test handler::tests::test_handle_dropped_files_nonexistent ... ok
[INFO] [stdout] test handler::tests::test_handle_dropped_files_empty ... ok
[INFO] [stdout] test handler::tests::test_extract_paths_from_event_empty ... ok
[INFO] [stdout] test display::tests::test_verify_multiple_images_organized ... ok
[INFO] [stdout] test handler::tests::test_extract_paths_from_event_multiple_lines ... ok
[INFO] [stdout] test formats::tests::test_detect_gif_format ... ok
[INFO] [stdout] test handler::tests::test_error_message_format_not_supported ... ok
[INFO] [stdout] test handler::tests::test_extract_paths_from_event_single_line ... ok
[INFO] [stdout] test formats::tests::test_detect_png_format ... ok
[INFO] [stdout] test formats::tests::test_format_as_str ... ok
[INFO] [stdout] test handler::tests::test_error_message_path_traversal ... FAILED
[INFO] [stdout] test handler::tests::test_error_message_invalid_file ... ok
[INFO] [stdout] test formats::tests::test_detect_jpeg_format ... ok
[INFO] [stdout] test handler::tests::test_extract_paths_from_event_space_separated ... ok
[INFO] [stdout] test handler::tests::test_handler_default_creation ... ok
[INFO] [stdout] test handler::tests::test_multiple_files_error_collection ... ok
[INFO] [stdout] test handler::tests::test_handler_creation ... ok
[INFO] [stdout] test handler::tests::test_path_sanitization_prevents_traversal ... FAILED
[INFO] [stdout] test handler::tests::test_process_drag_drop_event_empty ... ok
[INFO] [stdout] test handler::tests::test_read_image_nonexistent_file ... ok
[INFO] [stdout] test handler::tests::test_process_drag_drop_event_nonexistent_files ... ok
[INFO] [stdout] test handler::tests::test_process_drag_drop_event_mixed_valid_invalid ... ok
[INFO] [stdout] test provider_integration::tests::test_base64_encode ... ok
[INFO] [stdout] test models::tests::test_cache_entry_expiration ... ok
[INFO] [stdout] test handler::tests::test_validate_format_all_supported ... ok
[INFO] [stdout] test models::tests::test_image_metadata_creation ... ok
[INFO] [stdout] test models::tests::test_cache_entry_creation ... ok
[INFO] [stdout] test handler::tests::test_sanitize_path_nonexistent ... ok
[INFO] [stdout] test models::tests::test_image_analysis_result_creation ... ok
[INFO] [stdout] test provider_integration::tests::test_audit_log_entry_failure ... ok
[INFO] [stdout] test handler::tests::test_sanitize_path_valid ... ok
[INFO] [stdout] test models::tests::test_image_analysis_result_validity ... ok
[INFO] [stdout] test provider_integration::tests::test_audit_log_entry_timeout ... ok
[INFO] [stdout] test provider_integration::tests::test_chat_request_add_image ... ok
[INFO] [stdout] test provider_integration::tests::test_chat_request_serialize_for_provider ... ok
[INFO] [stdout] test provider_integration::tests::test_chat_request_with_images_creation ... ok
[INFO] [stdout] test provider_integration::tests::test_image_data_creation ... ok
[INFO] [stdout] test handler::tests::test_validate_format_supported ... ok
[INFO] [stdout] test provider_integration::tests::test_audit_log_entry_success ... ok
[INFO] [stdout] test handler::tests::test_read_image_with_valid_metadata ... ok
[INFO] [stdout] test handler::tests::test_read_image_valid_png ... ok
[INFO] [stdout] test session_integration::tests::test_message_images_add ... ok
[INFO] [stdout] test provider_integration::tests::test_image_data_mime_type ... ok
[INFO] [stdout] test session_integration::tests::test_message_images_duplicate ... ok
[INFO] [stdout] test session_integration::tests::test_message_images_get ... ok
[INFO] [stdout] test provider_integration::tests::test_image_data_url ... ok
[INFO] [stdout] test provider_integration::tests::test_provider_image_format ... ok
[INFO] [stdout] test session_integration::tests::test_message_images_remove ... ok
[INFO] [stdout] test session_integration::tests::test_session_image_context_clear_all ... ok
[INFO] [stdout] test session_integration::tests::test_message_images_get_all ... ok
[INFO] [stdout] test session_integration::tests::test_session_image_context_add ... ok
[INFO] [stdout] test session_manager::tests::test_multi_session_image_manager_get_session ... ok
[INFO] [stdout] test session_manager::tests::test_multi_session_image_manager_share_image ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_remove_image ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_add_image ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_persistence ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_new ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_get_image ... ok
[INFO] [stdout] test session_manager::tests::test_multi_session_image_manager_duplicate_session ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_add_with_analysis ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_clear_all ... ok
[INFO] [stdout] test token_counting::tests::test_count_anthropic_tokens ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_update_analysis ... ok
[INFO] [stdout] test session_integration::tests::test_session_image_context_history ... ok
[INFO] [stdout] test session_integration::tests::test_session_image_context_remove ... ok
[INFO] [stdout] test session_integration::tests::test_session_image_context_get_metadata ... ok
[INFO] [stdout] test session_manager::tests::test_multi_session_image_manager_remove_session ... ok
[INFO] [stdout] test session_integration::tests::test_session_image_context_clear_current ... ok
[INFO] [stdout] test session_manager::tests::test_multi_session_image_manager_create_session ... ok
[INFO] [stdout] test token_counting::tests::test_count_multiple_image_tokens ... ok
[INFO] [stdout] test token_counting::tests::test_count_openai_tokens_high_res ... ok
[INFO] [stdout] test session_manager::tests::test_session_image_manager_clear_current ... ok
[INFO] [stdout] test token_counting::tests::test_count_total_tokens ... ok
[INFO] [stdout] test token_counting::tests::test_count_ollama_tokens ... ok
[INFO] [stdout] test token_counting::tests::test_count_tokens_empty_prompt ... ok
[INFO] [stdout] test token_counting::tests::test_count_openai_tokens_standard ... ok
[INFO] [stdout] test token_counting::tests::test_count_generic_tokens ... ok
[INFO] [stdout] test token_counting::tests::test_count_google_tokens ... ok
[INFO] [stdout] test token_counting::tests::test_count_prompt_tokens ... ok
[INFO] [stdout] test token_counting::tests::test_count_tokens_different_providers ... ok
[INFO] [stdout] test token_counting::tests::test_image_token_counter_creation ... ok
[INFO] [stdout] test handler::tests::test_error_message_file_too_large ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- cache::tests::test_cache_exists stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::tests::test_cache_exists' (4351) panicked at src/cache.rs:336:39:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: CacheError("Failed to create cache manager: Directory creation failed for /opt/rustwide/workdir/.agent/cache/images: Read-only file system (os error 30)")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3e92 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23352 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x60af70d11aa6 - ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_exists
[INFO] [stdout]   13:     0x60af70cef149 - <ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_exists::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::tests::test_cache_invalidate stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::tests::test_cache_invalidate' (4352) panicked at src/cache.rs:361:39:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: CacheError("Failed to create cache manager: Directory creation failed for /opt/rustwide/workdir/.agent/cache/images: Read-only file system (os error 30)")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3e92 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23352 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x60af70d123a0 - ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_invalidate
[INFO] [stdout]   13:     0x60af70cef219 - <ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_invalidate::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::tests::test_cache_set_and_get stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::tests::test_cache_set_and_get' (4354) panicked at src/cache.rs:292:39:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: CacheError("Failed to create cache manager: Directory creation failed for /opt/rustwide/workdir/.agent/cache/images: Read-only file system (os error 30)")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3e92 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23352 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x60af70d12b9d - ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_set_and_get
[INFO] [stdout]   13:     0x60af70cef239 - <ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_set_and_get::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::tests::test_hash_to_cache_key stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::tests::test_hash_to_cache_key' (4357) panicked at src/cache.rs:285:39:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: CacheError("Failed to create cache manager: Directory creation failed for /opt/rustwide/workdir/.agent/cache/images: Read-only file system (os error 30)")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3e92 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23352 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x60af70d12fe8 - ricecoder_images[ed86eecea03b6b23]::cache::tests::test_hash_to_cache_key
[INFO] [stdout]   13:     0x60af70cef279 - <ricecoder_images[ed86eecea03b6b23]::cache::tests::test_hash_to_cache_key::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::tests::test_cache_creation stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::tests::test_cache_creation' (4350) panicked at src/cache.rs:254:9:
[INFO] [stdout] assertion failed: cache.is_ok()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3ec4 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23542 - core[df12db4294e9bfd3]::panicking::panic
[INFO] [stdout]   12:     0x60af70cef1e5 - <ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_creation::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   13:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   14:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   15:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   16:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   17:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   18:     0x76db26965dfa - <unknown>
[INFO] [stdout]   19:     0x76db269f93d4 - clone
[INFO] [stdout]   20:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::tests::test_cache_miss stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::tests::test_cache_miss' (4353) panicked at src/cache.rs:324:39:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: CacheError("Failed to create cache manager: Directory creation failed for /opt/rustwide/workdir/.agent/cache/images: Read-only file system (os error 30)")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3e92 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23352 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x60af70d10c88 - ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_miss
[INFO] [stdout]   13:     0x60af70cef109 - <ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_miss::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::tests::test_cache_with_config stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::tests::test_cache_with_config' (4355) panicked at src/cache.rs:260:9:
[INFO] [stdout] assertion failed: cache.is_ok()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3ec4 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23542 - core[df12db4294e9bfd3]::panicking::panic
[INFO] [stdout]   12:     0x60af70d12e52 - ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_with_config
[INFO] [stdout]   13:     0x60af70cef259 - <ricecoder_images[ed86eecea03b6b23]::cache::tests::test_cache_with_config::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- handler::tests::test_error_message_path_traversal stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'handler::tests::test_error_message_path_traversal' (4391) panicked at src/handler.rs:616:9:
[INFO] [stdout] assertion failed: error_msg.contains("traversal") || error_msg.contains("does not exist")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3ec4 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23542 - core[df12db4294e9bfd3]::panicking::panic
[INFO] [stdout]   12:     0x60af70cf671c - ricecoder_images[ed86eecea03b6b23]::handler::tests::test_error_message_path_traversal
[INFO] [stdout]   13:     0x60af70cef7e9 - <ricecoder_images[ed86eecea03b6b23]::handler::tests::test_error_message_path_traversal::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- handler::tests::test_path_sanitization_prevents_traversal stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'handler::tests::test_path_sanitization_prevents_traversal' (4402) panicked at src/handler.rs:601:9:
[INFO] [stdout] assertion failed: result.is_err()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60af70f0a1c1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x60af70f22e1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x60af70f0ec6c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x60af70ee3de6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x60af70f01279 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x60af70e360f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x60af70f015a2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x60af70ee3ec4 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x60af70edc939 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x60af70ee4a8d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x60af70f2357c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x60af70f23542 - core[df12db4294e9bfd3]::panicking::panic
[INFO] [stdout]   12:     0x60af70cf894c - ricecoder_images[ed86eecea03b6b23]::handler::tests::test_path_sanitization_prevents_traversal
[INFO] [stdout]   13:     0x60af70cef9c9 - <ricecoder_images[ed86eecea03b6b23]::handler::tests::test_path_sanitization_prevents_traversal::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x60af70e293db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   15:     0x60af70e36a45 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   16:     0x60af70e30304 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x60af70e39ba2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x60af70f091d9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x76db26965dfa - <unknown>
[INFO] [stdout]   20:     0x76db269f93d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     cache::tests::test_cache_creation
[INFO] [stdout]     cache::tests::test_cache_exists
[INFO] [stdout]     cache::tests::test_cache_invalidate
[INFO] [stdout]     cache::tests::test_cache_miss
[INFO] [stdout]     cache::tests::test_cache_set_and_get
[INFO] [stdout]     cache::tests::test_cache_with_config
[INFO] [stdout]     cache::tests::test_hash_to_cache_key
[INFO] [stdout]     handler::tests::test_error_message_path_traversal
[INFO] [stdout]     handler::tests::test_path_sanitization_prevents_traversal
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 134 passed; 9 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009", kill_on_drop: false }`
[INFO] [stdout] 609d238ff15b74f5bfd147fe4128c37af97698c487147db05f0531fb6d99b009
