[INFO] cloning repository https://github.com/jykim16/tnotes
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jykim16/tnotes" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjykim16%2Ftnotes", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjykim16%2Ftnotes'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c03122c15de8e8dab870686737fc920bf1197d17
[INFO] testing jykim16/tnotes against 1.98.0-beta.8+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjykim16%2Ftnotes" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jykim16/tnotes
[INFO] finished tweaking git repo https://github.com/jykim16/tnotes
[INFO] tweaked toml for git repo https://github.com/jykim16/tnotes written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jykim16/tnotes on toolchain 1.98.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jykim16/tnotes 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.98.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded instability v0.3.12
[INFO] [stderr]   Downloaded indoc v2.0.7
[INFO] [stderr]   Downloaded vt100 v0.15.2
[INFO] [stderr]   Downloaded vte_generate_state_changes v0.1.2
[INFO] [stderr]   Downloaded vte v0.11.1
[INFO] [stderr]   Downloaded memoffset v0.6.5
[INFO] [stderr]   Downloaded termios v0.2.2
[INFO] [stderr]   Downloaded owo-colors v4.3.0
[INFO] [stderr]   Downloaded serial-core v0.4.0
[INFO] [stderr]   Downloaded signal-hook-mio v0.2.5
[INFO] [stderr]   Downloaded serial v0.4.0
[INFO] [stderr]   Downloaded filedescriptor v0.8.3
[INFO] [stderr]   Downloaded is_ci v1.2.0
[INFO] [stderr]   Downloaded is-terminal v0.4.17
[INFO] [stderr]   Downloaded serial-unix v0.4.0
[INFO] [stderr]   Downloaded supports-color v2.1.0
[INFO] [stderr]   Downloaded darling_macro v0.23.0
[INFO] [stderr]   Downloaded serial-windows v0.4.0
[INFO] [stderr]   Downloaded shell-words v1.1.1
[INFO] [stderr]   Downloaded supports-color v3.0.2
[INFO] [stderr]   Downloaded ioctl-rs v0.1.6
[INFO] [stderr]   Downloaded winreg v0.10.1
[INFO] [stderr]   Downloaded portable-pty v0.8.1
[INFO] [stderr]   Downloaded clap_complete v4.6.0
[INFO] [stderr]   Downloaded signal-hook v0.3.18
[INFO] [stderr]   Downloaded darling v0.23.0
[INFO] [stderr]   Downloaded darling_core v0.23.0
[INFO] [stderr]   Downloaded compact_str v0.8.1
[INFO] [stderr]   Downloaded nix v0.25.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03
[INFO] running `Command { std: "docker" "start" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03", 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" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03", 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" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling is_ci v1.2.0
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling vte_generate_state_changes v0.1.2
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling supports-color v3.0.2
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling unicode-width v0.2.0
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling vte v0.11.1
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling vt100 v0.15.2
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling termios v0.2.2
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling ioctl-rs v0.1.6
[INFO] [stderr]    Compiling serial-core v0.4.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling nix v0.25.1
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling supports-color v2.1.0
[INFO] [stderr]    Compiling unicode-truncate v1.1.0
[INFO] [stderr]    Compiling serial-unix v0.4.0
[INFO] [stderr]    Compiling serial v0.4.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling filedescriptor v0.8.3
[INFO] [stderr]    Compiling portable-pty v0.8.1
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling clap_complete v4.6.0
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling ratatui v0.29.0
[INFO] [stderr]    Compiling tnote v0.4.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 54.21s
[INFO] running `Command { std: "docker" "inspect" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03", 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" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling tnote v0.4.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 12.83s
[INFO] running `Command { std: "docker" "inspect" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03", 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" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.22s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/tnote-87c254c18bfe31bd)
[INFO] [stdout] 
[INFO] [stdout] running 102 tests
[INFO] [stdout] test config::tests::parse_str_uses_default_when_both_absent ... ok
[INFO] [stdout] test config::tests::parse_str_uses_file_val_when_env_absent ... ok
[INFO] [stdout] test config::tests::config_save_omits_archive_retention_days_when_unset ... ok
[INFO] [stdout] test config::tests::read_config_file_ignores_lines_without_equals ... ok
[INFO] [stdout] test config::tests::read_config_file_parses_key_value_pairs ... ok
[INFO] [stdout] test config::tests::read_config_file_returns_empty_for_missing_file ... ok
[INFO] [stdout] test config::tests::config_save_writes_archive_retention_days_when_set ... ok
[INFO] [stdout] test config::tests::config_save_writes_all_fields ... ok
[INFO] [stdout] test config::tests::read_config_file_trims_whitespace ... ok
[INFO] [stdout] test config::tests::config_save_round_trips_via_read_config_file ... ok
[INFO] [stdout] test install::tests::add_shell_binding_creates_file ... ok
[INFO] [stdout] test install::tests::add_source_line_adds_newline_before_if_file_lacks_trailing_newline ... ok
[INFO] [stdout] test install::tests::add_source_line_appends_to_existing_content ... ok
[INFO] [stdout] test install::tests::add_shell_binding_replaces_existing_block ... ok
[INFO] [stdout] test install::tests::add_shell_binding_appends_to_existing ... ok
[INFO] [stdout] test install::tests::add_source_line_creates_file_if_absent ... ok
[INFO] [stdout] test install::tests::add_source_line_is_idempotent ... ok
[INFO] [stdout] test install::tests::detect_shell_returns_some ... ok
[INFO] [stdout] test install::tests::remove_shell_block_handles_marker_at_end ... ok
[INFO] [stdout] test install::tests::remove_shell_block_removes_marker_and_next_line ... ok
[INFO] [stdout] test install::tests::remove_shell_block_noop_when_no_marker ... ok
[INFO] [stdout] test install::tests::shell_binding_fish ... ok
[INFO] [stdout] test install::tests::shell_binding_unknown_returns_none ... ok
[INFO] [stdout] test install::tests::shell_rc_bash_returns_bashrc ... ok
[INFO] [stdout] test install::tests::shell_rc_zsh_returns_zshrc ... ok
[INFO] [stdout] test install::tests::shell_rc_unknown_returns_none ... ok
[INFO] [stdout] test name_picker::tests::filtered_names_matches_case_insensitively ... ok
[INFO] [stdout] test name_picker::tests::filtered_names_returns_all_for_blank_filter ... ok
[INFO] [stdout] test install::tests::remove_source_line_noop_when_line_absent ... ok
[INFO] [stdout] test install::tests::shell_binding_bash ... ok
[INFO] [stdout] test install::tests::remove_shell_block_empty_content ... ok
[INFO] [stdout] test name_picker::tests::max_selectable_index_without_new_row_indexes_filtered_directly ... ok
[INFO] [stdout] test install::tests::shell_binding_zsh ... ok
[INFO] [stdout] test name_picker::tests::new_name_label_uses_trimmed_filter ... ok
[INFO] [stdout] test name_picker::tests::max_selectable_index_with_new_row_includes_the_extra_slot ... ok
[INFO] [stdout] test install::tests::remove_source_line_removes_the_line ... ok
[INFO] [stdout] test install::tests::remove_shell_binding_returns_false_when_no_block ... ok
[INFO] [stdout] test install::tests::remove_source_line_preserves_trailing_newline ... ok
[INFO] [stdout] test install::tests::remove_shell_binding_removes_block ... ok
[INFO] [stdout] test install::tests::remove_shell_binding_returns_false_when_file_missing ... ok
[INFO] [stdout] test install::tests::remove_source_line_ok_when_file_does_not_exist ... ok
[INFO] [stdout] test name_picker::tests::selection_clamps_to_new_name_when_filter_shrinks_list ... ok
[INFO] [stdout] test notes::tests::ensure_dir_creates_note_and_meta_dirs ... ok
[INFO] [stdout] test notes::tests::label_for_key_no_link_returns_key ... ok
[INFO] [stdout] test notes::tests::label_for_key_with_link_returns_name ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_named_not_removed_without_scope ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_named_removed_with_named_scope ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_all_scope_removes_everything ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_tmux_dead_window_removed ... ok
[INFO] [stdout] test notes::tests::file_for_key_no_link_returns_key_md ... ok
[INFO] [stdout] test notes::tests::list_notes_ignores_non_md_files ... ok
[INFO] [stdout] test notes::tests::migrate_to_meta_moves_link_and_pid_files ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_dry_run_leaves_files ... ok
[INFO] [stdout] test notes::tests::name_window_creates_link_no_content ... ok
[INFO] [stdout] test notes::tests::name_window_migrates_non_empty_unnamed_note ... ok
[INFO] [stdout] test notes::tests::name_window_skips_migration_for_empty_unnamed_note ... ok
[INFO] [stdout] test notes::tests::purge_archive_dry_run_leaves_files ... ok
[INFO] [stdout] test notes::tests::name_window_skips_migration_if_named_file_already_exists ... ok
[INFO] [stdout] test notes::tests::purge_archive_keeps_notes_within_retention ... ok
[INFO] [stdout] test notes::tests::remove_named_also_removes_pointing_links ... ok
[INFO] [stdout] test notes::tests::archived_note_names_lists_sorted_stems ... ok
[INFO] [stdout] test notes::tests::file_for_key_follows_link_file ... ok
[INFO] [stdout] test notes::tests::remove_named_dry_run_leaves_file ... ok
[INFO] [stdout] test notes::tests::unbind_named_key_keeps_non_matching_link ... ok
[INFO] [stdout] test install::tests::which_finds_sh ... ok
[INFO] [stdout] test tmux::tests::goto_picker_attach_cmd_execs_hidden_subcommand ... ok
[INFO] [stdout] test tmux::tests::goto_window_rejects_shell_key ... ok
[INFO] [stdout] test notes::tests::remove_named_deletes_file ... ok
[INFO] [stdout] test notes::tests::unbind_named_key_removes_matching_link ... ok
[INFO] [stdout] test notes::tests::archived_note_names_no_archive_dir_returns_empty ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_tmux_superseded_removes_raw_md ... ok
[INFO] [stdout] test tmux::tests::name_picker_attach_cmd_carries_window_key ... ok
[INFO] [stdout] test tmux::tests::name_prompt_command_targets_hidden_subcommand ... ok
[INFO] [stdout] test tmux::tests::parse_version_empty_string_returns_none ... ok
[INFO] [stdout] test notes::tests::list_notes_categorizes_correctly ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_keeps_alive_shell_note ... ok
[INFO] [stdout] test notes::tests::cleanup_orphaned_removes_dead_shell_note ... ok
[INFO] [stdout] test install::tests::which_returns_false_for_nonexistent ... ok
[INFO] [stdout] test tmux::tests::parse_version_major_only_treated_as_minor_zero ... ok
[INFO] [stdout] test tmux::tests::parse_version_satisfies_popup_requirement ... ok
[INFO] [stdout] test tmux::tests::parse_version_non_numeric_returns_none ... ok
[INFO] [stdout] test tmux::tests::parse_version_trims_whitespace ... ok
[INFO] [stdout] test tmux::tests::parse_version_simple ... ok
[INFO] [stdout] test tmux::tests::parse_version_old_version ... ok
[INFO] [stdout] test notes::tests::list_notes_named_includes_sources ... ok
[INFO] [stdout] test tmux::tests::shell_escape_single_quote ... ok
[INFO] [stdout] test tmux::tests::shell_escape_simple_string ... ok
[INFO] [stdout] test tmux::tests::parse_version_with_suffix ... ok
[INFO] [stdout] test tmux::tests::session_and_window_from_key_rejects_non_tmux_key ... ok
[INFO] [stdout] test tmux::tests::shell_escape_empty_string ... ok
[INFO] [stdout] test tmux::tests::tmux_rename_target_from_key_uses_window_id ... ok
[INFO] [stdout] test tmux::tests::shell_escape_multiple_quotes ... ok
[INFO] [stdout] test notes::tests::remove_named_returns_false_when_not_found ... ok
[INFO] [stdout] test tmux::tests::shell_escape_only_quote ... ok
[INFO] [stdout] test notes::tests::file_for_key_link_trims_whitespace ... ok
[INFO] [stdout] test notes::tests::purge_archive_no_archive_dir_returns_empty ... ok
[INFO] [stdout] test notes::tests::list_notes_empty_dir ... ok
[INFO] [stdout] test tmux::tests::rename_window_target_ignores_non_tmux_keys ... ok
[INFO] [stdout] test tmux::tests::session_and_window_from_key_splits_session_and_window ... ok
[INFO] [stdout] test tmux::tests::shell_escape_special_chars_unchanged ... ok
[INFO] [stdout] test tmux::tests::tmux_rename_target_from_key_rejects_invalid_key ... ok
[INFO] [stdout] test notes::tests::purge_archive_removes_notes_older_than_retention ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 102 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/tnote-448e242f0a5eb7d5)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test tests::bind_target_normalization_accepts_supported_forms ... ok
[INFO] [stdout] test tests::glob_exact_match ... ok
[INFO] [stdout] test tests::glob_mid_wildcard ... ok
[INFO] [stdout] test tests::glob_star_only ... ok
[INFO] [stdout] test tests::glob_trailing_wildcard ... ok
[INFO] [stdout] test tests::resolve_bind_target_uses_current_key_for_boolean_flag ... ok
[INFO] [stdout] test tests::bind_tmux_window_id_validation ... ok
[INFO] [stdout] test tests::glob_leading_wildcard ... ok
[INFO] [stdout] test tests::bind_digits_validation ... ok
[INFO] [stdout] test tests::bind_target_normalization_rejects_invalid_forms ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/release/deps/cli-da1a3b9ab1a13d01)
[INFO] [stdout] 
[INFO] [stdout] running 79 tests
[INFO] [stdout] test clean_name_removes_named_note ... ok
[INFO] [stdout] test clean_all_removes_named_notes ... ok
[INFO] [stdout] test clean_name_glob_removes_matching_notes ... ok
[INFO] [stdout] test clean_name_not_found_exits_nonzero ... ok
[INFO] [stdout] test clean_named_removes_named_note ... ok
[INFO] [stdout] test clean_name_glob_no_matches_exits_nonzero ... ok
[INFO] [stdout] test complete_named_notes_prints_existing_named_notes ... ok
[INFO] [stdout] test clean_nothing_to_clean ... ok
[INFO] [stdout] test completions_zsh_include_dynamic_named_note_helper ... ok
[INFO] [stdout] test clean_in_tmux_kills_orphaned_popup_session ... ok
[INFO] [stdout] test completions_bash_include_dynamic_named_note_helper ... ok
[INFO] [stdout] test list_archive_name_filters_matching_notes ... ok
[INFO] [stdout] test completions_fish_include_dynamic_named_note_helper ... ok
[INFO] [stdout] test list_name_filters_to_exact_match ... ok
[INFO] [stdout] test help_shows_usage ... ok
[INFO] [stdout] test list_shows_shell_notes ... ok
[INFO] [stdout] test clean_removes_dead_shell_note ... ok
[INFO] [stdout] test list_shows_named_notes ... ok
[INFO] [stdout] test list_name_glob_filters_matching_notes ... ok
[INFO] [stdout] test clean_dryrun_does_not_delete ... ok
[INFO] [stdout] test list_empty_when_no_notes ... ok
[INFO] [stdout] test name_bind_accepts_shell_pid ... ok
[INFO] [stdout] test name_bind_accepts_prefixed_shell_pid ... ok
[INFO] [stdout] test list_in_tmux_shows_notes ... ok
[INFO] [stdout] test list_name_no_matches_exits_nonzero ... ok
[INFO] [stdout] test name_output_says_named ... ok
[INFO] [stdout] test name_bind_rejects_invalid_target ... ok
[INFO] [stdout] test clean_named_not_found_exits_nonzero ... ok
[INFO] [stdout] test name_template_conflicts_with_positional_name ... ok
[INFO] [stdout] test list_marks_current_note ... ok
[INFO] [stdout] test name_template_conflicts_with_bind ... ok
[INFO] [stdout] test name_creates_link_and_renames ... ok
[INFO] [stdout] test clean_name_glob_unarchive_matches_against_archive_dir ... ok
[INFO] [stdout] test name_unbind_boolean_not_bound_exits_nonzero ... ok
[INFO] [stdout] test ls_is_alias_for_list ... ok
[INFO] [stdout] test name_template_does_not_bind_or_rename ... ok
[INFO] [stdout] test name_migrates_existing_content ... ok
[INFO] [stdout] test name_bind_boolean_uses_current_shell_key ... ok
[INFO] [stdout] test name_template_saves_current_note_as_template ... ok
[INFO] [stdout] test name_in_tmux_renames_window ... ok
[INFO] [stdout] test name_unbind_boolean_removes_named_note_link_files ... ok
[INFO] [stdout] test path_name_prints_named_path ... ok
[INFO] [stdout] test name_unbind_removes_specific_tmux_binding ... ok
[INFO] [stdout] test path_prints_a_file_path ... ok
[INFO] [stdout] test path_name_glob_no_matches_exits_nonzero ... ok
[INFO] [stdout] test name_bind_rejects_invalid_prefixed_targets ... ok
[INFO] [stdout] test name_unbind_boolean_removes_all_bindings_for_note ... ok
[INFO] [stdout] test name_rejects_bind_and_unbind_together ... ok
[INFO] [stdout] test name_unbind_rejects_key_bound_to_other_note ... ok
[INFO] [stdout] test name_bind_accepts_tmux_window_key ... ok
[INFO] [stdout] test show_displays_note_content ... ok
[INFO] [stdout] test show_empty_when_no_note ... ok
[INFO] [stdout] test clean_all_scope_removes_all ... ok
[INFO] [stdout] test name_without_argument_in_tmux_opens_name_picker_popup_with_config_dimensions ... ok
[INFO] [stdout] test popup_runs_editor_on_note_file ... ok
[INFO] [stdout] test open_in_tmux_uses_popup_session ... ok
[INFO] [stdout] test setup_writes_tmux_conf_and_updates_tmux_conf_file ... ok
[INFO] [stdout] test template_combined_short_flags_ft_work ... ok
[INFO] [stdout] test name_bind_accepts_prefixed_tmux_window_key ... ok
[INFO] [stdout] test path_name_glob_matches_multiple_notes ... ok
[INFO] [stdout] test setup_advanced_blank_renderer_clears_to_plain_output ... ok
[INFO] [stdout] test show_name_glob_mid_pattern ... ok
[INFO] [stdout] test show_name_shorthand_works ... ok
[INFO] [stdout] test show_name_prints_named_note ... ok
[INFO] [stdout] test show_name_glob_no_matches_exits_nonzero ... ok
[INFO] [stdout] test show_name_glob_matches_multiple_notes ... ok
[INFO] [stdout] test template_errors_when_template_missing ... ok
[INFO] [stdout] test setup_advanced_writes_renderer_and_ls_annotation ... ok
[INFO] [stdout] test show_can_render_with_bat_when_configured ... ok
[INFO] [stdout] test show_in_tmux_falls_back_to_shell_note ... ok
[INFO] [stdout] test template_errors_when_linked_named_note_has_content ... ok
[INFO] [stdout] test path_name_not_found_exits_nonzero ... ok
[INFO] [stdout] test show_name_not_found_exits_nonzero ... ok
[INFO] [stdout] test template_errors_when_note_already_has_content ... ok
[INFO] [stdout] test uninstall_removes_source_line_from_tmux_conf ... ok
[INFO] [stdout] test template_replaces_when_linked_named_note_is_empty ... ok
[INFO] [stdout] test template_force_overwrites_existing_content ... ok
[INFO] [stdout] test template_applies_to_fresh_note ... ok
[INFO] [stdout] test template_short_flag_t_works ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 79 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_config.rs (/opt/rustwide/target/release/deps/unit_config-d924b206f6079d1a)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test test_from_env_no_migration_when_tnote_exists ... ok
[INFO] [stdout] test test_parse_str_default ... ok
[INFO] [stdout] test test_from_env_defaults_when_no_config_file ... ok
[INFO] [stdout] test test_parse_str_env_takes_precedence ... ok
[INFO] [stdout] test test_from_env_migration_tnotes_to_tnote ... ok
[INFO] [stdout] test test_read_config_file_missing_returns_empty ... ok
[INFO] [stdout] test test_from_env_migration_termnotes_to_tnote ... ok
[INFO] [stdout] test test_save_writes_correct_format ... ok
[INFO] [stdout] test test_save_round_trip ... ok
[INFO] [stdout] test test_parse_str_file_fallback ... ok
[INFO] [stdout] test test_read_config_file_trims_whitespace ... ok
[INFO] [stdout] test test_read_config_file_ignores_invalid_lines ... ok
[INFO] [stdout] test test_read_config_file_parses_key_value ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_editor.rs (/opt/rustwide/target/release/deps/unit_editor-55a201071ab718d8)
[INFO] [stdout] 
[INFO] [stdout] running 21 tests
[INFO] [stdout] test test_alt_esc_no_double_escape ... ok
[INFO] [stdout] test test_arrow_keys ... ok
[INFO] [stdout] test test_alt_prepends_escape ... ok
[INFO] [stdout] test test_backspace ... ok
[INFO] [stdout] test test_char_keys ... ok
[INFO] [stdout] test test_ctrl_chars ... ok
[INFO] [stdout] test test_ctrl_non_alpha_is_empty ... ok
[INFO] [stdout] test test_ctrl_space ... ok
[INFO] [stdout] test test_delete ... ok
[INFO] [stdout] test test_function_keys ... ok
[INFO] [stdout] test test_home_end ... ok
[INFO] [stdout] test test_back_tab ... ok
[INFO] [stdout] test test_page_keys ... ok
[INFO] [stdout] test test_tab ... ok
[INFO] [stdout] test test_unicode_char ... ok
[INFO] [stdout] test test_unknown_key_empty ... ok
[INFO] [stdout] test test_vt100_color_default ... ok
[INFO] [stdout] test test_vt100_color_rgb ... ok
[INFO] [stdout] test test_vt100_color_indexed ... ok
[INFO] [stdout] test test_enter ... ok
[INFO] [stdout] test test_escape ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_install.rs (/opt/rustwide/target/release/deps/unit_install-ceb89fd6c0563b5f)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test test_add_source_line_adds_newline_before_if_missing ... ok
[INFO] [stdout] test test_add_source_line_appends_to_existing ... ok
[INFO] [stdout] test test_add_source_line_creates_new_file ... ok
[INFO] [stdout] test test_remove_source_line_missing_file_is_ok ... ok
[INFO] [stdout] test test_add_source_line_idempotent ... ok
[INFO] [stdout] test test_remove_source_line_preserves_trailing_newline ... ok
[INFO] [stdout] test test_remove_source_line_no_change_when_not_present ... ok
[INFO] [stdout] test test_which_nonexistent_command ... ok
[INFO] [stdout] test test_remove_source_line_removes_the_line ... ok
[INFO] [stdout] test test_which_known_command ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/unit_notes.rs (/opt/rustwide/target/release/deps/unit_notes-d572aff80adbd031)
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test test_file_for_key_follows_link ... ok
[INFO] [stdout] test test_ensure_dir_creates_dirs ... ok
[INFO] [stdout] test test_cleanup_scope_tmux_forces_tmux_removal ... ok
[INFO] [stdout] test test_cleanup_removes_tmux_note_outside_tmux ... ok
[INFO] [stdout] test test_cleanup_keeps_live_shell_note ... ok
[INFO] [stdout] test test_get_shell_pid_returns_some ... ok
[INFO] [stdout] test test_label_for_key_no_link_returns_key ... ok
[INFO] [stdout] test test_cleanup_keeps_named_note_by_default ... ok
[INFO] [stdout] test test_file_for_key_no_link ... ok
[INFO] [stdout] test test_cleanup_scope_named_removes_named ... ok
[INFO] [stdout] test test_cleanup_scope_unprefixed ... ok
[INFO] [stdout] test test_cleanup_removes_dead_shell_note ... ok
[INFO] [stdout] test test_name_window_migrates_existing_content ... ok
[INFO] [stdout] test test_label_for_key_with_link_returns_name ... ok
[INFO] [stdout] test test_remove_named_also_removes_links ... ok
[INFO] [stdout] test test_cleanup_superseded_tmux_removes_md_keeps_link ... ok
[INFO] [stdout] test test_remove_named_returns_false_when_not_found ... ok
[INFO] [stdout] test test_remove_named_deletes_file ... ok
[INFO] [stdout] test test_shell_session_key_format ... ok
[INFO] [stdout] test test_cleanup_scope_all_removes_everything ... ok
[INFO] [stdout] test test_cleanup_dryrun_does_not_delete ... ok
[INFO] [stdout] test test_remove_named_dryrun_does_not_delete ... ok
[INFO] [stdout] test test_list_notes_empty ... ok
[INFO] [stdout] test test_list_notes_line_count ... ok
[INFO] [stdout] test test_name_window_no_migrate_when_note_empty ... ok
[INFO] [stdout] test test_list_notes_sources_for_named ... ok
[INFO] [stdout] test test_name_window_creates_link ... ok
[INFO] [stdout] test test_migrate_to_meta_moves_link_and_pid_files ... ok
[INFO] [stdout] test test_list_notes_returns_all_types ... ok
[INFO] [stdout] test test_link_sources_builds_reverse_map ... ok
[INFO] [stdout] test test_name_window_no_migrate_when_target_exists ... ok
[INFO] [stderr]      Running tests/unit_tmux.rs (/opt/rustwide/target/release/deps/unit_tmux-9f80c30ea377afea)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test test_is_in_tmux_false_without_tmux_env ... ok
[INFO] [stdout] test test_shell_escape_multiple_single_quotes ... ok
[INFO] [stdout] test test_shell_escape_simple_string ... ok
[INFO] [stdout] test test_shell_escape_special_chars ... ok
[INFO] [stdout] test test_shell_escape_with_spaces ... ok
[INFO] [stdout] test test_window_label_map_returns_empty_outside_tmux ... ok
[INFO] [stdout] test test_window_display_label_returns_none_outside_tmux ... ok
[INFO] [stdout] test test_shell_escape_empty_string ... ok
[INFO] [stdout] test test_shell_escape_single_quote ... ok
[INFO] [stdout] test test_live_window_keys_empty_outside_tmux ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tnote
[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" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03", kill_on_drop: false }`
[INFO] [stdout] f732dfc38b78171f7624a56b0817a2ad512a31662e88ac861d449e59b974fd03
