[INFO] fetching crate ralph-core 2.6.0...
[INFO] testing ralph-core-2.6.0 against beta-2026-03-05 for beta-1.95-1
[INFO] extracting crate ralph-core 2.6.0 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate ralph-core 2.6.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate ralph-core 2.6.0
[INFO] tweaked toml for crates.io crate ralph-core 2.6.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ralph-core 2.6.0 on toolchain beta-2026-03-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ralph-core 2.6.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" "+beta-2026-03-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+beta-2026-03-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2bc5f066255273c9a640b3198f468369f70443a7fb45c3d30d1f73144db45d55
[INFO] running `Command { std: "docker" "start" "-a" "2bc5f066255273c9a640b3198f468369f70443a7fb45c3d30d1f73144db45d55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2bc5f066255273c9a640b3198f468369f70443a7fb45c3d30d1f73144db45d55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2bc5f066255273c9a640b3198f468369f70443a7fb45c3d30d1f73144db45d55", kill_on_drop: false }`
[INFO] [stdout] 2bc5f066255273c9a640b3198f468369f70443a7fb45c3d30d1f73144db45d55
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 732f27ad638dd3feeb3df2317545cfc33ba7973f61206bbf8af6a03f15474d5f
[INFO] running `Command { std: "docker" "start" "-a" "732f27ad638dd3feeb3df2317545cfc33ba7973f61206bbf8af6a03f15474d5f", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling find-msvc-tools v0.1.7
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling ryu v1.0.22
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling webpki-roots v1.0.5
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling cc v1.2.52
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling linux-keyutils v0.2.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling keyring v3.6.3
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.2
[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 serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[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 icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling ralph-proto v2.6.0
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper-util v0.1.19
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling ralph-core v2.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 49.65s
[INFO] running `Command { std: "docker" "inspect" "732f27ad638dd3feeb3df2317545cfc33ba7973f61206bbf8af6a03f15474d5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "732f27ad638dd3feeb3df2317545cfc33ba7973f61206bbf8af6a03f15474d5f", kill_on_drop: false }`
[INFO] [stdout] 732f27ad638dd3feeb3df2317545cfc33ba7973f61206bbf8af6a03f15474d5f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 850384f4b9cc1998b11fe8c15e59a5f7a09c9842793f62ee239cf56bf52903bf
[INFO] running `Command { std: "docker" "start" "-a" "850384f4b9cc1998b11fe8c15e59a5f7a09c9842793f62ee239cf56bf52903bf", kill_on_drop: false }`
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling clap_lex v0.7.7
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling fraction v0.15.3
[INFO] [stderr]    Compiling num-cmp v0.1.0
[INFO] [stderr]    Compiling uuid v1.21.0
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling clap_builder v4.5.54
[INFO] [stderr]    Compiling bytecount v0.6.9
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling ralph-proto v2.6.0
[INFO] [stderr]    Compiling tempfile v3.24.0
[INFO] [stderr]    Compiling hyper-util v0.1.19
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling clap v4.5.54
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling fancy-regex v0.13.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling iso8601 v0.6.3
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling jsonschema v0.18.3
[INFO] [stderr]    Compiling ralph-core v2.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 58.86s
[INFO] running `Command { std: "docker" "inspect" "850384f4b9cc1998b11fe8c15e59a5f7a09c9842793f62ee239cf56bf52903bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "850384f4b9cc1998b11fe8c15e59a5f7a09c9842793f62ee239cf56bf52903bf", kill_on_drop: false }`
[INFO] [stdout] 850384f4b9cc1998b11fe8c15e59a5f7a09c9842793f62ee239cf56bf52903bf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 819a95d29f7ffc4eff6a3aa0d3ee3f91eeb97b6d906d97e7b1fac5bd3a49b6b8
[INFO] running `Command { std: "docker" "start" "-a" "819a95d29f7ffc4eff6a3aa0d3ee3f91eeb97b6d906d97e7b1fac5bd3a49b6b8", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ralph_core-bbcf9ce12fd934ea)
[INFO] [stdout] 
[INFO] [stdout] running 687 tests
[INFO] [stdout] test config::tests::test_adapter_settings ... ok
[INFO] [stdout] test config::tests::test_core_config_custom_guardrails ... ok
[INFO] [stdout] test config::tests::test_ambiguous_routing_rejected ... ok
[INFO] [stdout] test config::tests::test_core_config_customizable ... ok
[INFO] [stdout] test config::tests::test_core_config_defaults ... ok
[INFO] [stdout] test config::tests::test_custom_backend_args_shorthand ... ok
[INFO] [stdout] test config::tests::test_custom_backend_requires_command_message_actionable ... ok
[INFO] [stdout] test config::tests::test_custom_backend_with_empty_command_errors ... ok
[INFO] [stdout] test config::tests::test_custom_backend_with_command_succeeds ... ok
[INFO] [stdout] test config::tests::test_custom_backend_requires_command ... ok
[INFO] [stdout] test config::tests::test_default_agent_priority ... ok
[INFO] [stdout] test config::tests::test_default_config ... ok
[INFO] [stdout] test config::tests::test_default_prompt_file_value ... ok
[INFO] [stdout] test config::tests::test_extra_instructions_empty_by_default ... ok
[INFO] [stdout] test config::tests::test_empty_completion_promise_rejected ... ok
[INFO] [stdout] test config::tests::test_empty_description_rejected ... ok
[INFO] [stdout] test config::tests::test_extra_instructions_merged_during_normalize ... ok
[INFO] [stdout] test config::tests::test_features_config_auto_merge_defaults_to_false ... ok
[INFO] [stdout] test config::tests::test_features_config_auto_merge_false_from_yaml ... ok
[INFO] [stdout] test config::tests::test_features_config_auto_merge_from_yaml ... ok
[INFO] [stdout] test config::tests::test_hat_config_without_backend ... ok
[INFO] [stdout] test config::tests::test_hat_backend_custom ... ok
[INFO] [stdout] test config::tests::test_missing_description_rejected ... ok
[INFO] [stdout] test config::tests::test_hat_backend_kiro_agent ... ok
[INFO] [stdout] test config::tests::test_custom_backend_args_explicit_key ... ok
[INFO] [stdout] test config::tests::test_mixed_backends_config ... ok
[INFO] [stdout] test config::tests::test_hat_backend_named ... ok
[INFO] [stdout] test config::tests::test_hat_backend_kiro_agent_with_args ... ok
[INFO] [stdout] test config::tests::test_hat_config_with_backend ... ok
[INFO] [stdout] test config::tests::test_features_config_preserves_parallel_when_adding_auto_merge ... ok
[INFO] [stdout] test config::tests::test_hat_backend_named_with_args ... ok
[INFO] [stdout] test config::tests::test_parse_yaml_with_custom_hats ... ok
[INFO] [stdout] test config::tests::test_preflight_config_deserialize ... ok
[INFO] [stdout] test config::tests::test_hat_backend_named_with_args_empty ... ok
[INFO] [stdout] test config::tests::test_project_key_rejected ... ok
[INFO] [stdout] test config::tests::test_parse_yaml_v1_format ... ok
[INFO] [stdout] test config::tests::test_prompt_file_with_no_inline_allowed ... ok
[INFO] [stdout] test config::tests::test_prompt_with_default_prompt_file_allowed ... ok
[INFO] [stdout] test config::tests::test_reserved_trigger_message_actionable ... ok
[INFO] [stdout] test config::tests::test_reserved_trigger_task_resume_rejected ... ok
[INFO] [stdout] test config::tests::test_robot_config_absent_parses_as_default ... ok
[INFO] [stdout] test config::tests::test_robot_config_defaults_disabled ... ok
[INFO] [stdout] test config::tests::test_robot_config_disabled_skips_validation ... ok
[INFO] [stdout] test config::tests::test_robot_config_enabled_missing_timeout_and_token_fails_on_timeout_first ... ok
[INFO] [stdout] test config::tests::test_robot_config_resolve_bot_token_none_without_config ... ok
[INFO] [stdout] test config::tests::test_robot_config_enabled_missing_timeout_fails ... ok
[INFO] [stdout] test config::tests::test_robot_config_validate_missing_telegram_section ... ok
[INFO] [stdout] test config::tests::test_robot_config_valid_full ... ok
[INFO] [stdout] test config::tests::test_robot_config_resolve_bot_token_from_config ... ok
[INFO] [stdout] test config::tests::test_robot_config_validate_with_config_token ... ok
[INFO] [stdout] test config::tests::test_robot_config_validate_empty_bot_token ... ok
[INFO] [stdout] test config::tests::test_skills_config_disabled ... ok
[INFO] [stdout] test config::tests::test_tui_config_default ... ok
[INFO] [stdout] test config::tests::test_tui_config_parse_invalid_modifier ... ok
[INFO] [stdout] test config::tests::test_reserved_trigger_task_start_rejected ... ok
[INFO] [stdout] test config::tests::test_suppress_warnings ... ok
[INFO] [stdout] test config::tests::test_unknown_fields_ignored ... ok
[INFO] [stdout] test config::tests::test_validate_deferred_features ... ok
[INFO] [stdout] test config::tests::test_tui_config_parse_ctrl_b ... ok
[INFO] [stdout] test config::tests::test_unique_triggers_accepted ... ok
[INFO] [stdout] test config::tests::test_tui_config_parse_invalid_key ... ok
[INFO] [stdout] test config::tests::test_skills_config_deserializes_all_fields ... ok
[INFO] [stdout] test config::tests::test_validate_dropped_fields ... ok
[INFO] [stdout] test config::tests::test_skills_config_defaults_when_absent ... ok
[INFO] [stdout] test config::tests::test_prompt_and_prompt_file_mutually_exclusive ... ok
[INFO] [stdout] test config::tests::test_tui_config_parse_invalid_format ... ok
[INFO] [stdout] test config::tests::test_skill_override_partial_fields ... ok
[INFO] [stdout] test diagnostics::agent_output::tests::test_immediate_flush ... ok
[INFO] [stdout] test diagnostics::agent_output::tests::test_all_content_types_serialize ... ok
[INFO] [stdout] test diagnostics::agent_output::tests::test_logger_creates_file ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_rotate_empty_dir ... ok
[INFO] [stdout] test diagnostics::errors::tests::test_error_logger_creates_file ... ok
[INFO] [stdout] test diagnostics::errors::tests::test_all_error_types_serialize ... ok
[INFO] [stdout] test diagnostics::errors::tests::test_error_logger_integration ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_rotate_over_limit ... ok
[INFO] [stdout] test diagnostics::integration_tests::tests::test_event_loop_logs_backpressure_triggered ... ok
[INFO] [stdout] test diagnostics::orchestration::tests::test_immediate_flush ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_rotate_under_limit ... ok
[INFO] [stdout] test diagnostics::orchestration::tests::test_all_event_types_serialize ... ok
[INFO] [stdout] test diagnostics::orchestration::tests::test_iteration_and_hat_captured ... ok
[INFO] [stdout] test diagnostics::performance::tests::test_performance_logger_creates_file ... ok
[INFO] [stdout] test diagnostics::integration_tests::tests::test_event_loop_logs_event_published ... ok
[INFO] [stdout] test config::tests::test_agent_priority ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_rotate_ignores_non_matching_files ... ok
[INFO] [stdout] test diagnostics::stream_handler::tests::test_wrapper_calls_inner_handler ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_rotate_nonexistent_dir ... ok
[INFO] [stdout] test diagnostics::stream_handler::tests::test_wrapper_logs_all_events ... ok
[INFO] [stdout] test diagnostics::integration_tests::tests::test_event_loop_logs_hat_selected ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_create_log_file_creates_directory ... ok
[INFO] [stdout] test diagnostics::performance::tests::test_all_metric_types_serialize ... ok
[INFO] [stdout] test diagnostics::tests::test_diagnostics_disabled_by_default ... ok
[INFO] [stdout] test diagnostics::tests::test_diagnostics_enabled_creates_directory ... ok
[INFO] [stdout] test diagnostics::tests::test_session_directory_format ... ok
[INFO] [stdout] test diagnostics::stream_handler::tests::test_thread_safety ... ok
[INFO] [stdout] test diagnostics::trace_layer::tests::test_context_included ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_create_log_file_rotates ... ok
[INFO] [stdout] test diagnostics::agent_output::tests::test_log_writes_valid_jsonl ... ok
[INFO] [stdout] test diagnostics::integration_tests::tests::test_event_loop_logs_loop_terminated ... ok
[INFO] [stdout] test diagnostics::integration_tests::tests::test_event_loop_logs_iteration_started ... ok
[INFO] [stdout] test diagnostics::log_rotation::tests::test_rotate_at_limit ... ok
[INFO] [stdout] test diagnostics::tests::test_error_logger_integration ... ok
[INFO] [stdout] test diagnostics::trace_layer::tests::test_fields_serialized_correctly ... ok
[INFO] [stdout] test event_logger::tests::test_mixed_event_formats ... ok
[INFO] [stdout] test event_logger::tests::test_creates_parent_directory ... ok
[INFO] [stdout] test event_logger::tests::test_read_last ... ok
[INFO] [stdout] test diagnostics::trace_layer::tests::test_layer_captures_all_levels ... ok
[INFO] [stdout] test diagnostics::tests::test_performance_logger_integration ... ok
[INFO] [stdout] test event_logger::tests::test_empty_history ... ok
[INFO] [stdout] test event_logger::tests::test_object_payload_from_ralph_emit_json ... ok
[INFO] [stdout] test event_loop::tests::test_active_hat_gets_publishing_guide_not_topology ... ok
[INFO] [stdout] test event_logger::tests::test_log_and_read ... ok
[INFO] [stdout] test event_logger::tests::test_filter_by_topic ... ok
[INFO] [stdout] test event_logger::tests::test_payload_truncation ... ok
[INFO] [stdout] test event_logger::tests::test_payload_truncation_with_multibyte_chars ... ok
[INFO] [stdout] test event_loop::tests::test_always_hatless_no_backend_delegation ... ok
[INFO] [stdout] test event_loop::tests::test_always_hatless_collects_all_pending_events ... ok
[INFO] [stdout] test event_loop::tests::test_always_hatless_ralph_executes_all_iterations ... ok
[INFO] [stdout] test event_loop::tests::test_always_hatless_solo_mode_unchanged ... ok
[INFO] [stdout] test event_loop::tests::test_build_done_backpressure_rejects_high_complexity ... ok
[INFO] [stdout] test event_loop::tests::test_build_prompt_uses_custom_hat_for_non_defaults ... ok
[INFO] [stdout] test event_loop::tests::test_build_done_backpressure_accepts_mutants_warning ... ok
[INFO] [stdout] test event_loop::tests::test_build_done_backpressure_rejects_duplication ... ok
[INFO] [stdout] test event_logger::tests::test_agent_written_events_without_iteration ... ok
[INFO] [stdout] test event_loop::tests::test_build_prompt_uses_ghuntley_style_for_all_hats ... ok
[INFO] [stdout] test event_loop::tests::test_active_hat_with_instructions_and_publishing_guide ... ok
[INFO] [stdout] test event_loop::tests::test_build_done_backpressure_rejects_performance_regression ... ok
[INFO] [stdout] test event_loop::tests::test_check_for_user_prompt_detects_user_prompt_event ... ok
[INFO] [stdout] test event_loop::tests::test_check_for_user_prompt_extracts_id_and_text ... ok
[INFO] [stdout] test event_loop::tests::test_builder_cannot_terminate_loop ... ok
[INFO] [stdout] test event_loop::tests::test_check_for_user_prompt_returns_none_when_no_user_prompt ... ok
[INFO] [stdout] test event_loop::tests::test_completion_promise_detection ... ok
[INFO] [stdout] test event_loop::tests::test_completion_promise_with_pending_tasks_in_task_store ... ok
[INFO] [stdout] test event_loop::tests::test_consecutive_failures_resets_on_success ... ok
[INFO] [stdout] test event_loop::tests::test_check_ralph_completion_detection ... ok
[INFO] [stdout] test event_loop::tests::test_consecutive_failures_increments_on_failed_output ... ok
[INFO] [stdout] test event_loop::tests::test_cost_based_termination ... ok
[INFO] [stdout] test event_loop::tests::test_custom_hat_instructions_included_in_prompt ... ok
[INFO] [stdout] test event_loop::tests::test_check_hat_exhaustion_emits_once_at_limit ... ok
[INFO] [stdout] test event_loop::tests::test_exit_codes_per_spec ... ok
[INFO] [stdout] test event_loop::tests::test_custom_hat_with_instructions_uses_build_custom_hat ... ok
[INFO] [stdout] test event_loop::tests::test_extract_prompt_id_fallback_prefix ... ok
[INFO] [stdout] test event_loop::tests::test_extract_prompt_id_from_xml_format ... ok
[INFO] [stdout] test event_loop::tests::test_extract_prompt_id_prefers_xml_id ... ok
[INFO] [stdout] test event_loop::tests::test_default_hat_with_custom_instructions_uses_build_custom_hat ... ok
[INFO] [stdout] test event_loop::tests::test_extract_task_id_first_line_and_default ... ok
[INFO] [stdout] test event_loop::tests::test_determine_active_hats ... ok
[INFO] [stdout] test event_loop::tests::test_done_section_suppressed_for_active_hat_via_event_loop ... ok
[INFO] [stdout] test event_loop::tests::test_completion_promise_requires_last_event ... ok
[INFO] [stdout] test event_loop::tests::test_format_duration_variants ... ok
[INFO] [stdout] test event_loop::tests::test_get_active_hat_id_no_pending_returns_ralph ... ok
[INFO] [stdout] test event_loop::tests::test_get_hat_backend_with_named_backend ... ok
[INFO] [stdout] test event_loop::tests::test_format_event_wraps_top_level_prompts ... ok
[INFO] [stdout] test event_loop::tests::test_completion_promise_with_open_tasks_still_terminates ... ok
[INFO] [stdout] test event_loop::tests::test_guidance_persisted_to_scratchpad ... ok
[INFO] [stdout] test event_loop::tests::test_guidance_appends_to_existing_scratchpad ... ok
[INFO] [stdout] test event_loop::tests::test_default_publishes_not_injected_when_not_configured ... ok
[INFO] [stdout] test event_loop::tests::test_default_publishes_not_injected_when_events_written ... ok
[INFO] [stdout] test event_loop::tests::test_custom_hat_without_instructions_gets_default_behavior ... ok
[INFO] [stdout] test event_loop::tests::test_guidance_persists_across_iterations_solo_mode ... ok
[INFO] [stdout] test event_loop::tests::test_default_publishes_injects_when_no_events ... ok
[INFO] [stdout] test event_loop::tests::test_default_publishes_skipped_when_non_orphan_event_written ... ok
[INFO] [stdout] test event_loop::tests::test_get_active_hat_id_with_pending_event ... ok
[INFO] [stdout] test event_loop::tests::test_get_hat_backend_with_kiro_agent ... ok
[INFO] [stdout] test event_loop::tests::test_get_hat_backend_inherits_global ... ok
[INFO] [stdout] test event_loop::tests::test_has_pending_human_events_detects_guidance ... ok
[INFO] [stdout] test event_loop::tests::test_guidance_persists_across_iterations_multi_hat_mode ... ok
[INFO] [stdout] test event_loop::tests::test_get_active_hat_id_deterministic_with_multiple_pending ... ok
[INFO] [stdout] test event_loop::tests::test_get_hat_publishes_returns_configured_topics ... ok
[INFO] [stdout] test event_loop::tests::test_has_pending_human_events_ignores_non_human ... ok
[INFO] [stdout] test event_loop::tests::test_inject_fallback_event_targets_last_hat ... ok
[INFO] [stdout] test event_loop::tests::test_inject_robot_skill_skipped_when_disabled ... ok
[INFO] [stdout] test event_loop::tests::test_loop_thrashing_detection ... ok
[INFO] [stdout] test event_loop::tests::test_hatless_mode_registers_ralph_catch_all ... ok
[INFO] [stdout] test event_loop::tests::test_malformed_counter_resets_on_valid_event ... ok
[INFO] [stdout] test event_loop::tests::test_initialization_routes_to_ralph_in_multihat_mode ... ok
[INFO] [stdout] test event_loop::tests::test_hatless_mode_builds_ralph_prompt ... ok
[INFO] [stdout] test event_loop::tests::test_hat_max_activations_emits_exhausted_event ... ok
[INFO] [stdout] test event_loop::tests::test_malformed_events_increment_counter ... ok
[INFO] [stdout] test event_loop::tests::test_mutation_warning_reason_variants ... ok
[INFO] [stdout] test event_loop::tests::test_initialize_stores_objective_in_ralph ... ok
[INFO] [stdout] test event_loop::tests::test_inject_robot_skill_when_enabled ... ok
[INFO] [stdout] test event_loop::tests::test_inject_fallback_event_defaults_to_ralph ... ok
[INFO] [stdout] test event_loop::tests::test_record_hat_activations_increments_counts ... ok
[INFO] [stdout] test event_loop::tests::test_non_persistent_mode_terminates_on_loop_complete ... ok
[INFO] [stdout] test event_loop::tests::test_planner_auto_cancellation_after_three_blocks ... ok
[INFO] [stdout] test event_loop::tests::test_paths_fallback_to_config_when_no_context ... ok
[INFO] [stdout] test event_loop::tests::test_persistent_mode_still_respects_hard_limits ... ok
[INFO] [stdout] test event_loop::tests::test_paths_use_loop_context_when_present ... ok
[INFO] [stdout] test event_loop::tests::test_persistent_mode_suppresses_loop_complete ... ok
[INFO] [stdout] test event_loop::tests::test_review_done_backpressure_accepts_verified ... ok
[INFO] [stdout] test event_loop::tests::test_review_done_backpressure_rejects_failed_checks ... ok
[INFO] [stdout] test event_loop::tests::test_termination_status_texts ... ok
[INFO] [stdout] test event_loop::tests::test_scratchpad_injection_no_file ... ok
[INFO] [stdout] test event_loop::tests::test_review_done_backpressure_rejects_unverified ... ok
[INFO] [stdout] test event_loop::tests::test_termination_reason_mappings ... ok
[INFO] [stdout] test event_loop::tests::test_task_cancellation_with_tilde_marker ... ok
[INFO] [stdout] test event_loop::tests::test_validation_failure_termination_at_threshold ... ok
[INFO] [stdout] test event_loop::tests::test_termination_reason_exit_codes ... ok
[INFO] [stdout] test event_loop::tests::test_task_counts_and_open_task_list ... ok
[INFO] [stdout] test event_loop::tests::test_partial_completion_with_cancelled_tasks ... ok
[INFO] [stdout] test event_loop::tests::test_scratchpad_injection_empty_file ... ok
[INFO] [stdout] test event_loop::tests::test_termination_max_iterations ... ok
[INFO] [stdout] test event_loop::tests::test_scratchpad_injection_ordering ... ok
[INFO] [stdout] test event_loop::tests::test_termination_reason_strings_and_flags ... ok
[INFO] [stdout] test event_loop::tests::test_thrashing_counter_resets_on_non_blocked_event ... ok
[INFO] [stdout] test event_loop::tests::test_scratchpad_injection_with_content ... ok
[INFO] [stdout] test event_loop::tests::test_thrashing_counter_increments_on_blocked_events ... ok
[INFO] [stdout] test event_loop::tests::test_verify_passed_backpressure_accepts_quality_report ... ok
[INFO] [stdout] test event_loop::tests::test_stop_requested_termination_clears_signal ... ok
[INFO] [stdout] test event_parser::tests::test_contains_promise_detects_outside_events ... ok
[INFO] [stdout] test event_loop::tests::test_verify_passed_backpressure_rejects_failed_thresholds ... ok
[INFO] [stdout] test event_loop::tests::test_verify_passed_backpressure_rejects_missing_quality_report ... ok
[INFO] [stdout] test event_loop::tests::test_scratchpad_injection_tail_truncation ... ok
[INFO] [stdout] test event_parser::tests::test_contains_promise_mixed_content ... ok
[INFO] [stdout] test event_parser::tests::test_contains_promise_requires_last_line ... ok
[INFO] [stdout] test event_parser::tests::test_contains_promise_ignores_event_payloads ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_missing ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_all_pass ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_partial ... ok
[INFO] [stdout] test event_loop::tests::test_verify_tasks_complete_missing_and_pending ... ok
[INFO] [stdout] test event_loop::tests::test_verify_scratchpad_complete_variants ... ok
[INFO] [stdout] test event_parser::tests::test_extract_first_number_quality_line ... ok
[INFO] [stdout] test event_parser::tests::test_parse_quality_report_fails_thresholds ... ok
[INFO] [stdout] test event_parser::tests::test_no_events ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_specs_omitted_does_not_block ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_with_ansi_codes ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_with_mutants_pass ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_with_mutants_warn ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_with_performance_regression ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_with_specs_fail ... ok
[INFO] [stdout] test event_parser::tests::test_parse_quality_report_missing ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_with_specs_pass ... ok
[INFO] [stdout] test event_parser::tests::test_parse_event_with_target ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_some_fail ... ok
[INFO] [stdout] test event_parser::tests::test_parse_multiple_events ... ok
[INFO] [stdout] test event_parser::tests::test_parse_quality_report_passes_thresholds ... ok
[INFO] [stdout] test event_parser::tests::test_parse_review_evidence_all_pass ... ok
[INFO] [stdout] test event_parser::tests::test_parse_review_evidence_build_fail ... ok
[INFO] [stdout] test event_parser::tests::test_parse_review_evidence_partial ... ok
[INFO] [stdout] test event_parser::tests::test_parse_review_evidence_missing ... ok
[INFO] [stdout] test event_parser::tests::test_parse_review_evidence_with_ansi_codes ... ok
[INFO] [stdout] test event_parser::tests::test_parse_single_event ... ok
[INFO] [stdout] test event_parser::tests::test_parse_specs_evidence_only ... ok
[INFO] [stdout] test event_parser::tests::test_promise_in_event_tags ... ok
[INFO] [stdout] test event_parser::tests::test_parse_review_evidence_tests_fail ... ok
[INFO] [stdout] test event_parser::tests::test_parse_with_source ... ok
[INFO] [stdout] test event_parser::tests::test_quality_report_specs_omitted_passes ... ok
[INFO] [stdout] test event_parser::tests::test_quality_report_with_specs_pass ... ok
[INFO] [stdout] test event_parser::tests::test_quality_report_with_specs_fail ... ok
[INFO] [stdout] test event_parser::tests::test_strip_ansi_function ... ok
[INFO] [stdout] test event_reader::tests::test_missing_file ... ok
[INFO] [stdout] test event_parser::tests::test_strip_event_tags ... ok
[INFO] [stdout] test event_reader::tests::test_mixed_valid_invalid_handling ... ok
[INFO] [stdout] test event_reader::tests::test_captures_malformed_lines ... ok
[INFO] [stdout] test event_reader::tests::test_nested_object_payload ... ok
[INFO] [stdout] test event_reader::tests::test_tracks_position ... ok
[INFO] [stdout] test file_lock::tests::test_locked_file_read_nonexistent ... ok
[INFO] [stdout] test file_lock::tests::test_lock_file_path_no_extension ... ok
[INFO] [stdout] test file_lock::tests::test_multiple_shared_locks ... ok
[INFO] [stdout] test event_reader::tests::test_empty_file ... ok
[INFO] [stdout] test event_reader::tests::test_structured_payload_as_object ... ok
[INFO] [stdout] test file_lock::tests::test_shared_blocks_exclusive ... ok
[INFO] [stdout] test file_lock::tests::test_exclusive_blocks_shared ... ok
[INFO] [stdout] test file_lock::tests::test_shared_lock_acquired ... ok
[INFO] [stdout] test event_reader::tests::test_read_new_events ... ok
[INFO] [stdout] test file_lock::tests::test_lock_released_on_drop ... ok
[INFO] [stdout] test event_reader::tests::test_mixed_payload_formats ... ok
[INFO] [stdout] test file_lock::tests::test_exclusive_lock_acquired ... ok
[INFO] [stdout] test file_lock::tests::test_locked_file_read_write ... ok
[INFO] [stdout] test file_lock::tests::test_lock_file_path ... ok
[INFO] [stdout] test event_parser::tests::test_parse_backpressure_evidence_specs_comma_separated ... ok
[INFO] [stdout] test event_reader::tests::test_reset_position ... ok
[INFO] [stdout] test file_lock::tests::test_concurrent_writes_serialized ... ok
[INFO] [stdout] test file_lock::tests::test_blocking_lock_waits ... ok
[INFO] [stdout] test git_ops::tests::test_clean_stashes_empty ... ok
[INFO] [stdout] test git_ops::tests::test_get_commit_summary ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_no_changes ... ok
[INFO] [stdout] test git_ops::tests::test_get_current_branch_custom ... ok
[INFO] [stdout] test git_ops::tests::test_has_uncommitted_changes_modified ... ok
[INFO] [stdout] test git_ops::tests::test_get_current_branch ... ok
[INFO] [stdout] test git_ops::tests::test_has_uncommitted_changes_staged ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_only_gitignored_files ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_untracked_files ... ok
[INFO] [stdout] test handoff::tests::test_truncate_prompt_long ... ok
[INFO] [stdout] test handoff::tests::test_truncate_prompt_short ... ok
[INFO] [stdout] test git_ops::tests::test_has_uncommitted_changes_untracked ... ok
[INFO] [stdout] test handoff::tests::test_truncate_prompt_with_emoji_near_boundary ... ok
[INFO] [stdout] test handoff::tests::test_truncate_prompt_with_emoji ... ok
[INFO] [stdout] test git_ops::tests::test_has_uncommitted_changes_clean ... ok
[INFO] [stdout] test hat_registry::tests::test_custom_hats_from_config ... ok
[INFO] [stdout] test hat_registry::tests::test_empty_config_creates_empty_registry ... ok
[INFO] [stdout] test hat_registry::tests::test_find_by_trigger_returns_alphabetically_first_hat ... ok
[INFO] [stdout] test hat_registry::tests::test_empty_registry_has_no_subscribers ... ok
[INFO] [stdout] test hat_registry::tests::test_find_subscribers ... ok
[INFO] [stdout] test hat_registry::tests::test_get_for_topic ... ok
[INFO] [stdout] test hat_registry::tests::test_get_for_topic_returns_alphabetically_first_hat ... ok
[INFO] [stdout] test hat_registry::tests::test_has_subscriber ... ok
[INFO] [stdout] test hat_registry::tests::test_subscribers_returns_deterministic_order ... ok
[INFO] [stdout] test hatless_ralph::tests::test_constraint_lists_valid_events_when_coordinating ... ok
[INFO] [stdout] test hatless_ralph::tests::test_done_section_present_when_coordinating ... ok
[INFO] [stdout] test hatless_ralph::tests::test_done_section_suppressed_when_hat_active ... ok
[INFO] [stdout] test hatless_ralph::tests::test_done_section_without_objective ... ok
[INFO] [stdout] test hatless_ralph::tests::test_empty_context_no_pending_events_section ... ok
[INFO] [stdout] test hatless_ralph::tests::test_empty_instructions_not_rendered ... ok
[INFO] [stdout] test hatless_ralph::tests::test_event_publishing_guide_all_orphan_events ... ok
[INFO] [stdout] test hatless_ralph::tests::test_event_publishing_guide_excludes_self ... ok
[INFO] [stdout] test hatless_ralph::tests::test_event_publishing_guide_multiple_receivers ... ok
[INFO] [stdout] test hatless_ralph::tests::test_event_publishing_guide_no_publishes ... ok
[INFO] [stdout] test git_ops::tests::test_get_recent_files ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_returns_correct_sha ... ok
[INFO] [stdout] test hatless_ralph::tests::test_event_publishing_guide_receiver_without_description ... ok
[INFO] [stdout] test hatless_ralph::tests::test_fast_path_with_starting_event ... ok
[INFO] [stdout] test hatless_ralph::tests::test_event_publishing_guide_with_receivers ... ok
[INFO] [stdout] test hatless_ralph::tests::test_events_context_included_in_prompt ... ok
[INFO] [stdout] test hatless_ralph::tests::test_events_section_before_workflow ... ok
[INFO] [stdout] test hatless_ralph::tests::test_guidance_cleared_after_injection ... ok
[INFO] [stdout] test hatless_ralph::tests::test_guardrails_adapt_to_memories_mode ... ok
[INFO] [stdout] test hatless_ralph::tests::test_guardrails_present_without_memories ... ok
[INFO] [stdout] test handoff::tests::test_handoff_content_has_sections ... ok
[INFO] [stdout] test hatless_ralph::tests::test_hat_instructions_propagated_to_prompt ... ok
[INFO] [stdout] test hatless_ralph::tests::test_multi_hat_mode_workflow_with_memories_enabled ... ok
[INFO] [stdout] test hatless_ralph::tests::test_multiple_active_hats_all_included ... ok
[INFO] [stdout] test hatless_ralph::tests::test_multiple_guidance_squashing ... ok
[INFO] [stdout] test hatless_ralph::tests::test_guidance_appears_in_prompt_before_events ... ok
[INFO] [stdout] test hatless_ralph::tests::test_no_constraint_when_hat_is_active ... ok
[INFO] [stdout] test hatless_ralph::tests::test_multiple_hats_with_instructions ... ok
[INFO] [stdout] test hatless_ralph::tests::test_no_injection_when_no_guidance ... ok
[INFO] [stdout] test handoff::tests::test_handoff_with_no_tasks ... ok
[INFO] [stdout] test hatless_ralph::tests::test_no_active_hats_no_instructions ... ok
[INFO] [stdout] test hatless_ralph::tests::test_no_constraint_when_no_hats ... ok
[INFO] [stdout] test hatless_ralph::tests::test_no_starting_event_instruction_when_none ... ok
[INFO] [stdout] test hatless_ralph::tests::test_no_tasks_section_in_core_prompt ... ok
[INFO] [stdout] test hatless_ralph::tests::test_objective_in_done_section_when_coordinating ... ok
[INFO] [stdout] test hatless_ralph::tests::test_objective_persists_across_iterations ... ok
[INFO] [stdout] test hatless_ralph::tests::test_objective_reinforced_in_done_section ... ok
[INFO] [stdout] test hatless_ralph::tests::test_objective_section_present_with_set_objective ... ok
[INFO] [stdout] test hatless_ralph::tests::test_objective_set_correctly ... ok
[INFO] [stdout] test hatless_ralph::tests::test_only_active_hat_instructions_included ... ok
[INFO] [stdout] test hatless_ralph::tests::test_prompt_without_hats ... ok
[INFO] [stdout] test hatless_ralph::tests::test_scratchpad_always_included ... ok
[INFO] [stdout] test hatless_ralph::tests::test_prompt_with_hats ... ok
[INFO] [stdout] test hatless_ralph::tests::test_scratchpad_included_with_memories_enabled ... ok
[INFO] [stdout] test hatless_ralph::tests::test_scratchpad_mode_still_has_commit_step ... ok
[INFO] [stdout] test hatless_ralph::tests::test_scratchpad_format_documented ... ok
[INFO] [stdout] test hatless_ralph::tests::test_should_handle_always_true ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_staged_changes ... ok
[INFO] [stdout] test hatless_ralph::tests::test_single_guidance_injection ... ok
[INFO] [stdout] test hatless_ralph::tests::test_starting_event_in_prompt ... ok
[INFO] [stdout] test git_ops::tests::test_is_working_tree_clean ... ok
[INFO] [stdout] test hatless_ralph::tests::test_whitespace_only_context_no_pending_events_section ... ok
[INFO] [stdout] test hatless_ralph::tests::test_workflow_verify_and_commit_step ... ok
[INFO] [stdout] test hatless_ralph::tests::test_task_closure_verification_in_done_section ... ok
[INFO] [stdout] test hatless_ralph::tests::test_workflow_references_both_scratchpad_and_tasks_with_memories ... ok
[INFO] [stdout] test instructions::tests::test_custom_hat_with_rfc2119_patterns ... ok
[INFO] [stdout] test hatless_ralph::tests::test_topology_table_only_when_ralph_coordinating ... ok
[INFO] [stdout] test instructions::tests::test_must_publish_injected_for_explicit_instructions ... ok
[INFO] [stdout] test instructions::tests::test_must_publish_not_injected_when_no_publishes ... ok
[INFO] [stdout] test git_ops::tests::test_prune_remote_refs_no_origin ... ok
[INFO] [stdout] test handoff::tests::test_handoff_writer_creates_file ... ok
[INFO] [stdout] test hatless_ralph::tests::test_rfc2119_patterns_present ... ok
[INFO] [stdout] test instructions::tests::test_custom_guardrails_injected ... ok
[INFO] [stdout] test hatless_ralph::tests::test_no_objective_when_not_set ... ok
[INFO] [stdout] test hatless_ralph::tests::test_objective_appears_before_pending_events ... ok
[INFO] [stdout] test hatless_ralph::tests::test_objective_with_events_context ... ok
[INFO] [stdout] test instructions::tests::test_derived_behaviors_when_no_explicit_instructions ... ok
[INFO] [stdout] test loop_completion::tests::test_default_handler_has_auto_merge_enabled ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_mixed_changes ... ok
[INFO] [stdout] test handoff::tests::test_handoff_with_tasks ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_unstaged_modifications ... ok
[INFO] [stdout] test loop_context::tests::test_code_tasks_symlink_worktree ... ok
[INFO] [stdout] test loop_context::tests::test_context_path ... ok
[INFO] [stdout] test loop_context::tests::test_current_events_marker ... ok
[INFO] [stdout] test loop_context::tests::test_ensure_directories ... ok
[INFO] [stdout] test loop_context::tests::test_generate_context_file_primary_noop ... ok
[INFO] [stdout] test loop_context::tests::test_generate_context_file_worktree ... ok
[INFO] [stdout] test loop_context::tests::test_memory_symlink_primary_noop ... ok
[INFO] [stdout] test git_ops::tests::test_auto_commit_working_tree_clean_after ... ok
[INFO] [stdout] test loop_context::tests::test_planning_session_directory_creation ... ok
[INFO] [stdout] test loop_context::tests::test_planning_session_paths ... ok
[INFO] [stdout] test loop_context::tests::test_memory_symlink_worktree ... ok
[INFO] [stdout] test loop_context::tests::test_planning_sessions_paths ... ok
[INFO] [stdout] test loop_context::tests::test_primary_path_resolution ... ok
[INFO] [stdout] test loop_context::tests::test_primary_context ... ok
[INFO] [stdout] test loop_context::tests::test_setup_worktree_symlinks ... ok
[INFO] [stdout] test loop_context::tests::test_worktree_context ... ok
[INFO] [stdout] test loop_context::tests::test_worktree_path_resolution ... ok
[INFO] [stdout] test loop_history::tests::test_append_and_read ... ok
[INFO] [stdout] test loop_history::tests::test_empty_file ... ok
[INFO] [stdout] test loop_history::tests::test_get_prompt ... ok
[INFO] [stdout] test loop_history::tests::test_is_completed ... ok
[INFO] [stdout] test loop_history::tests::test_is_completed_terminated ... ok
[INFO] [stdout] test loop_history::tests::test_last_iteration ... ok
[INFO] [stdout] test loop_history::tests::test_merge_events ... ok
[INFO] [stdout] test loop_history::tests::test_serialization_format ... ok
[INFO] [stdout] test loop_history::tests::test_summary ... ok
[INFO] [stdout] test git_ops::tests::test_clean_stashes_with_stash ... ok
[INFO] [stdout] test loop_context::tests::test_specs_symlink_worktree ... ok
[INFO] [stdout] test loop_lock::tests::test_creates_ralph_directory ... ok
[INFO] [stdout] test loop_lock::tests::test_lock_metadata_serialization ... ok
[INFO] [stdout] test loop_lock::tests::test_acquire_lock_success ... ok
[INFO] [stdout] test loop_lock::tests::test_is_locked ... ok
[INFO] [stdout] test loop_lock::tests::test_read_existing_no_file ... ok
[INFO] [stdout] test loop_lock::tests::test_read_existing_with_lock ... ok
[INFO] [stdout] test loop_name::tests::test_default_config ... ok
[INFO] [stdout] test loop_name::tests::test_extract_keywords_filters_stop_words ... ok
[INFO] [stdout] test loop_name::tests::test_extract_keywords_limits_to_three ... ok
[INFO] [stdout] test loop_name::tests::test_extract_keywords_prioritizes_verbs ... ok
[INFO] [stdout] test loop_name::tests::test_generate_empty_prompt ... ok
[INFO] [stdout] test loop_name::tests::test_generate_memorable ... ok
[INFO] [stdout] test loop_name::tests::test_generate_memorable_unique ... ok
[INFO] [stdout] test loop_name::tests::test_generate_only_stop_words ... ok
[INFO] [stdout] test loop_name::tests::test_generate_produces_valid_name ... ok
[INFO] [stdout] test loop_name::tests::test_generate_respects_max_length ... ok
[INFO] [stdout] test loop_name::tests::test_generate_unique_avoids_collisions ... ok
[INFO] [stdout] test loop_name::tests::test_generate_unique_falls_back_to_timestamp ... ok
[INFO] [stdout] test loop_name::tests::test_sanitize_for_git ... ok
[INFO] [stdout] test loop_name::tests::test_timestamp_format ... ok
[INFO] [stdout] test loop_name::tests::test_generate_memorable_unique_falls_back_to_timestamp ... ok
[INFO] [stdout] test loop_registry::tests::test_entry_serialization ... ok
[INFO] [stdout] test loop_registry::tests::test_entry_serialization_no_worktree ... ok
[INFO] [stdout] test loop_registry::tests::test_loop_entry_creation ... ok
[INFO] [stdout] test loop_registry::tests::test_loop_entry_id_format ... ok
[INFO] [stdout] test loop_registry::tests::test_loop_entry_is_alive ... ok
[INFO] [stdout] test loop_registry::tests::test_loop_entry_with_id ... ok
[INFO] [stdout] test loop_registry::tests::test_loop_entry_with_worktree ... ok
[INFO] [stdout] test loop_lock::tests::test_lock_released_on_drop ... ok
[INFO] [stdout] test loop_completion::tests::test_worktree_loop_no_auto_merge_manual ... ok
[INFO] [stdout] test landing::tests::test_landing_generates_handoff_content ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_creates_file ... ok
[INFO] [stdout] test landing::tests::test_worktree_landing ... ok
[INFO] [stdout] test landing::tests::test_landing_config_disables_features ... ok
[INFO] [stdout] test loop_registry::tests::test_deregister_current_process ... ok
[INFO] [stdout] test loop_completion::tests::test_worktree_loop_auto_merge_enqueues ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_get_nonexistent ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_deregister ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_deregister_nonexistent ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_get ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_different_pids_coexist ... ok
[INFO] [stdout] test landing::tests::test_landing_with_uncommitted_changes ... ok
[INFO] [stdout] test loop_completion::tests::test_worktree_loop_no_auto_commit_when_clean ... ok
[INFO] [stdout] test memory::tests::test_memory_has_any_tag ... ok
[INFO] [stdout] test memory::tests::test_memory_id_format ... ok
[INFO] [stdout] test memory::tests::test_memory_matches_query ... ok
[INFO] [stdout] test memory::tests::test_memory_type_default ... ok
[INFO] [stdout] test memory::tests::test_memory_type_all ... ok
[INFO] [stdout] test memory::tests::test_memory_type_emojis ... ok
[INFO] [stdout] test memory::tests::test_memory_type_display ... ok
[INFO] [stdout] test memory::tests::test_memory_serde_roundtrip ... ok
[INFO] [stdout] test memory::tests::test_memory_type_from_str ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_empty_file ... ok
[INFO] [stdout] test memory::tests::test_memory_type_serde ... ok
[INFO] [stdout] test memory::tests::test_memory_new ... ok
[INFO] [stdout] test memory::tests::test_memory_type_from_section ... ok
[INFO] [stdout] test memory::tests::test_memory_type_section_names ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_register_and_list ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_same_pid_replaces ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_replaces_same_pid ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_multiline_content ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_single_memory ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_memory_without_content_is_skipped ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_missing_metadata_uses_defaults ... ok
[INFO] [stdout] test loop_registry::tests::test_registry_persistence ... ok
[INFO] [stdout] test memory_store::tests::test_append_creates_file_if_missing ... ok
[INFO] [stdout] test landing::tests::test_landing_clean_repo ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_multiple_sections ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_empty_tags ... ok
[INFO] [stdout] test memory_parser::tests::test_parse_ignores_malformed_blocks ... ok
[INFO] [stdout] test memory_store::tests::test_delete_returns_false_for_nonexistent ... ok
[INFO] [stdout] test memory_store::tests::test_delete_removes_memory ... ok
[INFO] [stdout] test memory_store::tests::test_append_to_existing_section ... ok
[INFO] [stdout] test memory_store::tests::test_format_memories_as_markdown_empty ... ok
[INFO] [stdout] test memory_store::tests::test_append_to_different_sections ... ok
[INFO] [stdout] test memory_store::tests::test_format_memories_as_markdown_single ... ok
[INFO] [stdout] test memory_store::tests::test_filter_by_tags ... ok
[INFO] [stdout] test memory_store::tests::test_get_returns_none_for_nonexistent ... ok
[INFO] [stdout] test memory_store::tests::test_load_empty_file ... ok
[INFO] [stdout] test memory_store::tests::test_init_creates_file ... ok
[INFO] [stdout] test memory_store::tests::test_init_fails_if_exists_without_force ... ok
[INFO] [stdout] test memory_store::tests::test_search_matches_tags ... ok
[INFO] [stdout] test memory_store::tests::test_truncate_to_budget_zero_means_unlimited ... ok
[INFO] [stdout] test memory_store::tests::test_truncate_to_budget_adds_notice ... ok
[INFO] [stdout] test memory_store::tests::test_truncate_to_budget_no_truncation_needed ... ok
[INFO] [stdout] test merge_queue::tests::test_empty_queue ... ok
[INFO] [stdout] test memory_store::tests::test_multiline_content_roundtrip ... ok
[INFO] [stdout] test merge_queue::tests::test_event_serialization ... ok
[INFO] [stdout] test memory_store::tests::test_search_matches_content ... ok
[INFO] [stdout] test memory_store::tests::test_get_finds_memory ... ok
[INFO] [stdout] test merge_queue::tests::test_enqueue ... ok
[INFO] [stdout] test memory_store::tests::test_filter_by_type ... ok
[INFO] [stdout] test merge_queue::tests::test_discard_from_queued ... ok
[INFO] [stdout] test merge_queue::tests::test_not_found ... ok
[INFO] [stdout] test merge_queue::tests::test_creates_ralph_directory ... ok
[INFO] [stdout] test merge_queue::tests::test_merge_needs_review ... ok
[INFO] [stdout] test merge_queue::tests::test_invalid_transition_merged_to_needs_review ... ok
[INFO] [stdout] test planning_session::tests::test_append_prompt_and_response ... ok
[INFO] [stdout] test merge_queue::tests::test_invalid_transition_queued_to_merged ... ok
[INFO] [stdout] test landing::tests::test_landing_with_open_tasks ... ok
[INFO] [stdout] test planning_session::tests::test_create_new_session ... ok
[INFO] [stdout] test planning_session::tests::test_artifacts_directory_created ... ok
[INFO] [stdout] test planning_session::tests::test_load_existing_session ... ok
[INFO] [stdout] test planning_session::tests::test_find_response ... ok
[INFO] [stdout] test planning_session::tests::test_set_status ... ok
[INFO] [stdout] test preflight::tests::config_check_emits_warning_details ... ok
[INFO] [stdout] test planning_session::tests::test_generate_session_id ... ok
[INFO] [stdout] test preflight::tests::extract_all_criteria_collects_from_directory ... ok
[INFO] [stdout] test planning_session::tests::test_load_nonexistent_session ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_bold_format ... ok
[INFO] [stdout] test merge_queue::tests::test_retry_from_needs_review ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_given_then_without_when ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_incomplete_given_without_then_is_dropped ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_list_format ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_from_file_skips_implemented ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_multiple_triples ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_from_file_returns_criteria ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_plain_text_format ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_no_criteria ... ok
[INFO] [stdout] test preflight::tests::git_check_skips_outside_repo ... ok
[INFO] [stdout] test preflight::tests::has_acceptance_criteria_detects_bold_format ... ok
[INFO] [stdout] test preflight::tests::has_acceptance_criteria_detects_bold_list_format ... ok
[INFO] [stdout] test preflight::tests::has_acceptance_criteria_rejects_content_without_criteria ... ok
[INFO] [stdout] test preflight::tests::has_acceptance_criteria_requires_given_and_then ... ok
[INFO] [stdout] test preflight::tests::match_clause_extracts_text ... ok
[INFO] [stdout] test preflight::tests::report_counts_statuses ... ok
[INFO] [stdout] test preflight::tests::has_acceptance_criteria_detects_list_format ... ok
[INFO] [stdout] test preflight::tests::specs_check_finds_specs_in_subdirectories ... ok
[INFO] [stdout] test preflight::tests::specs_check_passes_with_complete_spec ... ok
[INFO] [stdout] test preflight::tests::paths_check_creates_missing_dirs ... ok
[INFO] [stdout] test preflight::tests::specs_check_skips_implemented_specs ... ok
[INFO] [stdout] test preflight::tests::specs_check_skips_when_no_directory ... ok
[INFO] [stdout] test merge_queue::tests::test_next_pending_fifo ... ok
[INFO] [stdout] test preflight::tests::specs_check_skips_when_empty_directory ... ok
[INFO] [stdout] test preflight::tests::telegram_check_skips_when_disabled ... ok
[INFO] [stdout] test preflight::tests::tools_check_skips_outside_repo ... ok
[INFO] [stdout] test preflight::tests::specs_check_warns_on_missing_acceptance_criteria ... ok
[INFO] [stdout] test skill::tests::test_content_body_strips_frontmatter_delimiters ... ok
[INFO] [stdout] test skill::tests::test_empty_frontmatter ... ok
[INFO] [stdout] test skill::tests::test_parse_invalid_yaml_frontmatter ... ok
[INFO] [stdout] test skill::tests::test_parse_no_closing_delimiter ... ok
[INFO] [stdout] test skill::tests::test_parse_no_frontmatter ... ok
[INFO] [stdout] test skill::tests::test_parse_valid_frontmatter_all_fields ... ok
[INFO] [stdout] test skill::tests::test_parse_frontmatter_name_and_description_only ... ok
[INFO] [stdout] test skill_registry::tests::test_auto_inject_skills_only_returns_auto_inject ... ok
[INFO] [stdout] test skill_registry::tests::test_build_index_empty_registry ... ok
[INFO] [stdout] test skill_registry::tests::test_build_index_generates_table ... ok
[INFO] [stdout] test skill_registry::tests::test_build_index_hat_filtering ... ok
[INFO] [stdout] test skill_registry::tests::test_from_config_full_pipeline ... ok
[INFO] [stdout] test preflight::tests::tools_check_warns_on_missing_optional_tools ... ok
[INFO] [stdout] test skill_registry::tests::test_get_returns_none_for_unknown ... ok
[INFO] [stdout] test skill_registry::tests::test_backend_filtering ... ok
[INFO] [stdout] test skill_registry::tests::test_hat_filtering ... ok
[INFO] [stdout] test preflight::tests::tools_check_reports_missing_tools ... ok
[INFO] [stdout] test skill_registry::tests::test_from_config_resolves_parent_skills_dir_for_relative_path ... ok
[INFO] [stdout] test preflight::tests::extract_criteria_empty_content ... ok
[INFO] [stdout] test skill_registry::tests::test_load_skill_unknown ... ok
[INFO] [stdout] test skill_registry::tests::test_load_skill_xml_wrapping ... ok
[INFO] [stdout] test skill_registry::tests::test_override_adds_hat_restriction ... ok
[INFO] [stdout] test skill_registry::tests::test_override_disables_skill ... ok
[INFO] [stdout] test skill_registry::tests::test_register_builtin_skill ... ok
[INFO] [stdout] test skill_registry::tests::test_register_builtins ... ok
[INFO] [stdout] test skill_registry::tests::test_scan_directory_discovers_md_files ... ok
[INFO] [stdout] test skill_registry::tests::test_skill_name_from_frontmatter_takes_precedence ... ok
[INFO] [stdout] test skill_registry::tests::test_override_sets_auto_inject ... ok
[INFO] [stdout] test skill_registry::tests::test_user_skill_overrides_builtin ... ok
[INFO] [stdout] test skill_registry::tests::test_scan_directory_discovers_skill_md_subdirs ... ok
[INFO] [stdout] test summary_writer::tests::test_status_text ... ok
[INFO] [stdout] test summary_writer::tests::test_generate_content_basic ... ok
[INFO] [stdout] test summary_writer::tests::test_extract_tasks ... ok
[INFO] [stdout] test task::tests::test_is_not_ready_when_not_open ... ok
[INFO] [stdout] test summary_writer::tests::test_write_with_landing ... ok
[INFO] [stdout] test task::tests::test_is_ready_with_closed_blocker ... ok
[INFO] [stdout] test task::tests::test_is_ready_with_open_blocker ... ok
[INFO] [stdout] test task::tests::test_is_terminal ... ok
[INFO] [stdout] test task::tests::test_priority_clamping ... ok
[INFO] [stdout] test task::tests::test_task_creation ... ok
[INFO] [stdout] test task::tests::test_is_ready_open_no_blockers ... ok
[INFO] [stdout] test task_definition::tests::test_filter_by_complexity ... ok
[INFO] [stdout] test task_definition::tests::test_filter_by_tag ... ok
[INFO] [stdout] test task_definition::tests::test_iteration_delta ... ok
[INFO] [stdout] test task_definition::tests::test_iteration_delta_no_expected ... ok
[INFO] [stdout] test task_definition::tests::test_setup_has_setup ... ok
[INFO] [stdout] test task_definition::tests::test_task_definition_builder ... ok
[INFO] [stdout] test task_definition::tests::test_task_definition_defaults ... ok
[INFO] [stdout] test task_definition::tests::test_task_suite_parse ... ok
[INFO] [stdout] test task_definition::tests::test_task_suite_validation_duplicates ... ok
[INFO] [stdout] test task_definition::tests::test_task_suite_validation_empty ... ok
[INFO] [stdout] test summary_writer::tests::test_format_duration ... ok
[INFO] [stdout] test summary_writer::tests::test_write_creates_directory ... ok
[INFO] [stdout] test merge_queue::tests::test_persistence ... ok
[INFO] [stdout] test task_definition::tests::test_task_validation_empty_prompt ... ok
[INFO] [stdout] test planning_session::tests::test_increment_iterations ... ok
[INFO] [stdout] test task_definition::tests::test_task_validation_empty_verification ... ok
[INFO] [stdout] test loop_completion::tests::test_primary_loop_with_landing ... ok
[INFO] [stdout] test memory_store::tests::test_init_with_force_overwrites ... ok
[INFO] [stdout] test merge_queue::tests::test_full_merge_lifecycle ... ok
[INFO] [stdout] test merge_queue::tests::test_discard_from_needs_review ... ok
[INFO] [stdout] test task_definition::tests::test_task_validation_invalid_complexity ... ok
[INFO] [stdout] test task_definition::tests::test_task_validation_valid ... ok
[INFO] [stdout] test task_definition::tests::test_verification_expect_failure ... ok
[INFO] [stdout] test task_definition::tests::test_verification_new ... ok
[INFO] [stdout] test memory_store::tests::test_format_memories_as_markdown_grouped_by_type ... ok
[INFO] [stdout] test task_definition::tests::test_task_validation_invalid_name ... ok
[INFO] [stdout] test task_store::tests::test_add_and_save ... ok
[INFO] [stdout] test task::tests::test_task_id_format ... ok
[INFO] [stdout] test skill_registry::tests::test_missing_directory_warns_but_no_error ... ok
[INFO] [stdout] test task_store::tests::test_get_task ... ok
[INFO] [stdout] test task_store::tests::test_has_open_tasks ... ok
[INFO] [stdout] test task_store::tests::test_has_pending_tasks_excludes_failed ... ok
[INFO] [stdout] test task_store::tests::test_load_nonexistent_file ... ok
[INFO] [stdout] test task_store::tests::test_close_task ... ok
[INFO] [stdout] test task_store::tests::test_open_tasks ... ok
[INFO] [stdout] test task_store::tests::test_with_exclusive_lock ... ok
[INFO] [stdout] test testing::scenario::tests::test_mock_backend_simulates_hat_execution ... ok
[INFO] [stdout] test merge_queue::tests::test_list_by_state ... ok
[INFO] [stdout] test task_store::tests::test_has_pending_tasks_failed_is_terminal ... ok
[INFO] [stdout] test task_store::tests::test_ready_tasks ... ok
[INFO] [stdout] test testing::mock_backend::tests::test_mock_backend_returns_scripted_responses ... ok
[INFO] [stdout] test testing::mock_backend::tests::test_mock_backend_tracks_executions ... ok
[INFO] [stdout] test task_store::tests::test_load_skips_malformed_lines ... ok
[INFO] [stdout] test text::tests::test_short_string_unchanged ... ok
[INFO] [stdout] test text::tests::test_utf8_boundaries_emoji ... ok
[INFO] [stdout] test testing::scenario::tests::test_scenario_creation ... ok
[INFO] [stdout] test testing::scenario::tests::test_scenario_runner_executes ... ok
[INFO] [stdout] test text::tests::test_floor_char_boundary_ascii ... ok
[INFO] [stdout] test text::tests::test_floor_char_boundary_emoji ... ok
[INFO] [stdout] test text::tests::test_single_char_truncation ... ok
[INFO] [stdout] test text::tests::test_utf8_boundaries_arrows ... ok
[INFO] [stdout] test text::tests::test_utf8_boundaries_mixed ... ok
[INFO] [stdout] test task_store::tests::test_concurrent_writes_with_lock ... ok
[INFO] [stdout] test utils::tests::format_elapsed_seconds_only ... ok
[INFO] [stdout] test text::tests::test_utf8_complex_emoji ... ok
[INFO] [stdout] test utils::tests::format_elapsed_zero ... ok
[INFO] [stdout] test text::tests::test_zero_max_chars ... ok
[INFO] [stdout] test utils::tests::format_elapsed_ignores_subsecond ... ok
[INFO] [stdout] test utils::tests::format_elapsed_large_value ... ok
[INFO] [stdout] test utils::tests::format_elapsed_mixed ... ok
[INFO] [stdout] test utils::tests::format_elapsed_one_minute ... ok
[INFO] [stdout] test utils::tests::format_elapsed_pads_single_digits ... ok
[INFO] [stdout] test workspace::tests::test_cleanup_policy_from_str ... ok
[INFO] [stdout] test landing::tests::test_landing_with_stashes ... ok
[INFO] [stdout] test workspace::tests::test_copy_dir_recursive ... ok
[INFO] [stdout] test workspace::tests::test_extract_task_name ... ok
[INFO] [stdout] test workspace::tests::test_extract_timestamp ... ok
[INFO] [stdout] test text::tests::test_floor_char_boundary_empty ... ok
[INFO] [stdout] test text::tests::test_floor_char_boundary_checkmark ... ok
[INFO] [stdout] test workspace::tests::test_verification_result_summary ... ok
[INFO] [stdout] test text::tests::test_long_string_truncated ... ok
[INFO] [stdout] test task_store::tests::test_reload ... ok
[INFO] [stdout] test workspace::tests::test_workspace_cleanup ... ok
[INFO] [stdout] test workspace::tests::test_run_verification_custom_exit_code ... ok
[INFO] [stdout] test workspace::tests::test_run_verification_success ... ok
[INFO] [stdout] test worktree::tests::test_ensure_gitignore_already_present ... ok
[INFO] [stdout] test worktree::tests::test_ensure_gitignore_existing_file ... ok
[INFO] [stdout] test worktree::tests::test_ensure_gitignore_new_file ... ok
[INFO] [stdout] test worktree::tests::test_ensure_gitignore_without_trailing_slash ... ok
[INFO] [stdout] test workspace::tests::test_workspace_manager_list_workspaces ... ok
[INFO] [stdout] test workspace::tests::test_run_verification_captures_output ... ok
[INFO] [stdout] test worktree::tests::test_get_unstaged_modified_files ... ok
[INFO] [stdout] test workspace::tests::test_workspace_create ... ok
[INFO] [stdout] test worktree::tests::test_not_a_repo ... ok
[INFO] [stdout] test worktree::tests::test_parse_worktree_list ... ok
[INFO] [stdout] test workspace::tests::test_run_verification_failure ... ok
[INFO] [stdout] test workspace::tests::test_workspace_setup_missing_prompt ... ok
[INFO] [stdout] test workspace::tests::test_run_verification_empty_command ... ok
[INFO] [stdout] test worktree::tests::test_create_worktree_already_exists ... ok
[INFO] [stdout] test worktree::tests::test_get_untracked_files ... ok
[INFO] [stdout] test workspace::tests::test_workspace_manager_rotate ... ok
[INFO] [stdout] test workspace::tests::test_workspace_setup_with_prompt ... ok
[INFO] [stdout] test workspace::tests::test_workspace_manager_apply_cleanup_always ... ok
[INFO] [stdout] test workspace::tests::test_workspace_manager_apply_cleanup_on_success ... ok
[INFO] [stdout] test worktree::tests::test_worktree_config_default ... ok
[INFO] [stdout] test worktree::tests::test_worktree_config_path ... ok
[INFO] [stdout] test worktree::tests::test_create_and_remove_worktree ... ok
[INFO] [stdout] test worktree::tests::test_sync_handles_binary_files ... ok
[INFO] [stdout] test worktree::tests::test_list_worktrees ... ok
[INFO] [stdout] test workspace::tests::test_workspace_setup_with_files ... ok
[INFO] [stdout] test worktree::tests::test_sync_stats_returned ... ok
[INFO] [stdout] test worktree::tests::test_sync_unstaged_changes_to_worktree ... ok
[INFO] [stdout] test worktree::tests::test_sync_handles_nested_directories ... ok
[INFO] [stdout] test worktree::tests::test_sync_excludes_worktrees_directory ... ok
[INFO] [stdout] test loop_completion::tests::test_worktree_loop_auto_commits_uncommitted_changes ... ok
[INFO] [stdout] test worktree::tests::test_remove_nonexistent_worktree ... ok
[INFO] [stdout] test worktree::tests::test_sync_untracked_files_to_worktree ... ok
[INFO] [stdout] test worktree::tests::test_sync_preserves_symlinks ... ok
[INFO] [stdout] test worktree::tests::test_worktree_exists ... ok
[INFO] [stdout] test worktree::tests::test_list_ralph_worktrees ... ok
[INFO] [stdout] test worktree::tests::test_sync_respects_gitignore ... ok
[INFO] [stdout] test hat_registry::tests::bench_get_for_topic_baseline ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 687 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.34s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/diagnostics_e2e.rs (/opt/rustwide/target/debug/deps/diagnostics_e2e-0987886f46a56528)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test test_diagnostics_disabled_when_env_not_set ... ok
[INFO] [stdout] test test_diagnostics_creates_log_files ... ok
[INFO] [stdout] test test_diagnostics_files_contain_valid_jsonl ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/event_loop_ralph.rs (/opt/rustwide/target/debug/deps/event_loop_ralph-cf08997879d2d947)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test test_multihat_mode_has_workflow_section ... ok
[INFO] [stdout] test test_ralph_completion_only_from_ralph ... ok
[INFO] [stdout] test test_ralph_prompt_solo_mode_structure ... ok
[INFO] [stdout] test test_scratchpad_mode_no_task_verification ... ok
[INFO] [stdout] test test_orphaned_event_falls_to_ralph ... ok
[INFO] [stdout] test test_solo_mode_memories_task_verification_requirements ... ok
[INFO] [stdout] test test_ralph_prompt_includes_ghuntley_style ... ok
[INFO] [stdout] test test_ralph_prompt_multi_hat_mode_structure ... ok
[INFO] [stdout] test test_reads_actual_events_jsonl_with_object_payloads ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/rpc_v1_contract_conformance.rs (/opt/rustwide/target/debug/deps/rpc_v1_contract_conformance-a4d38ae004e20191)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test rpc_v1_fixture_conformance ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- rpc_v1_fixture_conformance stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'rpc_v1_fixture_conformance' (1464) panicked at tests/rpc_v1_contract_conformance.rs:16:31:
[INFO] [stdout] failed reading /opt/crates/ralph-api/data/rpc-v1-schema.json: No such file or directory (os error 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x589a0bc11a4a - std[b80a194dd3c418bb]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x589a0bc11a4a - std[b80a194dd3c418bb]::backtrace_rs::backtrace::trace_unsynchronized::<std[b80a194dd3c418bb]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x589a0bc11a4a - std[b80a194dd3c418bb]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x589a0bc11a4a - <<std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[10b6fa85044e1869]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x589a0bc2863a - <core[10b6fa85044e1869]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x589a0bc2863a - core[10b6fa85044e1869]::fmt::write
[INFO] [stdout]    6:     0x589a0bc16f62 - std[b80a194dd3c418bb]::io::default_write_fmt::<alloc[dd269455e567d8e9]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x589a0bc16f62 - <alloc[dd269455e567d8e9]::vec::Vec<u8> as std[b80a194dd3c418bb]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x589a0bbeeb5f - <std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x589a0bbeeb5f - std[b80a194dd3c418bb]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x589a0bc09229 - std[b80a194dd3c418bb]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x589a0b1dc8bc - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x589a0b1dc8bc - test[826cbc6ef54ab466]::test_main_with_exit_callback::<test[826cbc6ef54ab466]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x589a0bc094a2 - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x589a0bc094a2 - std[b80a194dd3c418bb]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x589a0bbeec18 - std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x589a0bbe5d99 - std[b80a194dd3c418bb]::sys::backtrace::__rust_end_short_backtrace::<std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x589a0bbefbdd - __rustc[9698a3e60dd14283]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x589a0bc28fcc - core[10b6fa85044e1869]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x589a0b1c6264 - rpc_v1_contract_conformance::load_json::{{closure}}::h9a9e3ae415c0b2c8
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/rpc_v1_contract_conformance.rs:16:31
[INFO] [stdout]   20:     0x589a0b1c9fb9 - core::result::Result<T,E>::unwrap_or_else::h522099ecd92a7543
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/result.rs:1622:23
[INFO] [stdout]   21:     0x589a0b1c5f6f - rpc_v1_contract_conformance::load_json::h0a084dc9526e5ab5
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/rpc_v1_contract_conformance.rs:16:10
[INFO] [stdout]   22:     0x589a0b1c554b - rpc_v1_contract_conformance::rpc_v1_fixture_conformance::hbf9ba6b2bc7c4e99
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/rpc_v1_contract_conformance.rs:83:22
[INFO] [stdout]   23:     0x589a0b1c5ed7 - rpc_v1_contract_conformance::rpc_v1_fixture_conformance::{{closure}}::h913b3afd349eb442
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/rpc_v1_contract_conformance.rs:80:32
[INFO] [stdout]   24:     0x589a0b1c6a96 - core::ops::function::FnOnce::call_once::h688eaf7582d19ce4
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x589a0b1d099b - <fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x589a0b1d099b - test[826cbc6ef54ab466]::__rust_begin_short_backtrace::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x589a0b1dd38b - test[826cbc6ef54ab466]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x589a0b1dd38b - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x589a0b1dd38b - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x589a0b1dd38b - std[b80a194dd3c418bb]::panicking::catch_unwind::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x589a0b1dd38b - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x589a0b1dd38b - test[826cbc6ef54ab466]::run_test_in_process
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x589a0b1dd38b - test[826cbc6ef54ab466]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x589a0b1d8aa4 - test[826cbc6ef54ab466]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x589a0b1d8aa4 - std[b80a194dd3c418bb]::sys::backtrace::__rust_begin_short_backtrace::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x589a0b1dff92 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x589a0b1dff92 - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x589a0b1dff92 - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x589a0b1dff92 - std[b80a194dd3c418bb]::panicking::catch_unwind::<(), core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x589a0b1dff92 - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x589a0b1dff92 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x589a0b1dff92 - <std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1} as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x589a0bc10fbf - <alloc[dd269455e567d8e9]::boxed::Box<dyn core[10b6fa85044e1869]::ops::function::FnOnce<(), Output = ()> + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   44:     0x589a0bc10fbf - <std[b80a194dd3c418bb]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   45:     0x747f56726aa4 - <unknown>
[INFO] [stdout]   46:     0x747f567b3a64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     rpc_v1_fixture_conformance
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test rpc_v1_contract_conformance`
[INFO] running `Command { std: "docker" "inspect" "819a95d29f7ffc4eff6a3aa0d3ee3f91eeb97b6d906d97e7b1fac5bd3a49b6b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "819a95d29f7ffc4eff6a3aa0d3ee3f91eeb97b6d906d97e7b1fac5bd3a49b6b8", kill_on_drop: false }`
[INFO] [stdout] 819a95d29f7ffc4eff6a3aa0d3ee3f91eeb97b6d906d97e7b1fac5bd3a49b6b8
