[INFO] fetching crate looop 1.1.0...
[INFO] testing looop-1.1.0 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-3
[INFO] extracting crate looop 1.1.0 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate looop 1.1.0
[INFO] finished tweaking crates.io crate looop 1.1.0
[INFO] tweaked toml for crates.io crate looop 1.1.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate looop 1.1.0 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 looop 1.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded lru v0.18.0
[INFO] [stderr]   Downloaded line-clipping v0.3.7
[INFO] [stderr]   Downloaded bytes v1.12.0
[INFO] [stderr]   Downloaded instability v0.3.12
[INFO] [stderr]   Downloaded ratatui-termwiz v0.1.2
[INFO] [stderr]   Downloaded ratatui-termina v0.1.0
[INFO] [stderr]   Downloaded ratatui-macros v0.7.2
[INFO] [stderr]   Downloaded uuid v1.23.3
[INFO] [stderr]   Downloaded termina v0.3.3
[INFO] [stderr]   Downloaded strip-ansi-escapes v0.2.1
[INFO] [stderr]   Downloaded shared_library v0.1.9
[INFO] [stderr]   Downloaded directories v5.0.1
[INFO] [stderr]   Downloaded time v0.3.51
[INFO] [stderr]   Downloaded portable-pty v0.9.0
[INFO] [stderr]   Downloaded libredox v0.1.17
[INFO] [stderr]   Downloaded serial2 v0.2.37
[INFO] [stderr]   Downloaded vte v0.14.1
[INFO] [stderr]   Downloaded ansi-to-tui v8.0.1
[INFO] [stderr]   Downloaded nix v0.28.0
[INFO] [stderr]   Downloaded babysit v0.13.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c
[INFO] running `Command { std: "docker" "start" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c", 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" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c" "/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" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c", 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" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling time-core v0.1.9
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling lru v0.18.0
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling vte v0.15.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling vte v0.14.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling bytes v1.12.0
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling vt100 v0.16.2
[INFO] [stderr]    Compiling strip-ansi-escapes v0.2.1
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling simdutf8 v0.1.5
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling serial2 v0.2.37
[INFO] [stderr]    Compiling time v0.3.51
[INFO] [stderr]    Compiling directories v5.0.1
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling regex v1.12.4
[INFO] [stderr]    Compiling filedescriptor v0.8.3
[INFO] [stderr]    Compiling portable-pty v0.9.0
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling ratatui-core v0.1.2
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling ratatui-widgets v0.3.2
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.2
[INFO] [stderr]    Compiling ansi-to-tui v8.0.1
[INFO] [stderr]    Compiling ratatui-macros v0.7.2
[INFO] [stderr]    Compiling ratatui v0.30.2
[INFO] [stderr]    Compiling babysit v0.13.1
[INFO] [stderr]    Compiling looop v1.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2m 02s
[INFO] running `Command { std: "docker" "inspect" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c", 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" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c" "/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 looop v1.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 39.34s
[INFO] running `Command { std: "docker" "inspect" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c", 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" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c" "/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.09s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/looop-63a1e08e0bee920b)
[INFO] [stdout] 
[INFO] [stdout] running 352 tests
[INFO] [stdout] test cli::tests::removed_ask_detach_and_resume_flags_are_rejected ... ok
[INFO] [stdout] test config::tests::default_config_has_no_fmt_seam ... ok
[INFO] [stdout] test cli::tests::ask_options_repeat_appends_but_commas_always_split ... ok
[INFO] [stdout] test cli::tests::help_swallows_hyphen_topics_instead_of_erroring ... ok
[INFO] [stdout] test config::tests::env_assign_follows_the_shell_identifier_rule ... ok
[INFO] [stdout] test config::tests::leaves_unrelated_pipelines_untouched ... ok
[INFO] [stdout] test cli::tests::schedule_every_enforces_the_documented_minimum_at_parse_time ... ok
[INFO] [stdout] test cli::tests::schedule_write_requires_exactly_one_trigger ... ok
[INFO] [stdout] test config::tests::runner_cmd_falls_back_to_legacy_keys ... ok
[INFO] [stdout] test cli::tests::watch_accepts_an_initial_session_and_exclusive_history_filters ... ok
[INFO] [stdout] test config::tests::default_config_is_valid_claude_wiring ... ok
[INFO] [stdout] test config::tests::load_surfaces_a_permission_error_instead_of_defaulting ... ok
[INFO] [stdout] test cli::tests::screenshot_output_formats_are_mutually_exclusive ... ok
[INFO] [stdout] test config::tests::runner_label_skips_env_prefixes ... ok
[INFO] [stdout] test config::tests::wiring_json_round_trips_the_two_commands ... ok
[INFO] [stdout] test config::tests::strips_trailing_fmt_seam ... ok
[INFO] [stdout] test deps::tests::command_bin_peels_quotes_and_surfaces_shell_variables ... ok
[INFO] [stdout] test deps::tests::command_bin_skips_leading_env_assignments ... ok
[INFO] [stdout] test deps::tests::command_bin_skips_unparseable_complex_tokens ... ok
[INFO] [stdout] test cli::tests::tell_body_accepts_leading_hyphens ... ok
[INFO] [stdout] test executor::tests::decision_parse_strips_a_single_code_fence ... ok
[INFO] [stdout] test events::tests::emit_appends_one_parseable_ndjson_line_per_event ... ok
[INFO] [stdout] test executor::tests::decision_rejects_invalid_goal_metadata ... ok
[INFO] [stdout] test executor::tests::corrupt_decision_is_consumed_one_shot ... ok
[INFO] [stdout] test executor::tests::goal_of_maps_only_goal_targeting_actions ... ok
[INFO] [stdout] test executor::tests::distinct_worker_id_requires_explicit_goal_before_launch ... ok
[INFO] [stdout] test executor::tests::fairness_rejects_silent_bypass_and_accepts_service_or_deferral ... ok
[INFO] [stdout] test executor::tests::kill_worker_action_parses_and_is_goal_stamped ... ok
[INFO] [stdout] test executor::tests::journal_newlines_are_collapsed_to_one_entry ... ok
[INFO] [stdout] test executor::tests::only_run_shell_is_guarded ... ok
[INFO] [stdout] test executor::tests::fairness_preemption_requires_a_forced_follow_up ... ok
[INFO] [stdout] test executor::tests::deny_list_bypass_knob_allows_denied_commands ... ok
[INFO] [stdout] test executor::tests::run_shell_output_is_captured_and_consumed_once ... ok
[INFO] [stdout] test executor::tests::run_shell_times_out_and_kills_the_command ... ok
[INFO] [stdout] test fairness::tests::continuously_serviced_my_prs_cannot_rank_a_starved_cost_lane ... ok
[INFO] [stdout] test fairness::tests::ranks_never_served_then_oldest_served_with_overdue_promotion ... ok
[INFO] [stdout] test sensor::tests::pulse_health_reports_down_when_no_pulse_session_exists ... ok
[INFO] [stdout] test fairness::tests::zero_disables_overdue_promotion ... ok
[INFO] [stdout] test sensor::tests::read_tail_is_bounded_on_an_oversized_err_file ... ok
[INFO] [stdout] test sensor::tests::sensor_name_is_kind_prefixed ... ok
[INFO] [stdout] test gate::tests::claim_with_an_empty_session_is_refused ... ok
[INFO] [stdout] test sensor::tests::run_all_prunes_snapshots_no_live_sensor_owns ... ok
[INFO] [stdout] test sensor::tests::sys_claims_empty_when_no_dir ... ok
[INFO] [stdout] test sensor::tests::sys_claims_signal_lists_live_leases_sorted ... ok
[INFO] [stdout] test mailbox::ask::tests::ask_errors_when_the_ask_record_vanishes ... ok
[INFO] [stdout] test sensor::tests::sys_sessions_signal_makes_dead_workers_explicitly_not_alive ... ok
[INFO] [stdout] test sensor::tests::system_sensor_sense_writes_snapshot ... ok
[INFO] [stdout] test sensor::tests::unspawnable_sensor_leaves_an_error_snapshot_not_an_empty_one ... ok
[INFO] [stdout] test sensor::tests::worker_health_classifies_the_four_states ... ok
[INFO] [stdout] test service::tests::down_fails_closed_when_the_fleet_cannot_be_enumerated ... ok
[INFO] [stdout] test service::tests::down_reports_not_running_when_nothing_was_stopped ... ok
[INFO] [stdout] test service::tests::messages_reference_only_real_subcommands ... ok
[INFO] [stdout] test mailbox::ask::tests::ask_keeps_polling_through_a_transient_stat_failure ... ok
[INFO] [stdout] test session::fleet::tests::detached_argv_parse_is_explicit_about_value_taking_flags ... ok
[INFO] [stdout] test session::fleet::tests::pulse_is_recognized ... ok
[INFO] [stdout] test paths::tests::default_profile_sees_through_a_symlinked_data_dir ... ok
[INFO] [stdout] test paths::tests::resolve_absolutizes_a_relative_data_dir_against_the_cwd ... ok
[INFO] [stdout] test session::launch::tests::build_worker_cmd_blank_override_is_ignored ... ok
[INFO] [stdout] test paths::tests::resolve_falls_back_to_the_xdg_default_when_unset ... ok
[INFO] [stdout] test paths::tests::resolve_honors_absolute_env_overrides ... ok
[INFO] [stdout] test prompt::tests::prompt_budget_zero_means_no_limit ... ok
[INFO] [stdout] test session::launch::tests::build_worker_cmd_override_replaces_template ... ok
[INFO] [stdout] test session::launch::tests::build_worker_cmd_prompt_path_with_literal_placeholder ... ok
[INFO] [stdout] test session::launch::tests::build_worker_cmd_quotes_like_the_tick_path ... ok
[INFO] [stdout] test session::launch::tests::build_worker_cmd_refuses_removed_placeholders ... ok
[INFO] [stdout] test session::launch::tests::build_worker_cmd_requires_prompt_placeholder ... ok
[INFO] [stdout] test session::launch::tests::build_worker_cmd_template_default ... ok
[INFO] [stdout] test session::launch::tests::contract_uses_the_single_id_placeholder ... ok
[INFO] [stdout] test run::tests::sleep_exits_promptly_on_shutdown ... ok
[INFO] [stdout] test sensor::tests::successful_sensor_is_rename_published_leaving_no_tmp ... ok
[INFO] [stdout] test session::launch::tests::start_session_refuses_a_duplicate_live_id ... ok
[INFO] [stdout] [07:33:35] cannot enumerate the fleet (Not a directory (os error 20)) — reading it as empty
[INFO] [stdout] test session::launch::tests::attribution_write_failure_refuses_before_spawn ... ok
[INFO] [stdout] test sensor::tests::plain_exit_above_128_is_not_misreported_as_a_signal_death ... ok
[INFO] [stdout] test session::plumbing::tests::dup_cloexec_sets_close_on_exec ... ok
[INFO] [stdout] ok
[INFO] [stdout] test session::present::tests::fmt_dur_is_compact_and_handles_unknown ... ok
[INFO] [stdout] test shell_guard::tests::deny_list_allows_benign_commands ... ok
[INFO] [stdout] test shell_guard::tests::deny_list_blocks_destructive_patterns ... ok
[INFO] [stdout] test session::present::tests::borrowed_worker_table_synthesizes_pulse_sorts_and_filters ... ok
[INFO] [stdout] test shell_guard::tests::glued_separators_do_not_slip_the_wire ... ok
[INFO] [stdout] test shell_guard::tests::shell_tokens_resplits_glued_separators_only ... ok
[INFO] [stdout] test shellinit::tests::bash_script_registers_completion ... ok
[INFO] [stdout] test shellinit::tests::both_scripts_resolve_data_dir_consistently ... ok
[INFO] [stdout] ok
[INFO] [stdout] ok
[INFO] [stdout] ok
[INFO] [stdout] test shellinit::tests::zsh_script_registers_completion ... ok
[INFO] [stdout] test sensor::tests::signal_killed_sensor_reports_128_plus_signo ... ok
[INFO] [stdout] test session::launch::tests::start_session_fails_closed_when_the_fleet_cannot_be_enumerated ... ok
[INFO] [stdout] test statefile::tests::read_state_classifies_all_four_states ... ok
[INFO] [stdout] test store::tests::append_line_flattens_embedded_newlines_to_one_record ... oktest session::plumbing::tests::suppress_stdout_is_reentrant_and_race_free ... ok
[INFO] [stdout] test store::tests::backslash_debris_stays_addressable_without_a_panic ... ok
[INFO] [stdout] test session::launch::tests::start_session_cap_ignores_the_pulse_and_corpses ... ok
[INFO] [stdout] test session::launch::tests::start_session_reaps_a_dead_corpse_before_id_reuse ... ok
[INFO] [stdout] test session::launch::tests::attributed_worker_publishes_goal_before_spawn ... ok
[INFO] [stdout] test store::tests::age_secs_reports_presence_and_freshness ... ok
[INFO] [stdout] test store::tests::dotdot_debris_stays_addressable_without_a_panic ... ok
[INFO] [stdout] test store::tests::create_exclusive_is_a_test_and_set ... ok
[INFO] [stdout] test store::tests::create_exclusive_never_exposes_an_empty_file ... ok
[INFO] [stdout] test store::tests::dirlock_file_is_invisible_to_list ... ok
[INFO] [stdout] test store::tests::exists_checked_distinguishes_absence_from_stat_failure ... ok
[INFO] [stdout] test store::tests::archive_never_overwrites_when_the_suffix_probe_cannot_stat ... ok
[INFO] [stdout] test store::tests::path_is_a_choke_point_against_traversal_ids - should panic ... ok
[INFO] [stdout] test store::tests::create_exclusive_publishes_a_sensor_with_the_exec_bit ... ok
[INFO] [stdout] test store::tests::list_on_an_unreadable_dir_returns_empty_without_panicking ... ok
[INFO] [stdout] test store::tests::goal_archive_suffixes_instead_of_overwriting ... ok
[INFO] [stdout] test tests::deps_gate_covers_only_runner_launching_verbs ... ok
[INFO] [stdout] test tests::detached_run_shortcut_requires_the_exact_supervisor_shape ... ok
[INFO] [stdout] test tests::diagnostic_prefixes_once ... ok
[INFO] [stdout] test tests::human_run_with_detached_id_payload_is_not_hijacked ... ok
[INFO] [stdout] test store::tests::write_read_remove_round_trip ... ok
[INFO] [stdout] test store::tests::list_returns_sorted_stems ... ok
[INFO] [stdout] test tick::tests::can_skip_only_when_unchanged_and_not_forced ... ok
[INFO] [stdout] test store::tests::losing_remove_if_eq_leaves_no_temp_and_no_absent_window ... ok
[INFO] [stdout] test store::tests::remove_if_eq_is_a_compare_and_delete ... ok
[INFO] [stdout] test session::launch::tests::start_session_refuses_at_the_fleet_cap ... ok
[INFO] [stdout] test session::launch::tests::start_session_routes_a_broken_config_through_the_refusal_shape ... ok
[INFO] [stdout] test store::tests::replace_if_eq_is_a_compare_and_swap ... ok
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] backoff state file is corrupt — imposing the conservative wait (4 fails from now) instead of skipping the backoff
[INFO] [stdout] [07:33:35] last 4 beat(s) failed — backing off ~300s before retry (edit a goal/PLAYBOOK to retry now)
[INFO] [stdout] test tick::tests::corrupt_backoff_state_still_enforces_the_wait ... ok
[INFO] [stdout] test tick::tests::full_beat_with_failing_runner_arms_backoff_and_records_failure ... ok
[INFO] [stdout] [07:33:35] noop · fine · 0s
[INFO] [stdout] test tick::tests::record_failure_persists_the_feedback_for_the_next_prompt ... ok
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] goal · opened ship goal · 0s
[INFO] [stdout] [07:33:35] noop · steady state · 0s
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] world unchanged but the last noop aged past LOOOP_NOOP_TTL — re-deciding
[INFO] [stdout] test tick::tests::full_beat_executes_a_write_goal_and_reports_acted ... ok
[INFO] [stdout] [07:33:35] 6 sensors ok (0s)
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] [07:33:35] 5 sensors ok (0s)
[INFO] [stdout] test tick::tests::full_beat_with_fake_runner_commits_then_skips_unchanged_world ... ok
[INFO] [stdout] test util::tests::on_path_handles_slash_commands_directly ... ok
[INFO] [stdout] test util::fsio::tests::write_atomic_replaces_existing_and_leaves_no_temp ... ok
[INFO] [stdout] test verify::tests::clip_cmd_for_event_strips_control_chars_and_marks_the_clip ... ok
[INFO] [stdout] test verify::tests::read_tail_file_is_bounded_and_lossy ... ok
[INFO] [stdout] [07:33:35] 6 sensors ok (0s)
[INFO] [stdout] test verify::tests::clear_removes_both_files ... ok
[INFO] [stdout] test verify::tests::reconcile_clears_a_vanished_sessions_state ... ok
[INFO] [stdout] [07:33:35] shell · probed · 0s
[INFO] [stdout] [07:33:35] last 1 beat(s) failed — backing off ~60s before retry (edit a goal/PLAYBOOK to retry now)
[INFO] [stdout] [07:33:35] backoff state file is unparseable — resuming from a conservative fail count (4) instead of resetting the exponential backoff
[INFO] [stdout] [07:33:35] sensor-burst: wake signal changed on 5 consecutive beats — volatile data is likely leaking into .signal (belongs in .detail); every such beat costs a decide
[INFO] [stdout] test tick::tests::run_shell_decision_arms_a_follow_up_nudge ... ok
[INFO] [stdout] [07:33:35] cannot enumerate the fleet (Not a directory (os error 20)) — deferring every pending verify to the next beat
[INFO] [stdout] [07:33:35] sensor-burst: wake signal changed on 5 consecutive beats — volatile data is likely leaking into .signal (belongs in .detail); every such beat costs a decide
[INFO] [stdout] test tick_guards::tests::record_backoff_on_a_corrupt_record_resumes_conservatively ... ok
[INFO] [stdout] test verify::tests::reconcile_skips_a_live_worker ... ok
[INFO] [stdout] [07:33:35] sensor-burst: wake signal changed on 5 consecutive beats — volatile data is likely leaking into .signal (belongs in .detail); every such beat costs a decide
[INFO] [stdout] [07:33:35] 6 sensors ok (0s)
[INFO] [stdout] [07:33:35] goals/PLAYBOOK edited since the last failure — retrying now (fail #1; the counter survives until a beat succeeds)
[INFO] [stdout] [07:33:35] w-io: postcondition pass — $ echo checked
[INFO] [stdout] test verify::tests::reconcile_fails_closed_when_the_fleet_cannot_be_enumerated ... ok
[INFO] [stdout] [07:33:35] w-dead: postcondition pass — $ echo verified-ok
[INFO] [stdout] test verify::tests::reconcile_judges_a_dead_worker_once ... ok
[INFO] [stdout] [07:33:35] tick failed after 0s (fail #2): the tick runner exited nonzero (exit status: 1) · replay: /tmp/looop-test-2165-164/runs/tick-20261019-073335-2
[INFO] [stdout] test tick_guards::tests::intermittent_flapper_still_reaches_the_threshold ... ok
[INFO] [stdout] test service::tests::up_lease_blocks_a_concurrent_starter_until_released ... ok
[INFO] [stdout] test verify::tests::run_cmd_merges_stdout_and_stderr_and_succeeds ... ok
[INFO] [stdout] test verify::tests::run_one_unreadable_cmd_file_records_fail_never_pass ... ok
[INFO] [stdout] test verify::tests::run_one_vanished_cmd_file_skips_without_a_verdict ... ok
[INFO] [stdout] test verify::tests::run_cmd_survives_an_absurd_timeout_without_panicking ... ok
[INFO] [stdout] test verify::tests::store_result_round_trip ... ok
[INFO] [stdout] test verify::tests::store_clears_stale_result_on_id_reuse ... ok
[INFO] [stdout] test wal::tests::fingerprint_is_stable_and_payload_sensitive ... ok
[INFO] [stdout] [07:33:35] 6 sensors ok (0s)
[INFO] [stdout] test verify::tests::run_cmd_timeout_zero_disables_the_deadline ... ok
[INFO] [stdout] [07:33:35] last 2 beat(s) failed — backing off ~120s before retry (edit a goal/PLAYBOOK to retry now)
[INFO] [stdout] test wal::tests::clear_intent_only_removes_our_exact_record ... ok
[INFO] [stdout] [07:33:35] previous beat died mid 'run_shell' (a non-idempotent action) before committing — NOT retried automatically; verify it didn't half-run (fp fp-corpse)
[INFO] [stdout] test wal::tests::wal_corpse_judgment_uses_the_recorded_timeout ... ok
[INFO] [stdout] test store::tests::concurrent_archives_never_clobber_an_archived_record ... ok
[INFO] [stdout] test watch::tests::empty_worker_table_keeps_one_row_without_a_scrollbar ... ok
[INFO] [stdout] test watch::tests::idle_ticks_do_not_redraw_until_state_changes ... ok
[INFO] [stdout] test watch::tests::parse_duration_rejects_garbage ... ok
[INFO] [stdout] test watch::tests::parse_duration_units ... ok
[INFO] [stdout] test watch::tests::releasing_log_scrollbar_over_worker_pane_ends_drag ... ok
[INFO] [stdout] test watch::tests::tab_filter_is_a_binary_living_all_toggle ... ok
[INFO] [stdout] test watch::tests::worker_pane_caps_five_data_rows_beyond_header_and_border ... ok
[INFO] [stdout] test watch::tests::worker_table_orders_workers_by_uptime_after_pulse ... ok
[INFO] [stdout] test watch::tests::worker_table_scrolls_after_five_rows_and_shows_scrollbar ... ok
[INFO] [stdout] test watch::tests::worker_table_uses_worker_list_columns_and_values ... ok
[INFO] [stdout] test worldhash::tests::unstatable_goal_reads_as_the_unreadable_sentinel_not_absence ... ok
[INFO] [stdout] test worldhash::tests::wake_signal_ignores_volatile_detail_changes ... ok
[INFO] [stdout] test worldhash::tests::wake_signal_keeps_only_signal_when_present ... ok
[INFO] [stdout] test worldhash::tests::wake_signal_passes_through_non_objects ... ok
[INFO] [stdout] test worldhash::tests::wake_signal_passes_through_objects_without_signal ... ok
[INFO] [stdout] test worldhash::tests::world_hash_is_stable_and_change_sensitive ... ok
[INFO] [stdout] test worldhash::tests::world_items_distinguish_same_length_non_json_snapshots ... ok
[INFO] [stdout] test worldhash::tests::world_view_agrees_with_the_single_fn_views ... ok
[INFO] [stdout] test verify::tests::run_one_captures_failure_and_output ... ok
[INFO] [stdout] [07:33:35] 6 sensors ok (0s)
[INFO] [stdout] [07:33:35] goals/PLAYBOOK edited since the last failure — retrying now (fail #2; the counter survives until a beat succeeds)
[INFO] [stdout] [07:33:35] noop · recovered · 0s
[INFO] [stdout] test tick::tests::backoff_counts_across_a_moving_world_and_only_success_clears_it ... ok
[INFO] [stdout] test verify::tests::run_cmd_kills_on_deadline_without_external_timeout_binary ... ok
[INFO] [stdout] test run::tests::sleep_wakes_early_on_a_mid_sleep_deadline ... ok
[INFO] [stdout] test sensor::tests::crossing_fairness_deadline_changes_the_wake_signal_once ... ok
[INFO] [stdout] test sensor::tests::hung_sensor_is_killed_by_the_in_process_timeout ... ok
[INFO] [stdout] test sensor::tests::oversized_sensor_output_has_a_size_stable_wake_signal ... ok
[INFO] [stdout] test sensor::tests::sys_goals_reports_age_and_wakes_for_overdue_promotion ... ok
[INFO] [stdout] test store::tests::journal_rotates_one_generation_at_the_size_cap ... ok
[INFO] [stdout] [07:33:38] 5 sensors ok (0s)
[INFO] [stdout] [07:33:39] tick failed after 1s (fail #1): timed out after 1s (LOOOP_TICK_TIMEOUT_SECS) — process group killed · replay: /tmp/looop-test-2165-208/runs/tick-20261019-073338
[INFO] [stdout] test tick::tests::hanging_runner_is_killed_at_the_deadline_and_fails_the_beat ... ok
[INFO] [stdout] test tick::tests::prune_runs_keeps_the_newest_by_mtime_and_zero_keeps_all ... ok
[INFO] [stdout] [07:33:39] per-beat verify budget exhausted (LOOOP_VERIFY_BEAT_BUDGET_SECS=0s) — deferring w-deferred (and any remaining) to the next beat
[INFO] [stdout] [07:33:39] w-deferred: postcondition pass — $ echo should-not-run-yet
[INFO] [stdout] test verify::tests::reconcile_defers_when_the_beat_budget_is_exhausted ... ok
[INFO] [stdout] [07:33:39] previous beat died mid 'run_shell' (a non-idempotent action) before committing — NOT retried automatically; verify it didn't half-run (fp fp-legacy)
[INFO] [stdout] test wal::tests::legacy_single_file_wal_is_still_reported_after_upgrade ... ok
[INFO] [stdout] test wal::tests::shell_timeout_zero_disables_the_wal_corpse_judgment ... ok
[INFO] [stdout] [07:33:39] previous beat died mid 'run_shell' (a non-idempotent action) before committing — NOT retried automatically; verify it didn't half-run (fp fp-old)
[INFO] [stdout] test wal::tests::warn_if_interrupted_detects_and_clears_a_stale_intent ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 352 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.59s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c", kill_on_drop: false }`
[INFO] [stdout] 3363a15b93cd23cb889e3b206d8063042c4ab6f3cf30eab7a0b664e8bf78912c
