[INFO] fetching crate frame 0.1.5... [INFO] testing frame-0.1.5 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate frame 0.1.5 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate frame 0.1.5 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate frame 0.1.5 [INFO] tweaked toml for crates.io crate frame 0.1.5 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate frame 0.1.5 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate frame 0.1.5 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fb02044a27615c1637b2e354faf1b6a22e3cfebac0e480af3e8e319c867f2a0d [INFO] running `Command { std: "docker" "start" "-a" "fb02044a27615c1637b2e354faf1b6a22e3cfebac0e480af3e8e319c867f2a0d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fb02044a27615c1637b2e354faf1b6a22e3cfebac0e480af3e8e319c867f2a0d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fb02044a27615c1637b2e354faf1b6a22e3cfebac0e480af3e8e319c867f2a0d", kill_on_drop: false }` [INFO] [stdout] fb02044a27615c1637b2e354faf1b6a22e3cfebac0e480af3e8e319c867f2a0d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 47238333d8ebbc0f79ba4c2b76aa51a83e8ca0dd8ea387fd60981f8e13ef5926 [INFO] running `Command { std: "docker" "start" "-a" "47238333d8ebbc0f79ba4c2b76aa51a83e8ca0dd8ea387fd60981f8e13ef5926", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling zmij v1.0.19 [INFO] [stderr] Compiling instability v0.3.11 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling instant v0.1.13 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling clap_lex v0.7.7 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling regex-syntax v0.8.9 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling ryu v1.0.22 [INFO] [stderr] Compiling compact_str v0.8.1 [INFO] [stderr] Compiling inotify v0.10.2 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling filetime v0.2.27 [INFO] [stderr] Compiling clap_builder v4.5.57 [INFO] [stderr] Compiling notify-types v1.0.1 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling unicode-width v0.2.0 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling notify v7.0.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling clap v4.5.57 [INFO] [stderr] Compiling ratatui v0.29.0 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling frame v0.1.5 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 25s [INFO] running `Command { std: "docker" "inspect" "47238333d8ebbc0f79ba4c2b76aa51a83e8ca0dd8ea387fd60981f8e13ef5926", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "47238333d8ebbc0f79ba4c2b76aa51a83e8ca0dd8ea387fd60981f8e13ef5926", kill_on_drop: false }` [INFO] [stdout] 47238333d8ebbc0f79ba4c2b76aa51a83e8ca0dd8ea387fd60981f8e13ef5926 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f0c3857f03a3bf392831af6268c9fe080fa76b259a258e2be392642e80ad031d [INFO] running `Command { std: "docker" "start" "-a" "f0c3857f03a3bf392831af6268c9fe080fa76b259a258e2be392642e80ad031d", kill_on_drop: false }` [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling yansi v1.0.1 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling diff v0.1.13 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling frame v0.1.5 (/opt/rustwide/workdir) [INFO] [stderr] Compiling pretty_assertions v1.4.1 [INFO] [stderr] Compiling insta v1.46.3 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 43.36s [INFO] running `Command { std: "docker" "inspect" "f0c3857f03a3bf392831af6268c9fe080fa76b259a258e2be392642e80ad031d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f0c3857f03a3bf392831af6268c9fe080fa76b259a258e2be392642e80ad031d", kill_on_drop: false }` [INFO] [stdout] f0c3857f03a3bf392831af6268c9fe080fa76b259a258e2be392642e80ad031d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a7364315a5789ff24a5164df4b5c62ac51bebbc192f8858854a3b523ca903911 [INFO] running `Command { std: "docker" "start" "-a" "a7364315a5789ff24a5164df4b5c62ac51bebbc192f8858854a3b523ca903911", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.27s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/frame-3d5c4680b12acf65) [INFO] [stdout] [INFO] [stdout] running 545 tests [INFO] [stdout] test cli::handlers::init::tests::test_parse_track_pairs ... ok [INFO] [stdout] test cli::handlers::init::tests::test_infer_name ... ok [INFO] [stdout] test cli::handlers::init::tests::test_render_project_toml_with_tracks ... ok [INFO] [stdout] test cli::handlers::init::tests::test_render_project_toml_no_tracks ... ok [INFO] [stdout] test cli::handlers::init::tests::test_render_round_trip_no_tracks ... ok [INFO] [stdout] test cli::handlers::init::tests::test_render_prefix_collision ... ok [INFO] [stdout] test cli::handlers::init::tests::test_render_round_trip_with_tracks ... ok [INFO] [stdout] test cli::handlers::init::tests::test_template_embedding ... ok [INFO] [stdout] test cli::handlers::init::tests::test_validate_track_id_invalid ... ok [INFO] [stdout] test cli::handlers::init::tests::test_validate_track_id_valid ... ok [INFO] [stdout] test io::config_io::tests::test_clear_tag_color ... ok [INFO] [stdout] test io::config_io::tests::test_clear_tag_color_nonexistent ... ok [INFO] [stdout] test io::config_io::tests::test_rename_prefix_key ... ok [INFO] [stdout] test io::config_io::tests::test_add_track ... ok [INFO] [stdout] test io::config_io::tests::test_remove_prefix ... ok [INFO] [stdout] test cli::handlers::init::tests::test_update_gitignore_creates_entries ... ok [INFO] [stdout] test cli::handlers::init::tests::test_update_gitignore_no_git ... ok [INFO] [stdout] test cli::handlers::init::tests::test_update_gitignore_skips_existing ... ok [INFO] [stdout] test io::config_io::tests::test_round_trip_config ... ok [INFO] [stdout] test cli::handlers::init::tests::test_update_gitignore_appends_to_existing ... ok [INFO] [stdout] test io::config_io::tests::test_set_tag_color_existing_section ... ok [INFO] [stdout] test io::config_io::tests::test_update_cc_focus ... ok [INFO] [stdout] test io::config_io::tests::test_update_track_id ... ok [INFO] [stdout] test io::lock::tests::test_acquire_and_release_lock ... ok [INFO] [stdout] test io::config_io::tests::test_update_track_name ... ok [INFO] [stdout] test io::project_io::tests::test_discover_project_not_found ... ok [INFO] [stdout] test io::project_io::tests::test_discover_project ... ok [INFO] [stdout] test io::config_io::tests::test_update_track_state ... ok [INFO] [stdout] test io::config_io::tests::test_write_config_from_struct_round_trip ... ok [INFO] [stdout] test io::project_io::tests::test_load_project ... ok [INFO] [stdout] test io::recovery::tests::test_category_display ... ok [INFO] [stdout] test io::recovery::tests::test_category_from_str ... ok [INFO] [stdout] test io::recovery::tests::test_empty_body_entry ... ok [INFO] [stdout] test io::recovery::tests::test_entry_formatting ... ok [INFO] [stdout] test io::recovery::tests::test_entry_to_json ... ok [INFO] [stdout] test io::recovery::tests::test_file_header_created_on_first_write ... ok [INFO] [stdout] test io::recovery::tests::test_multiple_fields_round_trip ... ok [INFO] [stdout] test io::recovery::tests::test_atomic_write ... ok [INFO] [stdout] test io::recovery::tests::test_parse_entry_header_invalid ... ok [INFO] [stdout] test io::recovery::tests::test_log_and_read ... ok [INFO] [stdout] test io::recovery::tests::test_prune_entries_before_preserves_header ... ok [INFO] [stdout] test io::recovery::tests::test_parse_entry_header ... ok [INFO] [stdout] test io::config_io::tests::test_remove_track_from_config ... ok [INFO] [stdout] test io::recovery::tests::test_read_nonexistent_returns_empty ... ok [INFO] [stdout] test io::recovery::tests::test_prune_no_log_file ... ok [INFO] [stdout] test io::recovery::tests::test_prune_all ... ok [INFO] [stdout] test io::recovery::tests::test_prune_before_cutoff ... ok [INFO] [stdout] test io::recovery::tests::test_read_since_filter ... ok [INFO] [stdout] test io::config_io::tests::test_set_tag_color_creates_section ... ok [INFO] [stdout] test io::recovery::tests::test_read_with_limit ... ok [INFO] [stdout] test io::recovery::tests::test_recovery_log_path ... ok [INFO] [stdout] test io::registry::tests::test_abbreviate_path ... ok [INFO] [stdout] test io::registry::tests::test_empty_registry ... ok [INFO] [stdout] test io::recovery::tests::test_recovery_summary ... ok [INFO] [stdout] test io::registry::tests::test_corrupted_registry_backup ... ok [INFO] [stdout] test io::registry::tests::test_register_and_read ... ok [INFO] [stdout] test io::recovery::tests::test_round_trip_parse ... ok [INFO] [stdout] test io::registry::tests::test_register_duplicate_path ... ok [INFO] [stdout] test io::registry::tests::test_relative_time ... ok [INFO] [stdout] test io::state::tests::serde_defaults_on_minimal_object ... ok [INFO] [stdout] test io::state::tests::track_ui_state_serde_defaults ... ok [INFO] [stdout] test io::state::tests::read_missing_file_returns_none ... ok [INFO] [stdout] test io::registry::tests::test_round_trip_serialization ... ok [INFO] [stdout] test io::registry::tests::test_remove_not_found ... ok [INFO] [stdout] test io::state::tests::read_malformed_json_returns_none ... ok [INFO] [stdout] test io::state::tests::write_and_read_round_trip ... ok [INFO] [stdout] test model::config::tests::agent_config_default ... ok [INFO] [stdout] test model::config::tests::agent_config_serde_default_true ... ok [INFO] [stdout] test model::config::tests::clean_config_default ... ok [INFO] [stdout] test model::config::tests::ui_config_serde_note_wrap_default_true ... ok [INFO] [stdout] test model::config::tests::ui_config_default ... ok [INFO] [stdout] test model::task::tests::checkbox_char_all_states ... ok [INFO] [stdout] test model::task::tests::from_checkbox_char_invalid ... ok [INFO] [stdout] test model::task::tests::partial_eq_differs_by_id ... ok [INFO] [stdout] test model::task::tests::metadata_key_all_variants ... ok [INFO] [stdout] test model::task::tests::from_checkbox_char_valid ... ok [INFO] [stdout] test model::task::tests::partial_eq_equal_tasks ... ok [INFO] [stdout] test model::task::tests::partial_eq_differs_by_state ... ok [INFO] [stdout] test model::task::tests::partial_eq_differs_by_title ... ok [INFO] [stdout] test model::task::tests::mark_dirty_sets_flag ... ok [INFO] [stdout] test model::task::tests::task_new_fields ... ok [INFO] [stdout] test model::task::tests::task_new_no_id ... ok [INFO] [stdout] test model::task::tests::partial_eq_ignores_source_and_dirty ... ok [INFO] [stdout] test ops::check::tests::test_check_broken_ref ... ok [INFO] [stdout] test ops::check::tests::test_check_clean_project ... ok [INFO] [stdout] test ops::check::tests::test_check_cross_track_dep ... ok [INFO] [stdout] test ops::check::tests::test_check_duplicate_ids_within_track ... ok [INFO] [stdout] test ops::check::tests::test_check_dangling_dep ... ok [INFO] [stdout] test ops::check::tests::test_check_duplicate_ids ... ok [INFO] [stdout] test ops::check::tests::test_check_result_serializes_to_json ... ok [INFO] [stdout] test ops::check::tests::test_check_no_recovery_log_info ... ok [INFO] [stdout] test ops::check::tests::test_check_subtask_dangling_dep ... ok [INFO] [stdout] test ops::check::tests::test_check_valid_ref ... ok [INFO] [stdout] test ops::check::tests::test_check_valid_dep ... ok [INFO] [stdout] test ops::check::tests::test_check_recovery_log_info ... ok [INFO] [stdout] test ops::check::tests::test_lost_task_no_id_no_warning ... ok [INFO] [stdout] test ops::check::tests::test_check_broken_spec ... ok [INFO] [stdout] test ops::check::tests::test_no_lost_warning_without_tag ... ok [INFO] [stdout] test io::registry::tests::test_remove_by_name ... ok [INFO] [stdout] test ops::check::tests::test_check_valid_spec_with_section ... ok [INFO] [stdout] test ops::check::tests::test_warn_done_in_backlog ... ok [INFO] [stdout] test ops::check::tests::test_warn_lost_task ... ok [INFO] [stdout] test ops::check::tests::test_warn_missing_added_date ... ok [INFO] [stdout] test ops::check::tests::test_warn_missing_resolved_date ... ok [INFO] [stdout] test ops::check::tests::test_warn_missing_id ... ok [INFO] [stdout] test ops::clean::tests::test_archive_retain_exceeds_count ... ok [INFO] [stdout] test ops::clean::tests::test_archive_threshold_counts_tasks_not_lines ... ok [INFO] [stdout] test ops::clean::tests::test_assign_missing_ids ... ok [INFO] [stdout] test ops::clean::tests::test_archive_triggers_above_task_threshold ... ok [INFO] [stdout] test ops::clean::tests::test_assign_missing_dates ... ok [INFO] [stdout] test ops::clean::tests::test_assign_subtask_ids ... ok [INFO] [stdout] test ops::clean::tests::test_assign_subtask_ids_after_deletion ... ok [INFO] [stdout] test ops::clean::tests::test_broken_refs ... ok [INFO] [stdout] test ops::clean::tests::test_clean_assigns_ids_then_validates_deps ... ok [INFO] [stdout] test ops::clean::tests::test_cross_track_deps_valid ... ok [INFO] [stdout] test ops::clean::tests::test_clean_full_run ... ok [INFO] [stdout] test ops::clean::tests::test_dangling_deps ... ok [INFO] [stdout] test ops::clean::tests::test_ensure_ids_and_dates_no_changes ... ok [INFO] [stdout] test ops::clean::tests::test_ensure_ids_and_dates_basic ... ok [INFO] [stdout] test ops::clean::tests::test_archive_done_past_threshold ... ok [INFO] [stdout] test ops::clean::tests::test_ensure_ids_and_dates_no_prefix ... ok [INFO] [stdout] test ops::clean::tests::test_ensure_ids_and_dates_resolves_duplicates ... ok [INFO] [stdout] test ops::clean::tests::test_generate_active_md ... ok [INFO] [stdout] test ops::clean::tests::test_generate_active_md_skips_shelved ... ok [INFO] [stdout] test ops::clean::tests::test_no_archive_under_threshold ... ok [INFO] [stdout] test ops::clean::tests::test_no_duplicates_no_changes ... ok [INFO] [stdout] test ops::clean::tests::test_no_suggestion_for_already_done_parent ... ok [INFO] [stdout] test ops::clean::tests::test_no_suggestion_for_leaf_tasks ... ok [INFO] [stdout] test ops::clean::tests::test_reconcile_done_task_in_backlog ... ok [INFO] [stdout] test ops::clean::tests::test_reconcile_no_changes_when_correct ... ok [INFO] [stdout] test ops::clean::tests::test_reconcile_parked_task_in_backlog ... ok [INFO] [stdout] test ops::clean::tests::test_reconcile_unparked_task_in_parked ... ok [INFO] [stdout] test ops::clean::tests::test_reconcile_via_ensure_ids_and_dates ... ok [INFO] [stdout] test ops::clean::tests::test_resolve_duplicate_ids_renumbers_subtasks ... ok [INFO] [stdout] test ops::clean::tests::test_resolve_duplicate_ids_cross_track ... ok [INFO] [stdout] test ops::clean::tests::test_resolve_duplicate_ids_track_order_precedence ... ok [INFO] [stdout] test ops::clean::tests::test_suggest_parent_done_when_all_subtasks_done ... ok [INFO] [stdout] test ops::clean::tests::test_resolve_duplicate_ids_within_track ... ok [INFO] [stdout] test ops::import::tests::test_import_after_nonexistent_id ... ok [INFO] [stdout] test ops::import::tests::test_import_bottom ... ok [INFO] [stdout] test ops::import::tests::test_import_empty_file ... ok [INFO] [stdout] test ops::import::tests::test_import_id_continues_from_max ... ok [INFO] [stdout] test ops::import::tests::test_import_no_tasks_in_file ... ok [INFO] [stdout] test ops::import::tests::test_import_preserves_existing_metadata ... ok [INFO] [stdout] test ops::import::tests::test_import_skips_headers ... ok [INFO] [stdout] test ops::import::tests::test_import_three_level_nesting ... ok [INFO] [stdout] test ops::import::tests::test_import_top ... ok [INFO] [stdout] test ops::import::tests::test_import_with_blank_lines_between_tasks ... ok [INFO] [stdout] test ops::import::tests::test_import_with_subtasks ... ok [INFO] [stdout] test ops::import::tests::test_imported_tasks_are_dirty ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_add_inbox_item ... ok [INFO] [stdout] test io::config_io::tests::test_struct_round_trip_preserves_prefix_order ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_after ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_bottom ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_invalid_after_target_preserves_inbox ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_no_backlog_preserves_inbox ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_no_body_no_note ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_out_of_range ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_out_of_range_preserves_inbox ... ok [INFO] [stdout] test ops::inbox_ops::tests::test_triage_top ... ok [INFO] [stdout] test ops::search::tests::test_inbox_search_multiple_items ... ok [INFO] [stdout] test ops::search::tests::test_inbox_search_no_matches ... ok [INFO] [stdout] test ops::clean::tests::test_no_duplicate_dates ... ok [INFO] [stdout] test ops::search::tests::test_inbox_search_tag ... ok [INFO] [stdout] test ops::search::tests::test_inbox_search_title ... ok [INFO] [stdout] test ops::clean::tests::test_assign_missing_ids_no_prefix ... ok [INFO] [stdout] test ops::search::tests::test_search_default_skips_archived ... ok [INFO] [stdout] test ops::clean::tests::test_archive_retains_most_recent ... ok [INFO] [stdout] test ops::search::tests::test_search_default_skips_shelved ... ok [INFO] [stdout] test ops::search::tests::test_search_done_section ... ok [INFO] [stdout] test ops::search::tests::test_inbox_search_body ... ok [INFO] [stdout] test ops::import::tests::test_import_after ... ok [INFO] [stdout] test ops::search::tests::test_search_id ... ok [INFO] [stdout] test ops::search::tests::test_search_multiple_spans ... ok [INFO] [stdout] test ops::search::tests::test_search_parked_section ... ok [INFO] [stdout] test ops::search::tests::test_search_ref ... ok [INFO] [stdout] test ops::clean::tests::test_valid_refs ... ok [INFO] [stdout] test ops::search::tests::test_search_dep ... ok [INFO] [stdout] test ops::search::tests::test_search_subtask_tag ... ok [INFO] [stdout] test ops::search::tests::test_search_regex_alternation ... ok [INFO] [stdout] test ops::search::tests::test_search_note ... ok [INFO] [stdout] test ops::search::tests::test_search_tag ... ok [INFO] [stdout] test ops::search::tests::test_search_spec ... ok [INFO] [stdout] test ops::search::tests::test_search_subtask_independent ... ok [INFO] [stdout] test ops::search::tests::test_search_task_no_id ... ok [INFO] [stdout] test ops::search::tests::test_search_no_matches ... ok [INFO] [stdout] test ops::search::tests::test_search_title_match ... ok [INFO] [stdout] test ops::search::tests::test_search_case_insensitive_regex ... ok [INFO] [stdout] test ops::search::tests::test_search_track_filter_ignores_state ... ok [INFO] [stdout] test ops::search::tests::test_search_title_multiple_tracks ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_dep ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_dep_invalid_target ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_subtask_max_depth ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_ref ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_task_after ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_remove_tag ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_task_bottom ... ok [INFO] [stdout] test ops::search::tests::test_search_with_track_filter ... ok [INFO] [stdout] test ops::task_ops::tests::test_append_note_with_existing ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_task_top ... ok [INFO] [stdout] test ops::task_ops::tests::test_append_note_no_existing ... ok [INFO] [stdout] test ops::task_ops::tests::test_count_subtree_size ... ok [INFO] [stdout] test ops::task_ops::tests::test_add_subtask ... ok [INFO] [stdout] test ops::task_ops::tests::test_cycle_state_todo_active_done ... ok [INFO] [stdout] test ops::task_ops::tests::test_delete_subtask_round_trip_with_note ... ok [INFO] [stdout] test ops::task_ops::tests::test_delete_subtask_no_collateral_damage ... ok [INFO] [stdout] test ops::task_ops::tests::test_find_task_location_top_level ... ok [INFO] [stdout] test ops::task_ops::tests::test_delete_task ... ok [INFO] [stdout] test ops::task_ops::tests::test_hard_delete_not_found ... ok [INFO] [stdout] test ops::task_ops::tests::test_edit_title ... ok [INFO] [stdout] test ops::task_ops::tests::test_find_task_location_any_section ... ok [INFO] [stdout] test ops::task_ops::tests::test_find_task_location_not_found ... ok [INFO] [stdout] test ops::task_ops::tests::test_find_task_location_nested ... ok [INFO] [stdout] test ops::task_ops::tests::test_is_descendant_of ... ok [INFO] [stdout] test ops::task_ops::tests::test_is_top_level_in_section ... ok [INFO] [stdout] test ops::task_ops::tests::test_hard_delete_subtask ... ok [INFO] [stdout] test ops::task_ops::tests::test_max_subtree_depth ... ok [INFO] [stdout] test ops::task_ops::tests::test_hard_delete_top_level ... ok [INFO] [stdout] test ops::task_ops::tests::test_max_subtree_depth_deep ... ok [INFO] [stdout] test ops::task_ops::tests::test_hard_delete_with_subtree ... ok [INFO] [stdout] test ops::task_ops::tests::test_move_task_between_sections_creates_missing_section ... ok [INFO] [stdout] test ops::task_ops::tests::test_move_task_between_sections_with_subtasks ... ok [INFO] [stdout] test ops::task_ops::tests::test_move_task_after ... ok [INFO] [stdout] test ops::task_ops::tests::test_move_task_between_sections_subtask_returns_none ... ok [INFO] [stdout] test ops::task_ops::tests::test_move_task_between_sections_backlog_to_done ... ok [INFO] [stdout] test ops::task_ops::tests::test_move_task_to_bottom ... ok [INFO] [stdout] test ops::task_ops::tests::test_reinsert_round_trip ... ok [INFO] [stdout] test ops::task_ops::tests::test_move_task_to_top ... ok [INFO] [stdout] test ops::task_ops::tests::test_remove_insert_task_subtree_round_trip ... ok [INFO] [stdout] test ops::task_ops::tests::test_rekey_subtree ... ok [INFO] [stdout] test ops::task_ops::tests::test_next_child_number_after_deletion ... ok [INFO] [stdout] test ops::task_ops::tests::test_remove_dep ... ok [INFO] [stdout] test ops::task_ops::tests::test_remove_insert_subtask_round_trip ... ok [INFO] [stdout] test ops::task_ops::tests::test_reparent_cycle_detection ... ok [INFO] [stdout] test ops::task_ops::tests::test_reparent_self_cycle ... ok [INFO] [stdout] test ops::task_ops::tests::test_reparent_depth_limit ... ok [INFO] [stdout] test ops::task_ops::tests::test_reparent_promote_to_top_level ... ok [INFO] [stdout] test ops::task_ops::tests::test_reparent_depth_limit_with_subtree ... ok [INFO] [stdout] test ops::task_ops::tests::test_set_note ... ok [INFO] [stdout] test ops::task_ops::tests::test_reparent_under_new_parent ... ok [INFO] [stdout] test ops::task_ops::tests::test_set_spec ... ok [INFO] [stdout] test ops::task_ops::tests::test_reparent_updates_dep_references ... ok [INFO] [stdout] test ops::task_ops::tests::test_set_state_noop_same_state ... ok [INFO] [stdout] test ops::task_ops::tests::test_set_done_adds_resolved ... ok [INFO] [stdout] test ops::task_ops::tests::test_set_subtree_depth ... ok [INFO] [stdout] test ops::task_ops::tests::test_update_dep_references_in_track ... ok [INFO] [stdout] test ops::task_ops::tests::test_toggle_blocked ... ok [INFO] [stdout] test ops::task_ops::tests::test_toggle_parked ... ok [INFO] [stdout] test ops::track_ops::tests::test_activate_track ... ok [INFO] [stdout] test ops::track_ops::tests::test_delete_track ... ok [INFO] [stdout] test ops::track_ops::tests::test_generate_prefix_collision ... ok [INFO] [stdout] test ops::track_ops::tests::test_generate_prefix_hyphenated ... ok [INFO] [stdout] test ops::track_ops::tests::test_generate_prefix_no_collision_different_tracks ... ok [INFO] [stdout] test ops::track_ops::tests::test_archive_track_file ... ok [INFO] [stdout] test ops::track_ops::tests::test_generate_prefix_all_table_cases ... ok [INFO] [stdout] test ops::track_ops::tests::test_generate_prefix_short_segment ... ok [INFO] [stdout] test ops::track_ops::tests::test_generate_track_id ... ok [INFO] [stdout] test ops::track_ops::tests::test_generate_prefix_basic ... ok [INFO] [stdout] test ops::track_ops::tests::test_archive_track ... ok [INFO] [stdout] test ops::track_ops::tests::test_is_track_not_empty_with_tasks ... ok [INFO] [stdout] test ops::track_ops::tests::test_is_track_not_empty_with_archive ... ok [INFO] [stdout] test ops::track_ops::tests::test_prefix_rename_impact_cross_track_deps ... ok [INFO] [stdout] test ops::track_ops::tests::test_is_track_empty_by_id ... ok [INFO] [stdout] test ops::track_ops::tests::test_prefix_rename_impact_no_tasks ... ok [INFO] [stdout] test ops::track_ops::tests::test_prefix_rename_impact_with_archive ... ok [INFO] [stdout] test ops::track_ops::tests::test_new_track ... ok [INFO] [stdout] test ops::track_ops::tests::test_rename_track_prefix ... ok [INFO] [stdout] test ops::track_ops::tests::test_rename_track_prefix_collision ... ok [INFO] [stdout] test ops::track_ops::tests::test_prefix_rename_impact_basic ... ok [INFO] [stdout] test ops::track_ops::tests::test_reorder_tracks ... ok [INFO] [stdout] test ops::track_ops::tests::test_set_cc_focus ... ok [INFO] [stdout] test ops::track_ops::tests::test_rename_track_id_collision ... ok [INFO] [stdout] test ops::track_ops::tests::test_new_track_duplicate ... ok [INFO] [stdout] test ops::track_ops::tests::test_rename_track_id ... ok [INFO] [stdout] test ops::track_ops::tests::test_restore_track_file ... ok [INFO] [stdout] test ops::track_ops::tests::test_set_cc_focus_inactive_fails ... ok [INFO] [stdout] test ops::track_ops::tests::test_shelve_archived_fails ... ok [INFO] [stdout] test ops::track_ops::tests::test_shelve_track ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_body_multiple_blank_lines ... ok [INFO] [stdout] test ops::track_ops::tests::test_task_counts ... ok [INFO] [stdout] test ops::track_ops::tests::test_total_task_count ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_basic ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_body_blank_line_before_code_block ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_body_with_blank_lines ... ok [INFO] [stdout] test ops::track_ops::tests::test_rename_track_name ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_code_block_with_blank_line ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_empty ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_dropped_lines ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_no_dropped_lines ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_trailing_blank_not_in_body ... ok [INFO] [stdout] test parse::inbox_serializer::tests::test_round_trip_inbox ... ok [INFO] [stdout] test parse::inbox_serializer::tests::test_round_trip_inbox_empty ... ok [INFO] [stdout] test parse::inbox_serializer::tests::test_round_trip_inbox_with_code ... ok [INFO] [stdout] test parse::inbox_parser::tests::test_parse_inbox_with_code_block_in_body ... ok [INFO] [stdout] test parse::task_parser::tests::test_blank_lines_between_sibling_tasks ... ok [INFO] [stdout] test parse::inbox_serializer::tests::test_round_trip_inbox_body_with_blank_lines ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_multiple_deps ... ok [INFO] [stdout] test parse::task_parser::tests::test_blank_line_between_empty_note_and_metadata ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_note_with_code_fence ... ok [INFO] [stdout] test io::lock::tests::test_lock_contention ... ok [INFO] [stdout] test parse::task_parser::tests::test_blank_lines_before_section_header_stops ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_note_block ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_task_with_metadata ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_title_and_tags_edge_cases ... ok [INFO] [stdout] test parse::task_parser::tests::test_three_level_nesting ... ok [INFO] [stdout] test parse::task_serializer::tests::test_selective_rewrite_dirty_subtask_clean_parent ... ok [INFO] [stdout] test parse::task_serializer::tests::test_serialize_minimal_task ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_minimal_task ... ok [INFO] [stdout] test parse::task_serializer::tests::test_serialize_multiline_note ... ok [INFO] [stdout] test parse::task_serializer::tests::test_serialize_subtasks ... ok [INFO] [stdout] test parse::task_serializer::tests::test_serialize_task_with_id_and_tags ... ok [INFO] [stdout] test parse::task_serializer::tests::test_serialize_task_with_metadata ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_subtasks ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_task_states ... ok [INFO] [stdout] test parse::task_parser::tests::test_blank_lines_between_note_and_subtasks ... ok [INFO] [stdout] test parse::task_parser::tests::test_parse_task_with_id_and_tags ... ok [INFO] [stdout] test parse::track_parser::tests::test_parse_track_structure ... ok [INFO] [stdout] test parse::task_serializer::tests::test_serialize_verbatim_when_clean ... ok [INFO] [stdout] test tui::app::tests::archive_file_does_not_match_track ... ok [INFO] [stdout] test tui::app::tests::archive_tracks_subdir_does_not_match ... ok [INFO] [stdout] test parse::track_parser::tests::test_parse_track_with_subtasks ... ok [INFO] [stdout] test tui::app::tests::correct_track_file_matches ... ok [INFO] [stdout] test tui::app::tests::fallback_filename_matching_when_no_rel_path ... ok [INFO] [stdout] test parse::track_serializer::tests::test_round_trip_empty_sections ... ok [INFO] [stdout] test parse::track_parser::tests::test_parse_track_preserves_node_order ... ok [INFO] [stdout] test tui::app::tests::different_track_name_in_archive ... ok [INFO] [stdout] test parse::track_serializer::tests::test_round_trip_with_subtasks ... ok [INFO] [stdout] test tui::app::tests::inbox_top_level_matches ... ok [INFO] [stdout] test tui::app::tests::non_inbox_does_not_match ... ok [INFO] [stdout] test tui::app::tests::flat_config_archive_does_not_match ... ok [INFO] [stdout] test parse::track_serializer::tests::test_round_trip_simple_track ... ok [INFO] [stdout] test tui::app::tests::inbox_archive_does_not_match ... ok [INFO] [stdout] test tui::app::tests::inbox_no_rel_path_matches ... ok [INFO] [stdout] test parse::track_parser::tests::test_parse_track_empty_sections ... ok [INFO] [stdout] test tui::app::tests::flat_track_config_matches_exactly ... ok [INFO] [stdout] test tui::app::tests::track_file_matches_by_rel_path ... ok [INFO] [stdout] test tui::command_actions::tests::filter_actions_no_shortcut ... ok [INFO] [stdout] test tui::command_actions::tests::filter_actions_all_filtered_out ... ok [INFO] [stdout] test tui::app::tests::unrelated_md_file_does_not_match ... ok [INFO] [stdout] test tui::command_actions::tests::filter_actions_emoji_label_splitting ... ok [INFO] [stdout] test tui::command_actions::tests::filter_actions_empty_query_returns_all ... ok [INFO] [stdout] test tui::command_actions::tests::filter_actions_sorts_by_score ... ok [INFO] [stdout] test tui::command_actions::tests::filter_actions_empty_slice ... ok [INFO] [stdout] test tui::command_actions::tests::filter_matches_shortcut ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_case_insensitive ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_consecutive_bonus ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_empty_query ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_no_match ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_exact_match ... ok [INFO] [stdout] test tui::command_actions::tests::filter_actions_unicode_label_splitting ... ok [INFO] [stdout] test tui::command_actions::tests::filter_matches_multi_char_shortcut ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_consecutive_accumulation ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_query_longer_than_target ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_prefix_bonus ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_large_gap_penalty ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_single_char ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_unicode_case_folding ... ok [INFO] [stdout] test tui::command_actions::tests::fuzzy_score_word_boundary ... ok [INFO] [stdout] test tui::render::detail_view::tests::task_not_found ... ok [INFO] [stdout] test tui::render::detail_view::tests::minimal_task_detail ... ok [INFO] [stdout] test tui::render::detail_view::tests::basic_task_detail ... ok [INFO] [stdout] test tui::render::autocomplete::tests::autocomplete_dropdown ... ok [INFO] [stdout] test tui::render::conflict_popup::tests::conflict_visible ... ok [INFO] [stdout] test tui::render::dep_popup::tests::dep_popup_visible ... ok [INFO] [stdout] test tui::render::command_palette::tests::palette_with_query ... ok [INFO] [stdout] test tui::render::command_palette::tests::palette_open ... ok [INFO] [stdout] test tui::render::inbox_view::tests::inbox_in_edit_mode ... ok [INFO] [stdout] test tui::render::prefix_confirm::tests::confirm_dialog ... ok [INFO] [stdout] test tui::render::inbox_view::tests::inbox_with_items ... ok [INFO] [stdout] test tui::render::project_picker::tests::picker_with_entries ... ok [INFO] [stdout] test tui::render::help_overlay::tests::help_detail_view ... ok [INFO] [stdout] test tui::render::inbox_view::tests::inbox_empty ... ok [INFO] [stdout] test tui::render::help_overlay::tests::help_track_view ... ok [INFO] [stdout] test tui::render::recent_view::tests::recent_empty ... ok [INFO] [stdout] test tui::render::recent_view::tests::recent_with_done_tasks ... ok [INFO] [stdout] test tui::render::help_overlay::tests::help_inbox_view ... ok [INFO] [stdout] test tui::render::recovery_overlay::tests::recovery_log_visible ... ok [INFO] [stdout] test tui::render::detail_view::tests::task_with_subtasks ... ok [INFO] [stdout] test tui::render::status_row::tests::command_mode ... ok [INFO] [stdout] test tui::render::status_row::tests::edit_mode ... ok [INFO] [stdout] test tui::render::status_row::tests::move_mode ... ok [INFO] [stdout] test tui::render::status_row::tests::navigate_default ... ok [INFO] [stdout] test tui::render::results_overlay::tests::results_with_lines ... ok [INFO] [stdout] test tui::render::status_row::tests::navigate_with_status_message ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_all_fit_with_project_name ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_balanced_shrinking_equal_names ... ok [INFO] [stdout] test tui::render::tab_bar::tests::snapshots::inbox_tab_selected ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_cc_focus_width_accounting ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_digit_count ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_inbox_count_affects_fixed_width ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_no_over_shrink ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_one_track ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_prefix_swap_at_exact_length ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_prefix_swap_is_zero_width ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_project_name_removed ... ok [INFO] [stdout] test tui::render::tab_bar::tests::snapshots::single_track_tab ... ok [INFO] [stdout] test tui::render::tab_bar::tests::snapshots::multiple_tracks ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_shrink_longest_first ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_shrink_past_prefix ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_zero_tracks ... ok [INFO] [stdout] test tui::render::tests::push_highlighted_spans_no_regex ... ok [INFO] [stdout] test tui::render::tests::push_highlighted_spans_with_match ... ok [INFO] [stdout] test tui::render::tests::truncate_with_ellipsis_exact ... ok [INFO] [stdout] test tui::render::tests::truncate_with_ellipsis_long ... ok [INFO] [stdout] test tui::render::tests::truncate_with_ellipsis_short ... ok [INFO] [stdout] test tui::render::tab_bar::tests::test_scrolling_when_nothing_fits ... ok [INFO] [stdout] test tui::render::status_row::tests::search_mode ... ok [INFO] [stdout] test tui::render::tag_color_popup::tests::tag_color_popup_picker_open ... ok [INFO] [stdout] test tui::render::tests::full_render_track_view ... ok [INFO] [stdout] test tui::render::tag_color_popup::tests::tag_color_popup_visible ... ok [INFO] [stdout] test tui::render::track_view::tests::empty_track ... ok [INFO] [stdout] test tui::render::track_view::tests::simple_backlog ... ok [INFO] [stdout] test tui::render::tests::full_render_inbox_view ... ok [INFO] [stdout] test tui::render::track_view::tests::complex_fixture ... ok [INFO] [stdout] test tui::render::track_view::tests::track_with_done_tasks ... ok [INFO] [stdout] test tui::render::track_view::tests::track_with_subtasks ... ok [INFO] [stdout] test tui::render::tracks_view::tests::overview_single_track ... ok [INFO] [stdout] test tui::theme::tests::test_default_theme_has_all_tag_colors ... ok [INFO] [stdout] test tui::theme::tests::test_from_config_overrides ... ok [INFO] [stdout] test tui::theme::tests::test_tag_color_fallback ... ok [INFO] [stdout] test tui::theme::tests::test_parse_hex_color ... ok [INFO] [stdout] test tui::theme::tests::test_state_color ... ok [INFO] [stdout] test tui::undo::tests::bulk_redo_applies_forward_order ... ok [INFO] [stdout] test tui::undo::tests::bulk_undo_reverses_order ... ok [INFO] [stdout] test tui::undo::tests::field_edit_deps ... ok [INFO] [stdout] test tui::undo::tests::field_edit_note ... ok [INFO] [stdout] test tui::undo::tests::field_edit_tags_undo_redo ... ok [INFO] [stdout] test tui::undo::tests::field_edit_refs ... ok [INFO] [stdout] test tui::undo::tests::inbox_move_undo_redo ... ok [INFO] [stdout] test tui::undo::tests::inbox_add_redo_reinserts ... ok [INFO] [stdout] test tui::undo::tests::field_edit_spec ... ok [INFO] [stdout] test tui::undo::tests::inbox_delete_undo_restores ... ok [INFO] [stdout] test tui::undo::tests::inbox_tags_edit_undo_redo ... ok [INFO] [stdout] test tui::undo::tests::inbox_title_edit_undo_redo ... ok [INFO] [stdout] test tui::undo::tests::inbox_note_edit_undo_redo ... ok [INFO] [stdout] test tui::undo::tests::inbox_op_with_none_inbox_is_safe ... ok [INFO] [stdout] test tui::undo::tests::nav_target_field_edit_note_opens_detail ... ok [INFO] [stdout] test tui::undo::tests::is_empty_after_undo ... ok [INFO] [stdout] test tui::undo::tests::nav_target_field_edit_refs_opens_detail ... ok [INFO] [stdout] test tui::undo::tests::nav_target_field_edit_deps_opens_detail ... ok [INFO] [stdout] test tui::undo::tests::nav_target_field_edit_spec_opens_detail ... ok [INFO] [stdout] test tui::undo::tests::nav_target_field_edit_tags_stays_in_track_view ... ok [INFO] [stdout] test tui::undo::tests::nav_target_inbox_add_redo ... ok [INFO] [stdout] test tui::undo::tests::nav_target_inbox_add_undo ... ok [INFO] [stdout] test tui::undo::tests::nav_target_inbox_delete_undo ... ok [INFO] [stdout] test tui::undo::tests::nav_target_inbox_move_undo ... ok [INFO] [stdout] test tui::undo::tests::nav_target_inbox_move_redo ... ok [INFO] [stdout] test tui::undo::tests::nav_target_subtask_add_redo_goes_to_subtask ... ok [INFO] [stdout] test tui::undo::tests::nav_target_state_change ... ok [INFO] [stdout] test tui::undo::tests::inbox_add_undo_removes ... ok [INFO] [stdout] test tui::undo::tests::nav_target_subtask_add_undo_goes_to_parent ... ok [INFO] [stdout] test tui::undo::tests::nav_target_task_add_undo_removes ... ok [INFO] [stdout] test tui::undo::tests::nav_target_task_add_redo_creates ... ok [INFO] [stdout] test tui::undo::tests::nav_target_task_move ... ok [INFO] [stdout] test tui::undo::tests::nav_target_title_edit ... ok [INFO] [stdout] test tui::undo::tests::peek_last_redo_after_undo ... ok [INFO] [stdout] test tui::undo::tests::peek_last_undo_after_push ... ok [INFO] [stdout] test tui::undo::tests::push_adds_to_undo ... ok [INFO] [stdout] test tui::undo::tests::nav_target_sync_marker_returns_none ... ok [INFO] [stdout] test tui::undo::tests::nav_target_track_move ... ok [INFO] [stdout] test tui::undo::tests::push_after_sync_clears_redo ... ok [INFO] [stdout] test tui::undo::tests::redo_on_empty_stack_returns_none ... ok [INFO] [stdout] test tui::undo::tests::push_clears_redo ... ok [INFO] [stdout] test tui::undo::tests::section_move_undo_restores_position ... ok [INFO] [stdout] test tui::undo::tests::section_move_redo ... ok [INFO] [stdout] test tui::undo::tests::state_change_undo_reverts ... ok [INFO] [stdout] test tui::undo::tests::subtask_add_redo_reinserts ... ok [INFO] [stdout] test tui::undo::tests::state_change_with_resolved_date ... ok [INFO] [stdout] test tui::undo::tests::stack_limit_enforcement ... ok [INFO] [stdout] test tui::undo::tests::state_change_redo_reapplies ... ok [INFO] [stdout] test tui::undo::tests::new_stack_is_empty ... ok [INFO] [stdout] test tui::undo::tests::sync_marker_limit_enforcement ... ok [INFO] [stdout] test tui::undo::tests::subtask_add_undo_removes_from_parent ... ok [INFO] [stdout] test tui::undo::tests::task_add_redo_reinserts ... ok [INFO] [stdout] test tui::undo::tests::task_add_undo_removes_task ... ok [INFO] [stdout] test tui::undo::tests::task_move_redo_applies ... ok [INFO] [stdout] test tui::undo::tests::task_move_undo_restores_position ... ok [INFO] [stdout] test tui::undo::tests::task_move_position_clamping ... ok [INFO] [stdout] test tui::undo::tests::title_edit_redo_applies_new ... ok [INFO] [stdout] test tui::undo::tests::title_edit_undo_restores_old ... ok [INFO] [stdout] test tui::undo::tests::undo_nonexistent_task_returns_nav ... ok [INFO] [stdout] test tui::undo::tests::undo_stops_at_sync_marker ... ok [INFO] [stdout] test tui::undo::tests::undo_nonexistent_track_returns_none ... ok [INFO] [stdout] test tui::wrap::tests::char_wrap_long_word ... ok [INFO] [stdout] test tui::wrap::tests::edit_cursor_at_full_width_line_end ... ok [INFO] [stdout] test tui::wrap::tests::edit_cursor_at_short_line_end_no_extra_vl ... ok [INFO] [stdout] test tui::wrap::tests::edit_cursor_mid_line_no_extra_vl ... ok [INFO] [stdout] test tui::wrap::tests::edit_cursor_on_consumed_whitespace ... ok [INFO] [stdout] test tui::wrap::tests::edit_space_cursor_advances ... ok [INFO] [stdout] test tui::wrap::tests::edit_no_gap_fill_across_logical_lines ... ok [INFO] [stdout] test tui::undo::tests::undo_on_empty_stack_returns_none ... ok [INFO] [stdout] test tui::wrap::tests::edit_space_cursor_no_skip ... ok [INFO] [stdout] test tui::wrap::tests::empty_line ... ok [INFO] [stdout] test tui::wrap::tests::edit_cursor_at_end_of_wrapped_full_width_row ... ok [INFO] [stdout] test tui::wrap::tests::no_wrap_needed ... ok [INFO] [stdout] test tui::wrap::tests::fill_heuristic_50_percent ... ok [INFO] [stdout] test tui::wrap::tests::edit_trailing_spaces_visible ... ok [INFO] [stdout] test tui::wrap::tests::gutter_width_small ... ok [INFO] [stdout] test tui::wrap::tests::logical_to_visual_roundtrip ... ok [INFO] [stdout] test tui::wrap::tests::wrap_at_space ... ok [INFO] [stdout] test tui::wrap::tests::tab_counts_as_four ... ok [INFO] [stdout] test tui::wrap::tests::wrap_cjk ... ok [INFO] [stdout] test tui::wrap::tests::wrap_emoji ... ok [INFO] [stdout] test tui::wrap::tests::visual_col_computation ... ok [INFO] [stdout] test tui::wrap::tests::wrap_at_hyphen ... ok [INFO] [stdout] test tui::wrap::tests::wrap_never_breaks_grapheme ... ok [INFO] [stdout] test tui::wrap::tests::zero_width ... ok [INFO] [stdout] test util::unicode::tests::char_display_width_tests ... ok [INFO] [stdout] test util::unicode::tests::display_col_to_byte_ascii ... ok [INFO] [stdout] test util::unicode::tests::display_col_to_byte_beyond ... ok [INFO] [stdout] test util::unicode::tests::display_col_to_byte_cjk ... ok [INFO] [stdout] test util::unicode::tests::byte_to_display_col_cjk ... ok [INFO] [stdout] test tui::wrap::tests::wrap_lines_multiple ... ok [INFO] [stdout] test util::unicode::tests::display_col_to_byte_snaps ... ok [INFO] [stdout] test util::unicode::tests::display_width_ascii ... ok [INFO] [stdout] test util::unicode::tests::byte_to_display_col_ascii ... ok [INFO] [stdout] test util::unicode::tests::display_width_combining ... ok [INFO] [stdout] test util::unicode::tests::display_width_empty ... ok [INFO] [stdout] test util::unicode::tests::display_width_fullwidth ... ok [INFO] [stdout] test util::unicode::tests::display_width_mixed ... ok [INFO] [stdout] test util::unicode::tests::display_width_box_drawing ... ok [INFO] [stdout] test util::unicode::tests::display_width_cjk ... ok [INFO] [stdout] test util::unicode::tests::display_width_emoji ... ok [INFO] [stdout] test util::unicode::tests::display_width_tab ... ok [INFO] [stdout] test util::unicode::tests::display_width_zero_width_space ... ok [INFO] [stdout] test util::unicode::tests::grapheme_zwj ... ok [INFO] [stdout] test util::unicode::tests::next_grapheme_ascii ... ok [INFO] [stdout] test util::unicode::tests::truncate_ascii ... ok [INFO] [stdout] test util::unicode::tests::grapheme_combining ... ok [INFO] [stdout] test util::unicode::tests::grapheme_at_tests ... ok [INFO] [stdout] test util::unicode::tests::next_grapheme_emoji ... ok [INFO] [stdout] test util::unicode::tests::truncate_cjk_boundary ... ok [INFO] [stdout] test util::unicode::tests::truncate_cjk_off_by_one ... ok [INFO] [stdout] test util::unicode::tests::prev_grapheme_ascii ... ok [INFO] [stdout] test util::unicode::tests::truncate_exact_fit ... ok [INFO] [stdout] test util::unicode::tests::truncate_no_truncation_needed ... ok [INFO] [stdout] test util::unicode::tests::word_boundary_left_ascii ... ok [INFO] [stdout] test util::unicode::tests::word_boundary_left_cjk ... ok [INFO] [stdout] test util::unicode::tests::truncate_emoji ... ok [INFO] [stdout] test util::unicode::tests::truncate_one ... ok [INFO] [stdout] test util::unicode::tests::truncate_zero ... ok [INFO] [stdout] test util::unicode::tests::word_boundary_right_ascii ... ok [INFO] [stdout] test util::unicode::tests::word_boundary_right_cjk ... ok [INFO] [stdout] test tui::render::tracks_view::tests::overview_edit_mode ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/fr-3e90b55003bbd25f) [INFO] [stdout] test tui::render::tracks_view::tests::overview_multiple_tracks ... ok [INFO] [stderr] Running tests/cli_integration.rs (/opt/rustwide/target/debug/deps/cli_integration-99bf7571878da58c) [INFO] [stdout] [INFO] [stdout] test result: ok. 545 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 94 tests [INFO] [stdout] test test_blocked ... ok [INFO] [stdout] test test_check_json ... ok [INFO] [stdout] test test_add_task_after ... ok [INFO] [stdout] test test_check ... ok [INFO] [stdout] test test_add_task ... ok [INFO] [stdout] test test_check_json_with_recovery_log ... ok [INFO] [stdout] test test_add_to_nonexistent_track ... ok [INFO] [stdout] test test_check_with_lost_task ... ok [INFO] [stdout] test test_deps ... ok [INFO] [stdout] test test_clean_dry_run ... ok [INFO] [stdout] test test_add_then_show ... ok [INFO] [stdout] test test_clean ... ok [INFO] [stdout] test test_found_from ... ok [INFO] [stdout] test test_import ... ok [INFO] [stdout] test test_dep_add_remove ... ok [INFO] [stdout] test test_inbox_add ... ok [INFO] [stdout] test test_import_top ... ok [INFO] [stdout] test test_inbox_json ... ok [INFO] [stdout] test test_help ... ok [INFO] [stdout] test test_init_gitignore_added ... ok [INFO] [stdout] test test_init_gitignore_no_git ... ok [INFO] [stdout] test test_init_gitignore_already_present ... ok [INFO] [stdout] test test_init_with_tracks ... ok [INFO] [stdout] test test_add_then_state_then_show ... ok [INFO] [stdout] test test_list_specific_track ... ok [INFO] [stdout] test test_init_already_exists ... ok [INFO] [stdout] test test_init_force_reinitialize ... ok [INFO] [stdout] test test_list_with_state_filter ... ok [INFO] [stdout] test test_list_with_tag_filter ... ok [INFO] [stdout] test test_list_json ... ok [INFO] [stdout] test test_list_default ... ok [INFO] [stdout] test test_init_gitignore_partial ... ok [INFO] [stdout] test test_mv_parent_depth_exceeded ... ok [INFO] [stdout] test test_mv_after ... ok [INFO] [stdout] test test_mv_parent_cycle_error ... ok [INFO] [stdout] test test_mv_promote_parent_conflict ... ok [INFO] [stdout] test test_inbox_list ... ok [INFO] [stdout] test test_not_a_project ... ok [INFO] [stdout] test test_mv_top ... ok [INFO] [stdout] test test_note ... ok [INFO] [stdout] test test_push_task ... ok [INFO] [stdout] test test_note_replace ... ok [INFO] [stdout] test test_mv_parent ... ok [INFO] [stdout] test test_ready_cc_no_focus ... ok [INFO] [stdout] test test_ready_cc ... ok [INFO] [stdout] test test_mv_promote ... ok [INFO] [stdout] test test_note_append ... ok [INFO] [stdout] test test_ready_cc_ordering ... ok [INFO] [stdout] test test_ready_json ... ok [INFO] [stdout] test test_ready ... ok [INFO] [stdout] test test_mv_promote_top_level_error ... ok [INFO] [stdout] test test_recovery_json ... ok [INFO] [stdout] test test_recovery_prune_all_empty ... ok [INFO] [stdout] test test_recent ... ok [INFO] [stdout] test test_recovery_path ... ok [INFO] [stdout] test test_recovery_limit ... ok [INFO] [stdout] test test_show_context_subtask ... ok [INFO] [stdout] test test_recovery_empty ... ok [INFO] [stdout] test test_show_context_top_level ... ok [INFO] [stdout] test test_search ... ok [INFO] [stdout] test test_show_json ... ok [INFO] [stdout] test test_ref ... ok [INFO] [stdout] test test_show ... ok [INFO] [stdout] test test_recovery_prune_all_with_entries ... ok [INFO] [stdout] test test_recovery_with_entries ... ok [INFO] [stdout] test test_search_with_track_filter ... ok [INFO] [stdout] test test_state_change ... ok [INFO] [stdout] test test_state_done_adds_resolved ... ok [INFO] [stdout] test test_stats ... ok [INFO] [stdout] test test_show_json_always_has_ancestors ... ok [INFO] [stdout] test test_show_not_found ... ok [INFO] [stdout] test test_show_json_top_level_empty_ancestors ... ok [INFO] [stdout] test test_sub_task ... ok [INFO] [stdout] test test_show_no_context_unchanged ... ok [INFO] [stdout] test test_state_invalid ... ok [INFO] [stdout] test test_stats_json ... ok [INFO] [stdout] test test_spec ... ok [INFO] [stdout] test test_track_cc_focus ... ok [INFO] [stdout] test test_title ... ok [INFO] [stdout] test test_track_new ... ok [INFO] [stdout] test test_track_delete_non_empty_fails ... ok [INFO] [stdout] test test_track_delete_empty ... ok [INFO] [stdout] test test_track_rename_id ... ok [INFO] [stdout] test test_tag_add_remove ... ok [INFO] [stdout] test test_track_rename_name ... ok [INFO] [stdout] test test_track_cc_focus_clear ... ok [INFO] [stdout] test test_track_rename_prefix_dry_run ... ok [INFO] [stdout] test test_track_rename_prefix_yes ... ok [INFO] [stdout] test test_tracks_json ... ok [INFO] [stdout] test test_tracks ... ok [INFO] [stdout] test test_triage_top ... ok [INFO] [stdout] test test_track_activate ... ok [INFO] [stdout] test test_track_shelve ... ok [INFO] [stderr] Running tests/round_trip.rs (/opt/rustwide/target/debug/deps/round_trip-5803808dc09d01f6) [INFO] [stdout] test test_triage ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 94 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.48s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test parent_source_text_excludes_subtasks ... ok [INFO] [stdout] test code_in_notes_parse_correctness ... ok [INFO] [stdout] test complex_track_parse_correctness ... ok [INFO] [stdout] test inbox_parse_correctness ... ok [INFO] [stdout] test round_trip_code_in_notes ... ok [INFO] [stdout] test round_trip_all_metadata ... ok [INFO] [stdout] test round_trip_inbox ... ok [INFO] [stdout] test round_trip_three_level_nesting ... ok [INFO] [stdout] test round_trip_complex_track ... ok [INFO] [stdout] test selective_rewrite_only_dirty_subtask_changes ... ok [INFO] [stdout] test round_trip_empty_sections ... ok [INFO] [stdout] test round_trip_simple_track ... ok [INFO] [stdout] test round_trip_config ... ok [INFO] [stdout] test round_trip_no_metadata ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests frame [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "a7364315a5789ff24a5164df4b5c62ac51bebbc192f8858854a3b523ca903911", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a7364315a5789ff24a5164df4b5c62ac51bebbc192f8858854a3b523ca903911", kill_on_drop: false }` [INFO] [stdout] a7364315a5789ff24a5164df4b5c62ac51bebbc192f8858854a3b523ca903911