[INFO] cloning repository https://github.com/frectonz/pm3
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/frectonz/pm3" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffrectonz%2Fpm3", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffrectonz%2Fpm3'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9c00a7d693fa03bbf335de9181db60746a430926
[INFO] testing frectonz/pm3 against beta-2026-03-05 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffrectonz%2Fpm3" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/frectonz/pm3
[INFO] finished tweaking git repo https://github.com/frectonz/pm3
[INFO] tweaked toml for git repo https://github.com/frectonz/pm3 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/frectonz/pm3 on toolchain beta-2026-03-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/frectonz/pm3 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3de143ad3c317417c6f53babe812370bd7b613a40ebc8ca2aaf5fc15da123a25
[INFO] running `Command { std: "docker" "start" "-a" "3de143ad3c317417c6f53babe812370bd7b613a40ebc8ca2aaf5fc15da123a25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3de143ad3c317417c6f53babe812370bd7b613a40ebc8ca2aaf5fc15da123a25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3de143ad3c317417c6f53babe812370bd7b613a40ebc8ca2aaf5fc15da123a25", kill_on_drop: false }`
[INFO] [stdout] 3de143ad3c317417c6f53babe812370bd7b613a40ebc8ca2aaf5fc15da123a25
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b1180a5e798aef60717c3f44aeb2a4cdaa626c923e024565ef78d6ee997068d9
[INFO] running `Command { std: "docker" "start" "-a" "b1180a5e798aef60717c3f44aeb2a4cdaa626c923e024565ef78d6ee997068d9", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling instability v0.3.11
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling owo-colors v4.2.3
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling lru v0.16.3
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling deranged v0.5.5
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling line-clipping v0.3.5
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]    Compiling zmij v1.0.20
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]    Compiling gimli v0.32.3
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling nix v0.31.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling console v0.16.2
[INFO] [stderr]    Compiling iri-string v0.7.10
[INFO] [stderr]    Compiling unit-prefix v0.5.2
[INFO] [stderr]    Compiling clap_lex v0.7.7
[INFO] [stderr]    Compiling unicode-linebreak v0.1.5
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling smawk v0.3.2
[INFO] [stderr]    Compiling indenter v0.3.4
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling rustc-demangle v0.1.27
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling clap_builder v4.5.57
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]    Compiling indicatif v0.18.3
[INFO] [stderr]    Compiling tracing-error v0.2.1
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling inotify v0.11.0
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling serde_spanned v1.0.4
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling notify-types v2.1.0
[INFO] [stderr]    Compiling winnow v0.6.26
[INFO] [stderr]    Compiling toml_writer v1.0.6+spec-1.1.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling notify v8.2.0
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling cron v0.15.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling addr2line v0.25.1
[INFO] [stderr]    Compiling aws-lc-sys v0.37.0
[INFO] [stderr]    Compiling toml_parser v1.0.6+spec-1.1.0
[INFO] [stderr]    Compiling toml v0.9.11+spec-1.1.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling cliclack v0.3.8
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling kasuari v0.4.11
[INFO] [stderr]    Compiling comfy-table v7.2.2
[INFO] [stderr]    Compiling clap v4.5.57
[INFO] [stderr]    Compiling color-eyre v0.6.5
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling ratatui-core v0.1.0
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling ratatui-macros v0.7.0
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling pm3 v0.1.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 50s
[INFO] running `Command { std: "docker" "inspect" "b1180a5e798aef60717c3f44aeb2a4cdaa626c923e024565ef78d6ee997068d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b1180a5e798aef60717c3f44aeb2a4cdaa626c923e024565ef78d6ee997068d9", kill_on_drop: false }`
[INFO] [stdout] b1180a5e798aef60717c3f44aeb2a4cdaa626c923e024565ef78d6ee997068d9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fc2829b4b96e1490c07797e0ef55b7e1dfa7d03c57561030428abb38c89c2ea8
[INFO] running `Command { std: "docker" "start" "-a" "fc2829b4b96e1490c07797e0ef55b7e1dfa7d03c57561030428abb38c89c2ea8", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling predicates-core v1.0.9
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling assert_cmd v2.1.2
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling predicates-tree v1.0.12
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling tempfile v3.24.0
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling comfy-table v7.2.2
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling pm3 v0.1.8 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling predicates v3.1.3
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 30.38s
[INFO] running `Command { std: "docker" "inspect" "fc2829b4b96e1490c07797e0ef55b7e1dfa7d03c57561030428abb38c89c2ea8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc2829b4b96e1490c07797e0ef55b7e1dfa7d03c57561030428abb38c89c2ea8", kill_on_drop: false }`
[INFO] [stdout] fc2829b4b96e1490c07797e0ef55b7e1dfa7d03c57561030428abb38c89c2ea8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c3e329b0d0881a3ad26407dc6dba1522ac798387b425148d405352ee5c06abca
[INFO] running `Command { std: "docker" "start" "-a" "c3e329b0d0881a3ad26407dc6dba1522ac798387b425148d405352ee5c06abca", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.83s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pm3-eb29c49fbe6c5733)
[INFO] [stdout] 
[INFO] [stdout] running 239 tests
[INFO] [stdout] test cli::tests::test_info_missing_name ... ok
[INFO] [stdout] test cli::tests::test_optional_names ... ok
[INFO] [stdout] test cli::tests::test_kill ... ok
[INFO] [stdout] test cli::tests::test_info ... ok
[INFO] [stdout] test cli::tests::test_list ... ok
[INFO] [stdout] test cli::tests::test_daemon_flag ... ok
[INFO] [stdout] test cli::tests::test_flush ... ok
[INFO] [stdout] test cli::tests::test_no_args_no_command ... ok
[INFO] [stdout] test cli::tests::test_restart_no_args ... ok
[INFO] [stdout] test cli::tests::test_init ... ok
[INFO] [stdout] test cli::tests::test_resurrect ... ok
[INFO] [stdout] test cli::tests::test_log_defaults ... ok
[INFO] [stdout] test cli::tests::test_reload ... ok
[INFO] [stdout] test cli::tests::test_list_view_alias ... ok
[INFO] [stdout] test cli::tests::test_save ... ok
[INFO] [stdout] test cli::tests::test_signal ... ok
[INFO] [stdout] test cli::tests::test_start_with_multiple_names ... ok
[INFO] [stdout] test cli::tests::test_start_with_name_and_env ... ok
[INFO] [stdout] test cli::tests::test_start_with_short_wait ... ok
[INFO] [stdout] test cli::tests::test_start_with_wait ... ok
[INFO] [stdout] test config::tests::test_backslash_in_name_rejected ... ok
[INFO] [stdout] test cli::tests::test_start_with_name ... ok
[INFO] [stdout] test cli::tests::test_tui ... ok
[INFO] [stdout] test cli::tests::test_unstartup ... ok
[INFO] [stdout] test config::tests::test_apply_environment_merges ... ok
[INFO] [stdout] test cli::tests::test_stop_no_args ... ok
[INFO] [stdout] test cli::tests::test_signal_missing_args ... ok
[INFO] [stdout] test cli::tests::test_start_no_args ... ok
[INFO] [stdout] test config::tests::test_colon_in_name_rejected ... ok
[INFO] [stdout] test config::tests::test_env_environment_sections ... ok
[INFO] [stdout] test cli::tests::test_log_with_options ... ok
[INFO] [stdout] test cli::tests::test_startup ... ok
[INFO] [stdout] test config::tests::test_env_file_string_and_array ... ok
[INFO] [stdout] test config::tests::test_forward_slash_in_name_rejected ... ok
[INFO] [stdout] test config::tests::test_instances_default_none ... ok
[INFO] [stdout] test config::tests::test_missing_command_errors ... ok
[INFO] [stdout] test config::tests::test_instances_field_parsed ... ok
[INFO] [stdout] test config::tests::test_load_env_files_relative_to_cwd ... ok
[INFO] [stdout] test config::tests::test_multiple_sections ... ok
[INFO] [stdout] test config::tests::test_optional_fields_default ... ok
[INFO] [stdout] test config::tests::test_empty_file_errors ... ok
[INFO] [stdout] test cli::tests::test_unknown_subcommand ... ok
[INFO] [stdout] test cli::tests::test_start_with_env ... ok
[INFO] [stdout] test config::tests::test_unknown_field_errors ... ok
[INFO] [stdout] test config::tests::test_restart_policy_variants ... ok
[INFO] [stdout] test cron::tests::test_next_run_duration_every_5_min ... ok
[INFO] [stdout] test cron::tests::test_parse_invalid_expression ... ok
[INFO] [stdout] test cron::tests::test_parse_empty_expression ... ok
[INFO] [stdout] test deps::tests::test_circular_self_dependency ... ok
[INFO] [stdout] test cron::tests::test_parse_every_5_minutes ... ok
[INFO] [stdout] test cron::tests::test_parse_daily_at_3am ... ok
[INFO] [stdout] test deps::tests::test_circular_three_nodes ... ok
[INFO] [stdout] test cron::tests::test_next_run_duration_is_positive ... ok
[INFO] [stdout] test deps::tests::test_topo_linear_chain ... ok
[INFO] [stdout] test deps::tests::test_topo_no_deps ... ok
[INFO] [stdout] test config::tests::test_valid_process_name_accepted ... ok
[INFO] [stdout] test deps::tests::test_reverse_order ... ok
[INFO] [stdout] test cron::tests::test_parse_every_minute ... ok
[INFO] [stdout] test deps::tests::test_topo_diamond ... ok
[INFO] [stdout] test env_file::tests::test_basic_key_value ... ok
[INFO] [stdout] test deps::tests::test_validate_all_present ... ok
[INFO] [stdout] test deps::tests::test_validate_missing_dep ... ok
[INFO] [stdout] test deps::tests::test_expand_dependents ... ok
[INFO] [stdout] test env_file::tests::test_comments_and_blank_lines ... ok
[INFO] [stdout] test env_file::tests::test_double_quoted_escaped_backslash ... ok
[INFO] [stdout] test env_file::tests::test_double_quoted_escaped_newline ... ok
[INFO] [stdout] test env_file::tests::test_double_quoted_escaped_quote ... ok
[INFO] [stdout] test deps::tests::test_topo_parallel_roots ... ok
[INFO] [stdout] test env_file::tests::test_double_quoted_escaped_tab ... ok
[INFO] [stdout] test env_file::tests::test_double_quoted_unknown_escape_keeps_backslash ... ok
[INFO] [stdout] test env_file::tests::test_empty_value ... ok
[INFO] [stdout] test env_file::tests::test_single_quoted_value ... ok
[INFO] [stdout] test env_file::tests::test_missing_file_error ... ok
[INFO] [stdout] test env_file::tests::test_whitespace_trimming ... ok
[INFO] [stdout] test env_file::tests::test_value_with_equals ... ok
[INFO] [stdout] test env_file::tests::test_single_quoted_no_escape_processing ... ok
[INFO] [stdout] test health::tests::test_parse_empty_string ... ok
[INFO] [stdout] test health::tests::test_parse_https_url ... ok
[INFO] [stdout] test health::tests::test_parse_http_url ... ok
[INFO] [stdout] test health::tests::test_parse_tcp_invalid_port ... ok
[INFO] [stdout] test health::tests::test_parse_invalid_scheme ... ok
[INFO] [stdout] test config::tests::test_watch_bool_and_string ... ok
[INFO] [stdout] test cron::tests::test_parse_complex_expression ... ok
[INFO] [stdout] test deps::tests::test_expand_deps ... ok
[INFO] [stdout] test health::tests::test_parse_tcp_ipv6_bracketed ... ok
[INFO] [stdout] test health::tests::test_parse_tcp_ipv6_full ... ok
[INFO] [stdout] test health::tests::test_parse_tcp_ipv6_missing_bracket ... ok
[INFO] [stdout] test health::tests::test_parse_tcp_missing_port ... ok
[INFO] [stdout] test health::tests::test_parse_tcp_url_with_hostname ... ok
[INFO] [stdout] test config::tests::test_valid_toml_parses ... ok
[INFO] [stdout] test init::tests::test_generate_toml_all_fields ... ok
[INFO] [stdout] test health::tests::test_parse_tcp_url ... ok
[INFO] [stdout] test init::tests::test_generate_toml_roundtrips ... ok
[INFO] [stdout] test init::tests::test_parse_env_pairs_invalid ... ok
[INFO] [stdout] test log::tests::test_tail_file_empty ... ok
[INFO] [stdout] test init::tests::test_generate_toml_multiple_processes ... ok
[INFO] [stdout] test log::tests::test_tail_file_exact_n ... ok
[INFO] [stdout] test init::tests::test_generate_toml_single_process ... ok
[INFO] [stdout] test deps::tests::test_circular_two_nodes ... ok
[INFO] [stdout] test log::tests::test_rotate_log_shifts_existing ... ok
[INFO] [stdout] test init::tests::test_parse_env_pairs ... ok
[INFO] [stdout] test init::tests::test_parse_env_pairs_empty ... ok
[INFO] [stdout] test env_file::tests::test_double_quoted_value ... ok
[INFO] [stdout] test log::tests::test_tail_file_last_n ... ok
[INFO] [stdout] test log::tests::test_tail_file_fewer_than_n ... ok
[INFO] [stdout] test manager::tests::test_expand_instances_basic ... ok
[INFO] [stdout] test log::tests::test_rotate_log_creates_dot1 ... ok
[INFO] [stdout] test log::tests::test_no_timestamp_when_format_is_none ... ok
[INFO] [stdout] test log::tests::test_tail_file_zero_lines ... ok
[INFO] [stdout] test log::tests::test_tail_file_nonexistent ... ok
[INFO] [stdout] test manager::tests::test_expand_instances_clustered_depends_on_clustered ... ok
[INFO] [stdout] test manager::tests::test_expand_instances_no_clusters ... ok
[INFO] [stdout] test log::tests::test_timestamp_format_epoch ... ok
[INFO] [stdout] test manager::tests::test_expand_instances_single_passthrough ... ok
[INFO] [stdout] test manager::tests::test_expand_instances_preserves_custom_group ... ok
[INFO] [stdout] test manager::tests::test_resolve_config_names_exact_match_preferred ... ok
[INFO] [stdout] test manager::tests::test_resolve_config_names_cluster_prefix ... ok
[INFO] [stdout] test manager::tests::test_resolve_config_names_group_fallback ... ok
[INFO] [stdout] test memory::tests::test_parse_case_insensitive ... ok
[INFO] [stdout] test manager::tests::test_expand_instances_rewrites_deps ... ok
[INFO] [stdout] test memory::tests::test_parse_kilobytes ... ok
[INFO] [stdout] test memory::tests::test_parse_gigabytes ... ok
[INFO] [stdout] test memory::tests::test_parse_gigabytes_gb ... ok
[INFO] [stdout] test memory::tests::test_parse_empty_errors ... ok
[INFO] [stdout] test memory::tests::test_parse_invalid_suffix_errors ... ok
[INFO] [stdout] test log::tests::test_timestamp_format_hm_only ... ok
[INFO] [stdout] test log::tests::test_timestamp_format_ymd_hms ... ok
[INFO] [stdout] test log::tests::test_rotate_log_deletes_oldest ... ok
[INFO] [stdout] test memory::tests::test_parse_megabytes ... ok
[INFO] [stdout] test log::tests::test_timestamp_format_date_only ... ok
[INFO] [stdout] test memory::tests::test_parse_megabytes_mb ... ok
[INFO] [stdout] test memory::tests::test_parse_plain_bytes ... ok
[INFO] [stdout] test memory::tests::test_parse_with_whitespace ... ok
[INFO] [stdout] test memory::tests::test_parse_kilobytes_kb ... ok
[INFO] [stdout] test paths::tests::test_data_dir_linux ... ok
[INFO] [stdout] test paths::tests::test_pid_file_under_data_dir ... ok
[INFO] [stdout] test paths::tests::test_rotated_stderr_log_format ... ok
[INFO] [stdout] test paths::tests::test_stdout_log_includes_name ... ok
[INFO] [stdout] test paths::tests::test_stderr_log_includes_name ... ok
[INFO] [stdout] test pid::tests::test_is_daemon_running_stale_pid ... ok
[INFO] [stdout] test pid::tests::test_read_nonexistent_pid_file ... ok
[INFO] [stdout] test paths::tests::test_dump_file_under_data_dir ... ok
[INFO] [stdout] test paths::tests::test_rotated_stdout_log_format ... ok
[INFO] [stdout] test pid::tests::test_is_daemon_running_with_self ... ok
[INFO] [stdout] test memory::tests::test_parse_no_number_errors ... ok
[INFO] [stdout] test process::tests::test_min_uptime_resets_counter_before_policy_check ... ok
[INFO] [stdout] test process::tests::test_parse_command_multiple_args ... ok
[INFO] [stdout] test process::tests::test_backoff_sequence ... ok
[INFO] [stdout] test process::tests::test_parse_command_no_args ... ok
[INFO] [stdout] test process::tests::test_parse_command_quoted_args ... ok
[INFO] [stdout] test process::tests::test_parse_empty_command ... ok
[INFO] [stdout] test process::tests::test_backoff_cap ... ok
[INFO] [stdout] test process::tests::test_parse_command_single_quotes ... ok
[INFO] [stdout] test process::tests::test_parse_signal_empty ... ok
[INFO] [stdout] test pid::tests::test_write_and_read_pid_file ... ok
[INFO] [stdout] test process::tests::test_parse_signal_invalid ... ok
[INFO] [stdout] test process::tests::test_parse_signal_sigint ... ok
[INFO] [stdout] test process::tests::test_parse_signal_sigterm ... ok
[INFO] [stdout] test process::tests::test_parse_signal_sighup ... ok
[INFO] [stdout] test process::tests::test_parse_signal_sigusr2 ... ok
[INFO] [stdout] test paths::tests::test_log_dir_under_data_dir ... ok
[INFO] [stdout] test paths::tests::test_socket_file_under_data_dir ... ok
[INFO] [stdout] test process::tests::test_parse_signal_sigusr1 ... ok
[INFO] [stdout] test process::tests::test_restart_default_is_on_failure ... ok
[INFO] [stdout] test process::tests::test_parse_signal_without_sig_prefix ... ok
[INFO] [stdout] test process::tests::test_restart_always ... ok
[INFO] [stdout] test process::tests::test_parse_simple_command ... ok
[INFO] [stdout] test process::tests::test_parse_whitespace_only ... ok
[INFO] [stdout] test process::tests::test_restart_never ... ok
[INFO] [stdout] test process::tests::test_restart_max_restarts_exceeded ... ok
[INFO] [stdout] test process::tests::test_restart_on_failure_exit_nonzero ... ok
[INFO] [stdout] test protocol::tests::test_decode_missing_required_field ... ok
[INFO] [stdout] test process::tests::test_restart_on_failure_exit_zero ... ok
[INFO] [stdout] test protocol::tests::test_decode_trims_newline ... ok
[INFO] [stdout] test process::tests::test_restart_signal_killed_no_exit_code ... ok
[INFO] [stdout] test protocol::tests::test_decode_unknown_type ... ok
[INFO] [stdout] test process::tests::test_restart_stop_exit_codes ... ok
[INFO] [stdout] test protocol::tests::test_decode_invalid_json ... ok
[INFO] [stdout] test protocol::tests::test_encode_appends_newline ... ok
[INFO] [stdout] test protocol::tests::test_process_status_display ... ok
[INFO] [stdout] test protocol::tests::test_request_flush_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_info_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_kill_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_log_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_restart_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_resurrect_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_save_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_response_error_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_reload_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_start_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_stop_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_list_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_request_signal_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_response_success_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_response_process_detail_roundtrip ... ok
[INFO] [stdout] test startup::tests::test_plist_contains_daemon_arg ... ok
[INFO] [stdout] test startup::tests::test_plist_contains_exe_path ... ok
[INFO] [stdout] test startup::tests::test_plist_contains_keep_alive ... ok
[INFO] [stdout] test startup::tests::test_plist_contains_log_paths ... ok
[INFO] [stdout] test startup::tests::test_plist_contains_run_at_load ... ok
[INFO] [stdout] test startup::tests::test_plist_contains_label ... ok
[INFO] [stdout] test startup::tests::test_service_file_path_linux ... ok
[INFO] [stdout] test startup::tests::test_plist_valid_xml_structure ... ok
[INFO] [stdout] test startup::tests::test_systemd_contains_all_sections ... ok
[INFO] [stdout] test startup::tests::test_systemd_contains_exec_start ... ok
[INFO] [stdout] test startup::tests::test_systemd_contains_description ... ok
[INFO] [stdout] test startup::tests::test_systemd_contains_wanted_by ... ok
[INFO] [stdout] test startup::tests::test_systemd_contains_restart_policy ... ok
[INFO] [stdout] test sys::tests::test_pty_reader_eof_on_slave_close ... ok
[INFO] [stdout] test sys::tests::test_create_pty_returns_valid_fds ... ok
[INFO] [stdout] test watch::tests::test_debounce_duration_default_and_custom ... ok
[INFO] [stdout] test watch::tests::test_resolve_watch_false ... ok
[INFO] [stdout] test watch::tests::test_resolve_watch_none ... ok
[INFO] [stdout] test watch::tests::test_resolve_watch_path_absolute ... ok
[INFO] [stdout] test watch::tests::test_resolve_watch_path_relative ... ok
[INFO] [stdout] test watch::tests::test_resolve_watch_path_relative_no_cwd ... ok
[INFO] [stdout] test memory::tests::test_parse_fractional ... ok
[INFO] [stdout] test watch::tests::test_resolve_watch_true_no_cwd ... ok
[INFO] [stdout] test watch::tests::test_resolve_watch_true_with_cwd ... ok
[INFO] [stdout] test watch::tests::test_should_ignore_empty_patterns ... ok
[INFO] [stdout] test watch::tests::test_should_ignore_git ... ok
[INFO] [stdout] test watch::tests::test_should_ignore_matching_component ... ok
[INFO] [stdout] test watch::tests::test_should_ignore_multiple_patterns ... ok
[INFO] [stdout] test watch::tests::test_should_ignore_no_match ... ok
[INFO] [stdout] test watch::tests::test_should_restart_for_event_kind ... ok
[INFO] [stdout] test protocol::tests::test_response_log_line_roundtrip ... ok
[INFO] [stdout] test protocol::tests::test_response_process_list_roundtrip ... ok
[INFO] [stdout] test memory::tests::test_read_process_stats_current_process ... ok
[INFO] [stdout] test memory::tests::test_read_rss_current_process ... ok
[INFO] [stdout] test memory::tests::test_read_rss_nonexistent_pid ... ok
[INFO] [stdout] test memory::tests::test_read_process_stats_nonexistent_pid ... ok
[INFO] [stdout] test sys::tests::test_pty_reader_reads_written_data ... ok
[INFO] [stdout] test config::tests::test_path_traversal_rejected ... ok
[INFO] [stdout] test sys::tests::test_pty_slave_is_a_tty ... ok
[INFO] [stdout] test sys::tests::test_pty_child_sees_isatty_true ... ok
[INFO] [stdout] test sys::tests::test_pty_reader_multiple_writes ... ok
[INFO] [stdout] test log::tests::test_no_rotation_below_threshold ... ok
[INFO] [stdout] test log::tests::test_rotation_triggered_at_threshold ... ok
[INFO] [stdout] test log::tests::test_rotation_keeps_only_three_rotated_files ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/pm3-6ec68a3d693064b5)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 239 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.99s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::test_format_uptime_days ... ok
[INFO] [stdout] test tests::test_format_uptime_seconds ... ok
[INFO] [stdout] test tests::test_format_uptime_none ... ok
[INFO] [stdout] test tests::test_format_uptime_hours ... ok
[INFO] [stdout] test tests::test_format_uptime_minutes ... ok
[INFO] [stderr]      Running tests/daemon.rs (/opt/rustwide/target/debug/deps/daemon-0be897e3093861a7)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 95 tests
[INFO] [stdout] test test_client_sends_request_gets_response ... ok
[INFO] [stdout] test test_dump_serialization_roundtrip ... ok
[INFO] [stdout] test test_circular_dependency_error ... ok
[INFO] [stdout] test test_daemon_creates_pid_and_socket ... ok
[INFO] [stdout] test test_daemon_handles_multiple_sequential_connections ... ok
[INFO] [stdout] test test_daemon_rejects_duplicate_instance ... ok
[INFO] [stdout] test test_env_unknown_name_errors ... ok
[INFO] [stdout] test test_dependency_stop_order ... ok
[INFO] [stdout] test test_dependency_start_order ... ok
[INFO] [stdout] test test_env_file_array_loads_multiple_files ... ok
[INFO] [stdout] test test_env_file_values_available_in_child ... ok
[INFO] [stdout] test test_cluster_mode_stop_by_logical_name ... ok
[INFO] [stdout] test test_cluster_mode_starts_multiple_instances ... ok
[INFO] [stdout] test test_env_production_overrides_base ... ok
[INFO] [stdout] test test_env_start_merges_env_production ... ok
[INFO] [stdout] test test_cluster_mode_stop_single_instance ... ok
[INFO] [stdout] test test_flush_nonexistent_process_returns_error ... ok
[INFO] [stdout] test test_group_not_found_returns_error ... ok
[INFO] [stdout] test test_info_nonexistent_returns_error ... ok
[INFO] [stdout] test test_env_vars_dont_leak_between_processes ... ok
[INFO] [stdout] test test_list_empty_returns_no_processes ... ok
[INFO] [stdout] test test_group_start_by_group_name ... ok
[INFO] [stdout] test test_info_returns_process_detail ... ok
[INFO] [stdout] test test_env_vars_passed_to_child ... ok
[INFO] [stdout] test test_load_config_file_not_found ... ok
[INFO] [stdout] test test_flush_deletes_rotated_files ... ok
[INFO] [stdout] test test_auto_restart_recovers_after_crash ... ok
[INFO] [stdout] test test_list_multiple_processes_all_fields ... ok
[INFO] [stdout] test test_flush_empties_log_file ... ok
[INFO] [stdout] test test_list_process_info_fields ... ok
[INFO] [stdout] test test_log_directory_created ... ok
[INFO] [stdout] test test_flush_all_empties_all_logs ... ok
[INFO] [stdout] test test_group_stop_by_group_name ... ok
[INFO] [stdout] test test_cluster_mode_env_injection ... ok
[INFO] [stdout] test test_inline_env_overrides_env_file ... ok
[INFO] [stdout] test test_log_nonexistent_process_returns_error ... ok
[INFO] [stdout] test test_log_capture_stdout ... ok
[INFO] [stdout] test test_log_capture_stderr ... ok
[INFO] [stdout] test test_auto_restart_list_shows_restart_count ... ok
[INFO] [stdout] test test_log_lines_param_limits_output ... ok
[INFO] [stdout] test test_log_no_timestamp_without_format ... ok
[INFO] [stdout] test test_log_shows_stdout_lines ... ok
[INFO] [stdout] test test_auto_restart_stops_after_max_restarts ... ok
[INFO] [stdout] test test_missing_dependency_error ... ok
[INFO] [stdout] test test_log_timestamp_prefix ... ok
[INFO] [stdout] test test_log_single_process_no_name_prefix ... ok
[INFO] [stdout] test test_missing_env_file_returns_error ... ok
[INFO] [stdout] test test_log_no_name_interleaves_all_processes ... ok
[INFO] [stdout] test test_pre_start_failure_prevents_start ... ok
[INFO] [stdout] test test_process_name_takes_priority_over_group ... ok
[INFO] [stdout] test test_log_timestamp_stderr ... ok
[INFO] [stdout] test test_exponential_backoff_increases_delay_between_restarts ... ok
[INFO] [stdout] test test_pre_start_runs_before_process ... ok
[INFO] [stdout] test test_multiple_env_vars_passed_correctly ... ok
[INFO] [stdout] test test_post_stop_runs_after_stop ... ok
[INFO] [stdout] test test_cron_restart_triggers ... ok
[INFO] [stdout] test test_restart_policy_never_does_not_restart ... ok
[INFO] [stdout] test test_resurrect_no_dump_file_returns_error ... ok
[INFO] [stdout] test test_restart_preserves_process_config ... ok
[INFO] [stdout] test test_restart_policy_on_failure_exit_zero_not_restarted ... ok
[INFO] [stdout] test test_restart_policy_stop_exit_codes_prevents_restart ... ok
[INFO] [stdout] test test_signal_nonexistent_process_returns_error ... ok
[INFO] [stdout] test test_signal_invalid_signal_returns_error ... ok
[INFO] [stdout] test test_save_writes_dump_file ... ok
[INFO] [stdout] test test_restart_policy_always_restarts_on_clean_exit ... ok
[INFO] [stdout] test test_restart_runs_post_stop_then_pre_start ... ok
[INFO] [stdout] test test_min_uptime_quick_crash_increments_restart_count ... ok
[INFO] [stdout] test test_start_nonexistent_name_returns_error ... ok
[INFO] [stdout] test test_signal_stopped_process_returns_error ... ok
[INFO] [stdout] test test_restart_policy_on_failure_exit_nonzero_restarts ... ok
[INFO] [stdout] test test_start_named_process_from_config ... ok
[INFO] [stdout] test test_min_uptime_stable_run_resets_restart_count ... ok
[INFO] [stdout] test test_spawn_process_tracks_pid ... ok
[INFO] [stdout] test test_start_one_process_from_config ... ok
[INFO] [stdout] test test_stop_process_handles_sigterm ... ok
[INFO] [stdout] test test_signal_sends_to_process ... ok
[INFO] [stdout] test test_spawn_with_cwd ... ok
[INFO] [stdout] test test_log_rotation_only_keeps_three_files ... ok
[INFO] [stdout] test test_start_two_processes_from_config ... ok
[INFO] [stdout] test test_resurrect_marks_dead_processes_as_restarted ... ok
[INFO] [stdout] test test_stop_custom_kill_signal_sigint ... ok
[INFO] [stdout] test test_stderr_still_piped_not_tty ... ok
[INFO] [stdout] test test_stdout_uses_pty_child_sees_tty ... ok
[INFO] [stdout] test test_log_follow_streams_new_lines ... ok
[INFO] [stdout] test test_resurrect_restores_processes ... ok
[INFO] [stdout] test test_cron_restart_no_trigger_with_long_interval ... ok
[INFO] [stdout] test test_stop_process_ignores_sigterm_gets_sigkill ... ok
[INFO] [stdout] test test_watch_debounce_rapid_changes_trigger_one_restart ... ok
[INFO] [stdout] test test_log_rotation_creates_rotated_file ... ok
[INFO] [stdout] test test_watch_true_watches_cwd ... ok
[INFO] [stdout] test test_watch_restarts_on_file_change ... ok
[INFO] [stdout] test test_max_memory_restart_triggers ... ok
[INFO] [stdout] test test_watch_debounce_respects_custom_duration ... ok
[INFO] [stdout] test test_watch_ignore_excludes_directories ... ok
[INFO] [stdout] test test_max_memory_no_restart_when_under_limit ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 95 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 13.97s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/e2e.rs (/opt/rustwide/target/debug/deps/e2e-5c2bb9654887a9fd)
[INFO] [stdout] 
[INFO] [stdout] running 43 tests
[INFO] [stdout] test test_e2e_init_generates_valid_toml ... ok
[INFO] [stdout] test test_e2e_init_multiple_processes ... ok
[INFO] [stdout] test test_e2e_list_no_processes_shows_message ... ok
[INFO] [stdout] test test_e2e_info_nonexistent_errors ... ok
[INFO] [stdout] test test_e2e_info_prints_detail ... ok
[INFO] [stdout] test test_e2e_list_shows_process_details ... ok
[INFO] [stdout] test test_e2e_list_shows_group_column ... ok
[INFO] [stdout] test test_e2e_kill_stops_processes_and_cleans_up ... ok
[INFO] [stdout] test test_e2e_reload_nonexistent_errors ... ok
[INFO] [stdout] test test_e2e_flush_named_process ... ok
[INFO] [stdout] test test_e2e_log_lines_param ... ok
[INFO] [stdout] test test_e2e_dependency_start_order ... ok
[INFO] [stdout] test test_e2e_flush_all ... ok
[INFO] [stdout] test test_e2e_log_no_name_shows_interleaved ... ok
[INFO] [stdout] test test_e2e_kill_then_list_auto_starts_fresh_daemon ... ok
[INFO] [stdout] test test_e2e_log_shows_output ... ok
[INFO] [stdout] test test_e2e_reload_pid_changes ... ok
[INFO] [stdout] test test_e2e_reload_without_health_check_falls_back ... ok
[INFO] [stdout] test test_e2e_full_lifecycle ... ok
[INFO] [stdout] test test_e2e_restart_one_process_gets_new_pid ... ok
[INFO] [stdout] test test_e2e_signal_nonexistent_errors ... ok
[INFO] [stdout] test test_e2e_start_immediate_exit_reports_error ... ok
[INFO] [stdout] test test_e2e_start_named_process_only ... ok
[INFO] [stdout] test test_e2e_startup_creates_service_file ... ok
[INFO] [stdout] test test_e2e_signal_success ... ok
[INFO] [stdout] test test_e2e_start_nonexistent_name_errors ... ok
[INFO] [stdout] test test_e2e_restart_all_processes_get_new_pids ... ok
[INFO] [stdout] test test_e2e_unstartup_no_file_prints_message ... ok
[INFO] [stdout] test test_e2e_startup_idempotent ... ok
[INFO] [stdout] test test_e2e_start_one_process_running ... ok
[INFO] [stdout] test test_e2e_save_creates_snapshot_file ... ok
[INFO] [stdout] test test_e2e_start_two_processes_running ... ok
[INFO] [stdout] test test_e2e_start_stopped_processes ... ok
[INFO] [stdout] test test_e2e_kill_then_resurrect_restores_processes ... ok
[INFO] [stdout] test test_e2e_start_wait_returns_after_online ... ok
[INFO] [stdout] test test_e2e_stop_nonexistent_prints_error ... ok
[INFO] [stdout] test test_e2e_stop_one_process_others_keep_running ... ok
[INFO] [stdout] test test_e2e_stop_all_processes ... ok
[INFO] [stdout] test test_e2e_reload_with_health_check ... ok
[INFO] [stdout] test test_e2e_start_no_config_file_errors ... ok
[INFO] [stdout] test test_e2e_unstartup_removes_service_file ... FAILED
[INFO] [stdout] test test_e2e_init_warns_on_existing_toml ... ok
[INFO] [stdout] test test_e2e_resurrect_stores_absolute_paths ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_e2e_unstartup_removes_service_file stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'test_e2e_unstartup_removes_service_file' (4156) panicked at tests/e2e.rs:1893:5:
[INFO] [stdout] service file should exist before unstartup
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5a6bc9036bca - std[b80a194dd3c418bb]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5a6bc9036bca - std[b80a194dd3c418bb]::backtrace_rs::backtrace::trace_unsynchronized::<std[b80a194dd3c418bb]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5a6bc9036bca - std[b80a194dd3c418bb]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5a6bc9036bca - <<std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[10b6fa85044e1869]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5a6bc904ddca - <core[10b6fa85044e1869]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5a6bc904ddca - core[10b6fa85044e1869]::fmt::write
[INFO] [stdout]    6:     0x5a6bc903c932 - std[b80a194dd3c418bb]::io::default_write_fmt::<alloc[dd269455e567d8e9]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5a6bc903c932 - <alloc[dd269455e567d8e9]::vec::Vec<u8> as std[b80a194dd3c418bb]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5a6bc9013ccf - <std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5a6bc9013ccf - std[b80a194dd3c418bb]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5a6bc902e3f9 - std[b80a194dd3c418bb]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5a6bc8e5f7cc - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x5a6bc8e5f7cc - test[826cbc6ef54ab466]::test_main_with_exit_callback::<test[826cbc6ef54ab466]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5a6bc902e5b2 - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x5a6bc902e5b2 - std[b80a194dd3c418bb]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5a6bc9013dba - std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x5a6bc900b4f9 - std[b80a194dd3c418bb]::sys::backtrace::__rust_end_short_backtrace::<std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5a6bc9014a9d - __rustc[9698a3e60dd14283]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5a6bc904e6fc - core[10b6fa85044e1869]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5a6bc8e433da - e2e::test_e2e_unstartup_removes_service_file::hbc05e0e1de43e270
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/e2e.rs:1893:5
[INFO] [stdout]   20:     0x5a6bc8e435d7 - e2e::test_e2e_unstartup_removes_service_file::{{closure}}::h839887d1e2e37bb9
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/e2e.rs:1887:45
[INFO] [stdout]   21:     0x5a6bc8e4ed36 - core::ops::function::FnOnce::call_once::h69e93bc4f7bbfb50
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5a6bc8e538ab - <fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5a6bc8e538ab - test[826cbc6ef54ab466]::__rust_begin_short_backtrace::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5a6bc8e6029b - test[826cbc6ef54ab466]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5a6bc8e6029b - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5a6bc8e6029b - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5a6bc8e6029b - std[b80a194dd3c418bb]::panicking::catch_unwind::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5a6bc8e6029b - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5a6bc8e6029b - test[826cbc6ef54ab466]::run_test_in_process
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5a6bc8e6029b - test[826cbc6ef54ab466]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5a6bc8e5b9b4 - test[826cbc6ef54ab466]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5a6bc8e5b9b4 - std[b80a194dd3c418bb]::sys::backtrace::__rust_begin_short_backtrace::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5a6bc8e62ea2 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x5a6bc8e62ea2 - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5a6bc8e62ea2 - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5a6bc8e62ea2 - std[b80a194dd3c418bb]::panicking::catch_unwind::<(), core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5a6bc8e62ea2 - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5a6bc8e62ea2 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x5a6bc8e62ea2 - <std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1} as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5a6bc9035f3f - <alloc[dd269455e567d8e9]::boxed::Box<dyn core[10b6fa85044e1869]::ops::function::FnOnce<(), Output = ()> + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   41:     0x5a6bc9035f3f - <std[b80a194dd3c418bb]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7210250c9aa4 - <unknown>
[INFO] [stdout]   43:     0x721025156a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_e2e_unstartup_removes_service_file
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 42 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.32s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test e2e`
[INFO] running `Command { std: "docker" "inspect" "c3e329b0d0881a3ad26407dc6dba1522ac798387b425148d405352ee5c06abca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3e329b0d0881a3ad26407dc6dba1522ac798387b425148d405352ee5c06abca", kill_on_drop: false }`
[INFO] [stdout] c3e329b0d0881a3ad26407dc6dba1522ac798387b425148d405352ee5c06abca
