[INFO] cloning repository https://github.com/ytham/SousDev [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ytham/SousDev" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fytham%2FSousDev", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fytham%2FSousDev'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] df4ffbe95a23384912900d520b9a1da85dd7ec0a [INFO] testing ytham/SousDev against master#f9988fefd3add01f414f52b414308e7872622fee for pr-155114 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fytham%2FSousDev" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/ytham/SousDev [INFO] finished tweaking git repo https://github.com/ytham/SousDev [INFO] tweaked toml for git repo https://github.com/ytham/SousDev written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ytham/SousDev on toolchain f9988fefd3add01f414f52b414308e7872622fee [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ytham/SousDev 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" "+f9988fefd3add01f414f52b414308e7872622fee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded mockall v0.13.1 [INFO] [stderr] Downloaded tokio-cron-scheduler v0.13.0 [INFO] [stderr] Downloaded fragile v2.0.1 [INFO] [stderr] Downloaded mockall_derive v0.13.1 [INFO] [stderr] Downloaded tree_magic_mini v3.2.2 [INFO] [stderr] Downloaded wayland-sys v0.29.5 [INFO] [stderr] Downloaded os_pipe v1.2.3 [INFO] [stderr] Downloaded str-buf v1.0.6 [INFO] [stderr] Downloaded error-code v2.3.1 [INFO] [stderr] Downloaded x11-clipboard v0.7.1 [INFO] [stderr] Downloaded wayland-scanner v0.29.5 [INFO] [stderr] Downloaded wayland-commons v0.29.5 [INFO] [stderr] Downloaded winapi-wsapoll v0.1.2 [INFO] [stderr] Downloaded croner v2.2.0 [INFO] [stderr] Downloaded cli-clipboard v0.4.0 [INFO] [stderr] Downloaded wl-clipboard-rs v0.7.0 [INFO] [stderr] Downloaded derive-new v0.5.9 [INFO] [stderr] Downloaded clipboard-win v4.5.0 [INFO] [stderr] Downloaded wayland-client v0.29.5 [INFO] [stderr] Downloaded wayland-protocols v0.29.5 [INFO] [stderr] Downloaded iri-string v0.7.11 [INFO] [stderr] Downloaded x11rb v0.10.1 [INFO] [stderr] Downloaded x11rb-protocol v0.10.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 16d248fa405d42b92768a052215b7af3091d80544097a704a32140ee7143d630 [INFO] running `Command { std: "docker" "start" "-a" "16d248fa405d42b92768a052215b7af3091d80544097a704a32140ee7143d630", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "16d248fa405d42b92768a052215b7af3091d80544097a704a32140ee7143d630", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "16d248fa405d42b92768a052215b7af3091d80544097a704a32140ee7143d630", kill_on_drop: false }` [INFO] [stdout] 16d248fa405d42b92768a052215b7af3091d80544097a704a32140ee7143d630 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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" "+f9988fefd3add01f414f52b414308e7872622fee" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6a7397fc66c59e5d02b4b87bd95966c20724ae727de061689e0f8a69b3cad298 [INFO] running `Command { std: "docker" "start" "-a" "6a7397fc66c59e5d02b4b87bd95966c20724ae727de061689e0f8a69b3cad298", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling itoa v1.0.18 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling xml-rs v0.8.28 [INFO] [stderr] Compiling cc v1.2.57 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling wayland-sys v0.29.5 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling try-lock v0.2.5 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling fixedbitset v0.5.7 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling want v0.3.1 [INFO] [stderr] Compiling downcast-rs v1.2.1 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling openssl-probe v0.2.1 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling instability v0.3.12 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling openssl-sys v0.9.112 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling petgraph v0.8.3 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling iri-string v0.7.11 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling nix v0.24.3 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling gethostname v0.2.3 [INFO] [stderr] Compiling derive-new v0.5.9 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling os_pipe v1.2.3 [INFO] [stderr] Compiling unicode-segmentation v1.13.2 [INFO] [stderr] Compiling tokio-cron-scheduler v0.13.0 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling uuid v1.23.0 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling compact_str v0.8.1 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling encoding_rs v0.8.35 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling unicode-width v0.2.0 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling dotenvy v0.15.7 [INFO] [stderr] Compiling tree_magic_mini v3.2.2 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling wayland-commons v0.29.5 [INFO] [stderr] Compiling x11rb-protocol v0.10.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 tokio-macros v2.6.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling clap_derive v4.6.0 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling clap v4.6.0 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling ratatui v0.29.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling croner v2.2.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling x11rb v0.10.1 [INFO] [stderr] Compiling x11-clipboard v0.7.1 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling wl-clipboard-rs v0.7.0 [INFO] [stderr] Compiling cli-clipboard v0.4.0 [INFO] [stderr] Compiling sousdev v0.1.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 44s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wl-clipboard-rs v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "6a7397fc66c59e5d02b4b87bd95966c20724ae727de061689e0f8a69b3cad298", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6a7397fc66c59e5d02b4b87bd95966c20724ae727de061689e0f8a69b3cad298", kill_on_drop: false }` [INFO] [stdout] 6a7397fc66c59e5d02b4b87bd95966c20724ae727de061689e0f8a69b3cad298 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c2f79709c22ab3ba4b6ad17b5b1da2bbb50be2b0fcc5b5867725c4ce2a666e90 [INFO] running `Command { std: "docker" "start" "-a" "c2f79709c22ab3ba4b6ad17b5b1da2bbb50be2b0fcc5b5867725c4ce2a666e90", kill_on_drop: false }` [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling predicates-core v1.0.10 [INFO] [stderr] Compiling mockall_derive v0.13.1 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling deadpool-runtime v0.1.4 [INFO] [stderr] Compiling termtree v0.5.1 [INFO] [stderr] Compiling assert-json-diff v2.0.2 [INFO] [stderr] Compiling downcast v0.11.0 [INFO] [stderr] Compiling fragile v2.0.1 [INFO] [stderr] Compiling predicates v3.1.4 [INFO] [stderr] Compiling predicates-tree v1.0.13 [INFO] [stderr] Compiling mockall v0.13.1 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling deadpool v0.12.3 [INFO] [stderr] Compiling tokio-cron-scheduler v0.13.0 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling tokio-test v0.4.5 [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 hyper-tls v0.6.0 [INFO] [stderr] Compiling wiremock v0.6.5 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling sousdev v0.1.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::workflows::workflow::ParsedTask` [INFO] [stdout] --> src/workflows/stages/pr_description.rs:337:13 [INFO] [stdout] | [INFO] [stdout] 337 | use crate::workflows::workflow::ParsedTask; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: duplicated attribute [INFO] [stdout] --> src/tui/app.rs:2685:5 [INFO] [stdout] | [INFO] [stdout] 2685 | #[test] [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(duplicate_macro_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 56.99s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wl-clipboard-rs v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "c2f79709c22ab3ba4b6ad17b5b1da2bbb50be2b0fcc5b5867725c4ce2a666e90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c2f79709c22ab3ba4b6ad17b5b1da2bbb50be2b0fcc5b5867725c4ce2a666e90", kill_on_drop: false }` [INFO] [stdout] c2f79709c22ab3ba4b6ad17b5b1da2bbb50be2b0fcc5b5867725c4ce2a666e90 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] ab0444fdecf83d3e0bb623dafd2acd501a837ef20a7ea00fc424f7770ddf334b [INFO] running `Command { std: "docker" "start" "-a" "ab0444fdecf83d3e0bb623dafd2acd501a837ef20a7ea00fc424f7770ddf334b", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `crate::workflows::workflow::ParsedTask` [INFO] [stderr] --> src/workflows/stages/pr_description.rs:337:13 [INFO] [stderr] | [INFO] [stderr] 337 | use crate::workflows::workflow::ParsedTask; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: duplicated attribute [INFO] [stderr] --> src/tui/app.rs:2685:5 [INFO] [stderr] | [INFO] [stderr] 2685 | #[test] [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(duplicate_macro_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `sousdev` (lib test) generated 2 warnings (run `cargo fix --lib -p sousdev --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.69s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wl-clipboard-rs v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/sousdev-4450147bd50e6d2c) [INFO] [stdout] [INFO] [stdout] running 642 tests [INFO] [stdout] test providers::provider::tests::test_completion_result_default ... ok [INFO] [stdout] test providers::provider::tests::test_message_openai_tool_result ... ok [INFO] [stdout] test providers::provider::tests::test_content_block_serialization ... ok [INFO] [stdout] test providers::provider::tests::test_message_tool_results ... ok [INFO] [stdout] test providers::provider::tests::test_message_constructors_backward_compat ... ok [INFO] [stdout] test techniques::critique_loop::tests::test_parse_score_clamps ... ok [INFO] [stdout] test techniques::critique_loop::tests::test_parse_score_float ... ok [INFO] [stdout] test techniques::critique_loop::tests::test_critique_round_serde ... ok [INFO] [stdout] test techniques::critique_loop::tests::test_parse_score_found ... ok [INFO] [stdout] test techniques::critique_loop::tests::test_parse_score_not_found ... ok [INFO] [stdout] test techniques::multi_agent_debate::tests::test_build_initial_prompt_contains_fields ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_build_plan_prompt_standard ... ok [INFO] [stdout] test techniques::multi_agent_debate::tests::test_aggregation_from_str ... ok [INFO] [stdout] test techniques::multi_agent_debate::tests::test_build_debate_prompt_contains_others ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_extract_plan_steps_empty ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_build_plan_prompt_detailed ... ok [INFO] [stdout] test techniques::multi_agent_debate::tests::test_build_debate_prompt_no_others ... ok [INFO] [stdout] test techniques::multi_agent_debate::tests::test_run_multi_agent_debate_judge ... ok [INFO] [stdout] test techniques::react::tests::test_parse_tool_call_bare_json ... ok [INFO] [stdout] test techniques::react::tests::test_extract_json_candidates_fenced ... ok [INFO] [stdout] test providers::tests::resolve_unknown_errors ... ok [INFO] [stdout] test techniques::react::tests::test_extract_json_candidates_bare ... ok [INFO] [stdout] test techniques::react::tests::test_parse_tool_call_json_fenced ... ok [INFO] [stdout] test techniques::reflexion::tests::test_build_trial_context_respects_window ... ok [INFO] [stdout] test techniques::reflexion::tests::test_build_trial_context_no_reflections ... ok [INFO] [stdout] test techniques::react::tests::test_parse_tool_call_plain_text_none ... ok [INFO] [stdout] test techniques::reflexion::tests::test_build_trial_context_with_reflections ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_extract_plan_steps_fallback_lines ... ok [INFO] [stdout] test techniques::react::tests::test_parse_tool_call_xml_style ... ok [INFO] [stdout] test techniques::react::tests::test_run_react_returns_final_answer_immediately ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_is_step_heading_numbered ... ok [INFO] [stdout] test techniques::self_consistency::tests::test_majority_vote_clear_winner ... ok [INFO] [stdout] test techniques::self_consistency::tests::test_majority_vote_empty ... ok [INFO] [stdout] test techniques::self_consistency::tests::test_majority_vote_exact_half_no_majority ... ok [INFO] [stdout] test techniques::reflexion::tests::test_run_reflexion_succeeds_first_trial ... ok [INFO] [stdout] test techniques::self_consistency::tests::test_majority_vote_no_majority ... ok [INFO] [stdout] test techniques::self_consistency::tests::test_majority_vote_single ... ok [INFO] [stdout] test techniques::self_consistency::tests::test_run_self_consistency_returns_majority ... ok [INFO] [stdout] test techniques::skeleton_of_thought::tests::test_assemble_answer_empty_fallback ... ok [INFO] [stdout] test techniques::skeleton_of_thought::tests::test_run_skeleton_of_thought_basic ... ok [INFO] [stdout] test techniques::skeleton_of_thought::tests::test_parse_outline_points_numbered_paren ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_build_full_context_both ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_build_full_context_empty_thought ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_build_full_context_empty_context ... ok [INFO] [stdout] test techniques::multi_agent_debate::tests::test_run_multi_agent_debate_majority ... ok [INFO] [stdout] test techniques::skeleton_of_thought::tests::test_parse_outline_points_empty ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_parse_score_clamped ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_parse_score_default ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_parse_score_explicit ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_parse_score_fallback_integer ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_strategy_default_is_bfs ... ok [INFO] [stdout] test techniques::tree_of_thoughts::tests::test_run_tree_of_thoughts_bfs ... ok [INFO] [stdout] test tools::built_ins::tests::test_read_nonexistent_file_errors ... ok [INFO] [stdout] test tools::built_ins::tests::test_shell_tool_stderr ... ok [INFO] [stdout] test tools::built_ins::tests::test_write_missing_path_errors ... ok [INFO] [stdout] test tools::registry::tests::test_all_returns_all_tools ... ok [INFO] [stdout] test techniques::react::tests::test_parse_tool_call_json_missing_tool_key ... ok [INFO] [stdout] test tools::registry::tests::test_registry_execute_known_tool ... ok [INFO] [stdout] test techniques::skeleton_of_thought::tests::test_assemble_answer_basic ... ok [INFO] [stdout] test tools::registry::tests::test_registry_execute_unknown_tool ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_run_plan_and_solve_basic ... ok [INFO] [stdout] test tools::registry::tests::test_registry_get ... ok [INFO] [stdout] test tui::app::tests::test_app_default_matches_new ... ok [INFO] [stdout] test tui::app::tests::test_apply_cron_input_empty_cancels ... ok [INFO] [stdout] test tui::app::tests::test_apply_cron_input_human ... ok [INFO] [stdout] test tui::app::tests::test_app_new_is_empty ... ok [INFO] [stdout] test tools::built_ins::tests::test_read_accepts_file_path_alias ... ok [INFO] [stdout] test tools::built_ins::tests::test_write_and_read_file ... ok [INFO] [stdout] test tools::built_ins::tests::test_shell_tool_success ... ok [INFO] [stdout] test tui::app::tests::test_apply_cron_input_raw_cron ... ok [INFO] [stdout] test tui::app::tests::test_c_clears_errored_in_info_pane ... ok [INFO] [stdout] test tui::app::tests::test_c_clears_selected_errored_item ... ok [INFO] [stdout] test tui::app::tests::test_c_command_enters_cron_edit ... ok [INFO] [stdout] test tui::app::tests::test_c_does_nothing_when_panel_closed ... ok [INFO] [stdout] test tui::app::tests::test_c_does_not_clear_non_error_item ... ok [INFO] [stdout] test tui::app::tests::test_click_outside_command_menu_dismisses ... ok [INFO] [stdout] test tui::app::tests::test_b_key_scrolls_up_one_page ... ok [INFO] [stdout] test tui::app::tests::test_colon_enters_command_mode ... ok [INFO] [stdout] test tui::app::tests::test_colon_opens_menu_from_info_expanded ... ok [INFO] [stdout] test tui::app::tests::test_colon_from_info_pane_enters_command ... ok [INFO] [stdout] test tui::app::tests::test_click_outside_info_expanded_closes_it ... ok [INFO] [stdout] test tui::app::tests::test_cron_edit_esc_cancels ... ok [INFO] [stdout] test tui::app::tests::test_cron_edit_typing ... ok [INFO] [stdout] test tui::app::tests::test_ctrl_c_quits_from_normal ... ok [INFO] [stdout] test tui::app::tests::test_e_key_toggles_in_command_mode ... ok [INFO] [stdout] test tui::app::tests::test_enter_in_info_pane_sets_filter ... ok [INFO] [stdout] test tui::app::tests::test_click_sidebar_selects_workflow ... ok [INFO] [stdout] test tui::app::tests::test_cron_edit_backspace ... ok [INFO] [stdout] test tui::app::tests::test_enter_on_all_logs_clears_filter ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_extract_plan_steps_numbered_dot ... ok [INFO] [stdout] test tui::app::tests::test_enter_on_item_sets_filter ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_consolidated_collapsed ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_consolidated_expanded ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_thought_collapsed ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_thought_expanded ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_thought_single_line ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_tool_call_expanded ... ok [INFO] [stdout] test tui::app::tests::test_esc_from_command_returns_to_info_expanded_context ... ok [INFO] [stdout] test tui::app::tests::test_esc_closes_info_expanded ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_thought_two_lines_collapsed ... ok [INFO] [stdout] test tui::app::tests::test_entry_row_count_tool_call_collapsed ... ok [INFO] [stdout] test tui::app::tests::test_esc_in_info_returns_to_workflows ... ok [INFO] [stdout] test tui::app::tests::test_events_target_correct_workflow ... ok [INFO] [stdout] test tui::app::tests::test_extract_toml_string_value ... ok [INFO] [stdout] test tui::app::tests::test_f_key_scrolls_down_one_page ... ok [INFO] [stdout] test tui::app::tests::test_g_on_all_logs_does_nothing ... ok [INFO] [stdout] test tui::app::tests::test_g_opens_url_in_info_pane ... ok [INFO] [stdout] test tui::app::tests::test_g_opens_url_in_info_expanded ... ok [INFO] [stdout] test tui::app::tests::test_extract_item_key ... ok [INFO] [stdout] test tui::app::tests::test_full_run_lifecycle ... ok [INFO] [stdout] test tui::app::tests::test_filter_clears_on_workflow_switch ... ok [INFO] [stdout] test tui::app::tests::test_info_expanded_selected_resets_on_toggle ... ok [INFO] [stdout] test tui::app::tests::test_info_resets_on_workflow_switch ... ok [INFO] [stdout] test tui::app::tests::test_items_summary_event_updates_workflow_items ... ok [INFO] [stdout] test tools::registry::tests::test_create_registry ... ok [INFO] [stdout] test tui::app::tests::test_apply_cron_input_invalid_cancels_silently ... ok [INFO] [stdout] test tui::app::tests::test_key_navigation ... ok [INFO] [stdout] test tui::app::tests::test_left_switches_to_workflows ... ok [INFO] [stdout] test tui::app::tests::test_log_for_unknown_workflow_is_ignored ... ok [INFO] [stdout] test tui::app::tests::test_log_message_appends_to_workflow ... ok [INFO] [stdout] test tui::app::tests::test_mouse_click_all_logs_clears_filter ... ok [INFO] [stdout] test techniques::skeleton_of_thought::tests::test_parse_outline_points_numbered_dot ... ok [INFO] [stdout] test tui::app::tests::test_looks_like_cron ... ok [INFO] [stdout] test techniques::skeleton_of_thought::tests::test_parse_outline_points_respects_max ... ok [INFO] [stdout] test techniques::plan_and_solve::tests::test_extract_plan_steps_step_prefix ... ok [INFO] [stdout] test tools::built_ins::tests::test_write_creates_parent_dirs ... ok [INFO] [stdout] test tui::app::tests::test_mouse_click_in_info_pane_selects_item ... ok [INFO] [stdout] test tui::app::tests::test_mouse_click_in_sidebar ... ok [INFO] [stdout] test tui::app::tests::test_mouse_click_in_info_pane_sets_log_filter ... ok [INFO] [stdout] test tui::app::tests::test_mouse_down_starts_selection ... ok [INFO] [stdout] test tui::app::tests::test_mouse_scroll_up_down ... ok [INFO] [stdout] test tui::app::tests::test_mouse_drag_clamps_to_panel ... ok [INFO] [stdout] test tui::app::tests::test_mouse_up_clears_active ... ok [INFO] [stdout] test tui::app::tests::test_parse_human_cron_case_insensitive ... ok [INFO] [stdout] test tui::app::tests::test_page_keys_still_work ... ok [INFO] [stdout] test tui::app::tests::test_parse_human_cron_hours ... ok [INFO] [stdout] test tui::app::tests::test_parse_human_cron_invalid ... ok [INFO] [stdout] test tui::app::tests::test_parse_human_cron_minutes ... ok [INFO] [stdout] test tui::app::tests::test_parse_human_cron_seconds ... ok [INFO] [stdout] test tui::app::tests::test_q_in_normal_mode_does_not_quit ... ok [INFO] [stdout] test tui::app::tests::test_multiple_workflows_registered ... ok [INFO] [stdout] test tui::app::tests::test_panel_hit_test ... ok [INFO] [stdout] test tui::app::tests::test_navigation_resets_scroll ... ok [INFO] [stdout] test tui::app::tests::test_pause_returns_to_normal ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_empty_logs ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_consolidates_3_plus_tools ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_groups_consecutive_thoughts ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_no_consolidation_under_3 ... ok [INFO] [stdout] test tui::app::tests::test_quit_from_command_mode ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_system_lines_stay_separate ... ok [INFO] [stdout] test tui::app::tests::test_registered_workflow_no_repo ... ok [INFO] [stdout] test tui::app::tests::test_items_summary_replaces_previous ... ok [INFO] [stdout] test tui::app::tests::test_right_switches_to_info ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_preserves_expanded_state ... ok [INFO] [stdout] test tui::app::tests::test_run_completed_failed ... ok [INFO] [stdout] test tui::app::tests::test_run_completed_sets_item_success ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_orphaned_result ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_pairs_tool_and_result ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_mixed_sequence ... ok [INFO] [stdout] test tui::app::tests::test_run_id_stored_on_log_line ... ok [INFO] [stdout] test tui::app::tests::test_run_started_adds_log_with_item_label ... ok [INFO] [stdout] test tui::app::tests::test_run_id_to_item_mapping ... ok [INFO] [stdout] test tui::app::tests::test_run_started_resets_stage_statuses ... ok [INFO] [stdout] test tui::app::tests::test_run_completed_skipped ... ok [INFO] [stdout] test tui::app::tests::test_run_started_sets_item_in_progress ... ok [INFO] [stdout] test tui::app::tests::test_run_started_without_item_label ... ok [INFO] [stdout] test tui::app::tests::test_selected_workflow_changes_with_navigation ... ok [INFO] [stdout] test tui::app::tests::test_selected_workflow_none_when_empty ... ok [INFO] [stdout] test tui::app::tests::test_run_started_sets_running_status ... ok [INFO] [stdout] test tui::app::tests::test_rebuild_preserves_expanded_thought ... ok [INFO] [stdout] test tui::app::tests::test_scroll_works_in_info_context ... ok [INFO] [stdout] test tui::app::tests::test_run_started_resets_scroll_to_auto_tail ... ok [INFO] [stdout] test tui::app::tests::test_session_disabled_workflow_starts_disabled ... ok [INFO] [stdout] test tui::app::tests::test_shift_b_scrolls_to_beginning ... ok [INFO] [stdout] test tui::app::tests::test_shift_c_clears_all_errored ... ok [INFO] [stdout] test tui::app::tests::test_selected_items_empty_when_no_data ... ok [INFO] [stdout] test tui::app::tests::test_log_messages_accumulate ... ok [INFO] [stdout] test tui::app::tests::test_shift_f_scrolls_to_end ... ok [INFO] [stdout] test tui::app::tests::test_shutdown_event_quits ... ok [INFO] [stdout] test tui::app::tests::test_single_logline_thought_with_newlines_expanded ... ok [INFO] [stdout] test tui::app::tests::test_single_logline_thought_with_newlines_is_expandable ... ok [INFO] [stdout] test tui::app::tests::test_run_completed_failure_sets_item_error ... ok [INFO] [stdout] test tui::app::tests::test_run_completed_success ... ok [INFO] [stdout] test tui::app::tests::test_stage_failed_sets_failed_and_logs_error ... ok [INFO] [stdout] test tui::app::tests::test_skipped_run_dedup_updates_in_place ... ok [INFO] [stdout] test tui::app::tests::test_stage_started_adds_log ... ok [INFO] [stdout] test tui::app::tests::test_stages_for_issues_are_correct ... ok [INFO] [stdout] test tui::app::tests::test_stage_completed_sets_done ... ok [INFO] [stdout] test tui::app::tests::test_stages_for_mode ... ok [INFO] [stdout] test tui::app::tests::test_stages_for_plan_first_issues_are_correct ... ok [INFO] [stdout] test tui::app::tests::test_stage_started_sets_running ... ok [INFO] [stdout] test tui::app::tests::test_stage_event_for_unknown_stage_name_does_not_crash ... ok [INFO] [stdout] test tui::app::tests::test_shift_c_clears_all_from_info_pane ... ok [INFO] [stdout] test tui::app::tests::test_stages_for_pr_review_are_correct ... ok [INFO] [stdout] test tui::app::tests::test_thought_row_count_collapsed_ignores_embedded_newlines ... ok [INFO] [stdout] test tui::app::tests::test_thought_row_count_with_embedded_newlines ... ok [INFO] [stdout] test techniques::react::tests::test_run_react_tool_call_then_answer ... ok [INFO] [stdout] test tui::app::tests::test_skipped_after_non_skipped_creates_new_line ... ok [INFO] [stdout] test tui::app::tests::test_tick_events_do_not_add_logs ... ok [INFO] [stdout] test tui::app::tests::test_tick_events_do_not_add_logs ... ok [INFO] [stdout] test tui::app::tests::test_toggle_adds_log_entries ... ok [INFO] [stdout] test tui::app::tests::test_toggle_empty_app_does_not_crash ... ok [INFO] [stdout] test tui::app::tests::test_toggle_selected_workflow ... ok [INFO] [stdout] test tui::app::tests::test_up_down_in_workflows_selects_workflow_not_glance ... ok [INFO] [stdout] test tui::app::tests::test_up_down_in_info_pane_navigates_items ... ok [INFO] [stdout] test tui::app::tests::test_up_down_navigates_info_expanded_when_open ... ok [INFO] [stdout] test tui::app::tests::test_up_down_switches_workflow_when_panel_closed ... ok [INFO] [stdout] test tui::app::tests::test_workflow_registered_adds_workflow ... ok [INFO] [stdout] test tui::app::tests::test_unknown_command_returns_to_normal ... ok [INFO] [stdout] test tui::app::tests::test_toggle_preserves_success_status_when_re_enabled ... ok [INFO] [stdout] test tui::app::tests::test_truly_single_line_thought_not_expandable ... ok [INFO] [stdout] test tui::app::tests::test_workflow_status_display ... ok [INFO] [stdout] test tui::events::tests::test_noop_sender_many_events ... ok [INFO] [stdout] test tui::events::tests::test_noop_sender_does_not_panic ... ok [INFO] [stdout] test tui::events::tests::test_sender_debug_format ... ok [INFO] [stdout] test tui::app::tests::test_workflows_enabled_by_default ... ok [INFO] [stdout] test tui::events::tests::test_sender_clone_shares_channel ... ok [INFO] [stdout] test tui::events::tests::test_tui_event_debug ... ok [INFO] [stdout] test tui::events::tests::test_sender_survives_dropped_receiver ... ok [INFO] [stdout] test tui::events::tests::test_sender_delivers_multiple_events_in_order ... ok [INFO] [stdout] test tui::events::tests::test_active_sender_delivers ... ok [INFO] [stdout] test tui::events::tests::test_tui_event_is_clone ... ok [INFO] [stdout] test tui::events::tests::test_workflow_mode_display ... ok [INFO] [stdout] test tui::session::tests::test_default_session_all_enabled ... ok [INFO] [stdout] test tui::session::tests::test_toml_deserialize_empty ... ok [INFO] [stdout] test tui::session::tests::test_session_path ... ok [INFO] [stdout] test tui::session::tests::test_set_enabled_false ... ok [INFO] [stdout] test tui::session::tests::test_set_enabled_true_explicitly ... ok [INFO] [stdout] test tui::session::tests::test_toml_deserialize_missing_enabled ... ok [INFO] [stdout] test tui::events::tests::test_workflow_mode_equality ... ok [INFO] [stdout] test tui::session::tests::test_toml_roundtrip ... ok [INFO] [stdout] test tui::widgets::info::tests::test_status_badge_colors ... ok [INFO] [stdout] test tui::widgets::info::tests::test_status_badge_labels ... ok [INFO] [stdout] test tui::widgets::log_view::tests::test_flatten_newlines_basic ... ok [INFO] [stdout] test tui::widgets::log_view::tests::test_flatten_newlines_cr_lf ... ok [INFO] [stdout] test tui::widgets::log_view::tests::test_flatten_newlines_empty ... ok [INFO] [stdout] test tui::widgets::log_view::tests::test_flatten_newlines_no_newlines ... ok [INFO] [stdout] test tui::widgets::log_view::tests::test_truncate_msg_exact ... ok [INFO] [stdout] test tui::widgets::log_view::tests::test_truncate_msg_long ... ok [INFO] [stdout] test tui::widgets::log_view::tests::test_truncate_msg_short ... ok [INFO] [stdout] test tui::session::tests::test_load_session_missing_file ... ok [INFO] [stdout] test tui::widgets::info_expanded::tests::test_status_badge_colors ... ok [INFO] [stdout] test tui::app::tests::test_i_from_info_pane_opens_expanded ... ok [INFO] [stdout] test tui::app::tests::test_i_key_toggles_info_expanded ... ok [INFO] [stdout] test tui::app::tests::test_info_expanded_selected_resets_on_items_summary ... ok [INFO] [stdout] test tui::session::tests::test_toggle_enabled ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_abbreviate_known_stages ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_abbreviate_long_unknown_stage ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_abbreviate_short_unknown_stage ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_every_minute_star_form ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_actual_config_schedules ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_every_n_seconds ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_fallback_for_complex_expressions ... ok [INFO] [stdout] test tui::session::tests::test_save_and_load_session ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_hourly_at_specific_minute ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_daily_at_time ... ok [INFO] [stdout] test types::config::tests::agent_loop_config_default ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_every_n_hours ... ok [INFO] [stdout] test tui::session::tests::test_load_session_corrupt_file ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_every_n_minutes ... ok [INFO] [stdout] test types::config::tests::harness_config_default_is_empty ... ok [INFO] [stdout] test types::config::tests::harness_config_primary_model ... ok [INFO] [stdout] test types::config::tests::github_issues_config_serde ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_fallback_wrong_field_count ... ok [INFO] [stdout] test tui::widgets::sidebar::tests::test_every_hour ... ok [INFO] [stdout] test types::config::tests::workflow_config_minimal_toml ... ok [INFO] [stdout] test types::config::tests::workflow_config_pr_response_toml ... ok [INFO] [stdout] test types::config::tests::harness_config_validate_empty_models ... ok [INFO] [stdout] test types::config::tests::harness_config_validate_invalid_provider ... ok [INFO] [stdout] test types::config::tests::harness_config_validate_ok ... ok [INFO] [stdout] test types::config::tests::linear_issues_config_minimal ... ok [INFO] [stdout] test types::config::tests::linear_issues_config_serde ... ok [INFO] [stdout] test types::config::tests::harness_config_toml_roundtrip ... ok [INFO] [stdout] test types::config::tests::retry_config_serde ... ok [INFO] [stdout] test types::config::tests::workflow_config_default ... ok [INFO] [stdout] test types::config::tests::harness_config_validate_empty_model_name ... ok [INFO] [stdout] test types::technique::tests::success_result_fields ... ok [INFO] [stdout] test types::technique::tests::step_type_serde_roundtrip ... ok [INFO] [stdout] test types::technique::tests::run_result_serde_roundtrip ... ok [INFO] [stdout] test types::technique::tests::failure_result_fields ... ok [INFO] [stdout] test types::config::tests::workflow_config_linear_issues_toml ... ok [INFO] [stdout] test types::config::tests::workflow_config_toml_roundtrip ... ok [INFO] [stdout] test utils::logger::tests::logger_methods_do_not_panic ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_is_file_path_md ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_is_file_path_no_extension ... ok [INFO] [stdout] test utils::config_loader::tests::test_load_config_full_fields ... ok [INFO] [stdout] test utils::config_loader::tests::test_load_config_not_found ... ok [INFO] [stdout] test utils::config_loader::tests::test_load_config_uses_cwd_when_no_start_given ... ok [INFO] [stdout] test utils::logger::tests::logger_clone ... ok [INFO] [stdout] test utils::logger::tests::logger_new_stores_prefix ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_is_file_path_txt ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_is_file_path_prompt ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_is_file_path_with_newlines_is_not_file ... ok [INFO] [stdout] test utils::config_loader::tests::test_load_config_parse_error ... ok [INFO] [stdout] test utils::config_loader::tests::test_load_config_found ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_substitute_repeated_placeholder ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_load_inline_string_no_substitution ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_substitute_simple ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_load_inline_string_with_substitution ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_load_from_file_absolute ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_substitute_no_placeholders ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_load_inline_template ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_substitute_empty_template ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_substitute_missing_var_unchanged ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_load_from_file_relative ... ok [INFO] [stdout] test utils::truncate::tests::test_cjk_characters ... ok [INFO] [stdout] test utils::truncate::tests::test_empty_string ... ok [INFO] [stdout] test utils::truncate::tests::test_long_string_truncated ... ok [INFO] [stdout] test utils::truncate::tests::test_short_string_unchanged ... ok [INFO] [stdout] test workflows::cron_runner::tests::test_cron_runner_new_creates_instance ... ok [INFO] [stdout] test utils::config_loader::tests::test_load_config_walks_up ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_substitute_multiple ... ok [INFO] [stdout] test utils::truncate::tests::test_emoji_boundary_safe ... ok [INFO] [stdout] test utils::truncate::tests::test_max_zero ... ok [INFO] [stdout] test utils::truncate::tests::test_exact_length ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_load_file_then_substitute ... ok [INFO] [stdout] test workflows::cron_runner::tests::test_cron_runner_no_workflows_is_fine ... ok [INFO] [stdout] test utils::prompt_loader::tests::test_load_file_not_found_returns_error ... ok [INFO] [stdout] test workflows::executor::tests::test_extract_review_focus_section_at_end ... ok [INFO] [stdout] test workflows::executor::tests::test_extract_review_focus_section_missing ... ok [INFO] [stdout] test workflows::cron_runner::tests::test_schedule_update_struct ... ok [INFO] [stdout] test workflows::executor::tests::test_extract_review_focus_section ... ok [INFO] [stdout] test workflows::executor::tests::test_format_focus_for_display ... ok [INFO] [stdout] test workflows::executor::tests::test_format_focus_for_display_empty ... ok [INFO] [stdout] test workflows::executor::tests::test_format_focus_for_prompt ... ok [INFO] [stdout] test workflows::executor::tests::test_format_focus_for_prompt_empty ... ok [INFO] [stdout] test workflows::executor::tests::test_format_review_placeholder_no_branding ... ok [INFO] [stdout] test workflows::cron_runner::tests::test_cron_runner_on_run_complete_sets_callback ... ok [INFO] [stdout] test workflows::executor::tests::test_filter_all_posted_removes_section ... ok [INFO] [stdout] test workflows::executor::tests::test_is_bot_allows_humans ... ok [INFO] [stdout] test workflows::executor::tests::test_format_review_placeholder_with_focus ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_just_punctuation ... ok [INFO] [stdout] test workflows::executor::tests::test_format_review_placeholder_no_focus ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_multiline ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_exact ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_not_approved ... ok [INFO] [stdout] test workflows::executor::tests::test_is_bot_detects_bots ... ok [INFO] [stdout] test workflows::executor::tests::test_issue_item_from_github ... ok [INFO] [stdout] test workflows::executor::tests::test_issue_item_from_linear ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_case_insensitive ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_focus_directives_from_comment ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_focus_directives_no_match ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_focus_directives_review_is_not_focus ... ok [INFO] [stdout] test workflows::executor::tests::test_render_inline_comments_one ... ok [INFO] [stdout] test workflows::executor::tests::test_render_timeline_comments_empty ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_with_comma_addendum ... ok [INFO] [stdout] test workflows::executor::tests::test_render_inline_comments_with_hunk ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_with_period_addendum ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_with_semicolon_addendum ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_approval_with_whitespace ... ok [INFO] [stdout] test workflows::executor::tests::test_render_timeline_comments_multiple ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_focus_directives_review_with_colon_is_not_focus ... ok [INFO] [stdout] test workflows::executor::tests::test_parse_focus_directives_case_insensitive ... ok [INFO] [stdout] test workflows::executor::tests::test_render_inline_comments_no_line ... ok [INFO] [stdout] test workflows::executor::tests::test_render_timeline_comments_one ... ok [INFO] [stdout] test workflows::executor::tests::test_resolve_system_prompt_no_blocked_commands ... ok [INFO] [stdout] test workflows::executor::tests::test_resolve_system_prompt_default_file ... ok [INFO] [stdout] test workflows::executor::tests::test_resolve_system_prompt_file_path_in_config ... ok [INFO] [stdout] test workflows::executor::tests::test_truncate_title_long ... ok [INFO] [stdout] test workflows::executor::tests::test_truncate_title_exact ... ok [INFO] [stdout] test workflows::executor::tests::test_resolve_system_prompt_no_config_no_file ... ok [INFO] [stdout] test workflows::executor::tests::test_resolve_system_prompt_inline ... ok [INFO] [stdout] test workflows::github_issues::tests::test_fetch_issues_options_defaults ... ok [INFO] [stdout] test workflows::github_issues::tests::test_issue_body_str_none ... ok [INFO] [stdout] test workflows::github_issues::tests::test_issue_body_str_some ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_none ... ok [INFO] [stdout] test workflows::executor::tests::test_filter_posted_with_short_filenames ... ok [INFO] [stdout] test workflows::executor::tests::test_truncate_title_short ... ok [INFO] [stdout] test workflows::executor::tests::test_filter_posted_inline_observations ... ok [INFO] [stdout] test workflows::executor::tests::test_render_inline_comments_empty ... ok [INFO] [stdout] test workflows::github_prs::tests::test_inline_comment_defaults ... ok [INFO] [stdout] test workflows::github_prs::tests::test_map_raw_pr_extracts_reviewers_and_teams ... ok [INFO] [stdout] test workflows::github_prs::tests::test_map_raw_pr_handles_missing_fields ... ok [INFO] [stdout] test workflows::github_prs::tests::test_pr_author_default ... ok [INFO] [stdout] test workflows::github_prs::tests::test_pr_body_str_none ... ok [INFO] [stdout] test workflows::github_prs::tests::test_pr_body_str_some ... ok [INFO] [stdout] test workflows::github_prs::tests::test_pr_body_str_with_value ... ok [INFO] [stdout] test workflows::github_prs::tests::test_pr_body_str_without_value ... ok [INFO] [stdout] test workflows::github_prs::tests::test_pr_comment_fields ... ok [INFO] [stdout] test workflows::github_prs::tests::test_pr_label_name ... ok [INFO] [stdout] test workflows::github_prs::tests::test_shell_escape_empty ... ok [INFO] [stdout] test workflows::github_prs::tests::test_shell_escape_simple ... ok [INFO] [stdout] test workflows::github_prs::tests::test_shell_escape_spaces ... ok [INFO] [stdout] test workflows::github_prs::tests::test_shell_escape_special_chars ... ok [INFO] [stdout] test workflows::github_prs::tests::test_shell_escape_with_single_quote ... ok [INFO] [stdout] test workflows::linear_issues::tests::test_fetch_options_defaults ... ok [INFO] [stdout] test workflows::linear_issues::tests::test_linear_issue_description_str_none ... ok [INFO] [stdout] test workflows::linear_issues::tests::test_linear_issue_description_str_some ... ok [INFO] [stdout] test workflows::linear_issues::tests::test_parse_graphql_response ... ok [INFO] [stdout] test workflows::linear_issues::tests::test_parse_graphql_response_empty_nodes ... ok [INFO] [stdout] test workflows::linear_issues::tests::test_parse_graphql_response_null_assignee ... ok [INFO] [stdout] test workflows::linear_issues::tests::test_parse_graphql_response_with_errors ... ok [INFO] [stdout] test workflows::multi_review::tests::test_disallowed_tools_claude ... ok [INFO] [stdout] test workflows::multi_review::tests::test_disallowed_tools_codex_empty ... ok [INFO] [stdout] test workflows::multi_review::tests::test_disallowed_tools_gemini_empty ... ok [INFO] [stdout] test workflows::multi_review::tests::test_env_set_missing ... ok [INFO] [stdout] test workflows::multi_review::tests::test_format_reviews_for_consolidation ... ok [INFO] [stdout] test workflows::multi_review::tests::test_load_workspace_conventions_agents_md_fallback ... ok [INFO] [stdout] test workflows::multi_review::tests::test_load_workspace_conventions_empty_dir ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_with_hyphen_in_name ... ok [INFO] [stdout] test workflows::multi_review::tests::test_load_workspace_conventions_with_skill ... ok [INFO] [stdout] test workflows::multi_review::tests::test_model_display_name_anthropic ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_simple ... ok [INFO] [stdout] test workflows::multi_review::tests::test_model_display_name_openai ... ok [INFO] [stdout] test workflows::multi_review::tests::test_load_workspace_conventions_with_claude_md ... ok [INFO] [stdout] test workflows::multi_review::tests::test_model_display_name_unknown ... ok [INFO] [stdout] test workflows::multi_review::tests::test_reviewer_model_techniques ... ok [INFO] [stdout] test workflows::multi_review::tests::test_reviewer_model_names ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_agent_loop_stage_name ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_empty_string ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_https_with_hyphen_and_dot ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_build_resume_includes_prior_answer_when_no_reflection ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_build_resume_reflection_only_no_prior_result ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_ssh_no_dot_git ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_allowed_commands ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_disallowed_commands ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_extract_tool_calls_empty ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_extract_tool_calls_with_blocks ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_review_seems_incomplete ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_review_tool_definitions ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_build_resume_with_reflection_replaces_raw_answer ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_summarize_tool_args ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_build_resume_task_no_prior ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_with_dot_in_name ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_truncate_tool_output_small ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_claude_adapter_required_flags ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_review_tool_registry_has_expected_tools ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_build_resume_task_text_empty_answer ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_codex_adapter_args ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_extract_claude_empty_input ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_extra_flags_merged ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_extract_claude_final_answer_not_found ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_extract_claude_final_answer_found ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_extract_claude_malformed_json_skipped ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_extract_claude_skips_non_result_events ... ok [INFO] [stdout] test workflows::stages::api_review_loop::tests::test_truncate_tool_output_large ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_claude_adapter_model_override ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_build_resume_task_with_prior_answer_no_reflection ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_format_tool_input_bash ... ok [INFO] [stdout] test workflows::stages::agent_loop::tests::test_build_resume_task_text_with_prior_answer_truncated ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_format_tool_input_non_object ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_format_tool_input_read ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_gemini_adapter_args ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_format_tool_input_empty ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_parse_claude_stream_large_input_summarized ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_parse_claude_stream_steps_indexed ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_parse_claude_stream_text_and_tool_use ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_parse_claude_stream_tool_use_metadata ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_format_tool_input_grep ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_parse_claude_stream_empty_output ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_format_tool_input_write_large_content ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_parse_claude_stream_malformed_lines_skipped ... ok [INFO] [stdout] test workflows::stages::external_agent_loop::tests::test_parse_claude_stream_result_only ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_arbitrary_string ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_https_no_git ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_ssh_url ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_build_reply_body_generic ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_build_reply_body_no_line ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_build_reply_body_with_relevant_line ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_build_summary_body_empty_agent_output ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_build_summary_body_with_content ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_extract_clean_summary_all_json ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_build_summary_body_no_sha ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_extract_clean_summary_empty ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_extract_clean_summary_filters_json ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_extract_clean_summary_truncates ... ok [INFO] [stdout] test workflows::stages::pr_comment_responder::tests::test_pr_comment_responder_stage_name ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_fallback_title_from_branch ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_fallback_empty_diff ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_parse_empty_input ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_parse_multiline_body ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_parse_no_title ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_parse_title_and_body ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_parse_title_only ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_collapse_excess_blank_lines ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_collapse_preserves_double_blanks ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_fix_markdown_spacing_code_fence ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_fix_markdown_spacing_heading_needs_blank_line_before ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_ssh_with_hyphen ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_fix_markdown_spacing_hr_already_spaced ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_fix_markdown_spacing_hr_needs_blank_lines ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_fix_markdown_spacing_preserves_normal_text ... ok [INFO] [stdout] test workflows::stages::pr_description::tests::test_parse_body_inline ... ok [INFO] [stdout] test providers::tests::resolve_anthropic ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_inline_comments_from_text_prefers_structured ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_inline_comments_multiline_body ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_inline_comments_none ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_inline_comments_multiple ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_https_with_path ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_inline_comments_from_text_fallback ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_inline_empty_body_skipped ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_inline_comments_single ... ok [INFO] [stdout] test workflows::github_issues::tests::test_repo_to_gh_identifier_https_url ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_markdown_inline_list_bold_backtick ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_score_basic ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_score_in_summary_block ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_score_missing ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_score_out_of_range ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_score_with_branding_prefix ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_score_with_suffix ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_summary_absent ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_summary_multiline ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_summary_present ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_markdown_inline_with_description_label ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_summary_with_heading_prefix ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_verdict_approved ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_verdict_in_summary_block ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_verdict_lgtm ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_summary_with_hash_prefix ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_verdict_not_approved ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_verdict_with_branding_prefix ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_verdict_with_emoji ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_strip_leading_emojis ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_strip_preamble_all_plain_text ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_verdict_unknown ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_strip_preamble_no_preamble ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_strip_preamble_with_permission_message ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_derive_commit_message_config_takes_priority ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_markdown_inline_empty ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_markdown_inline_bold_backtick ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_markdown_inline_bold_no_backtick ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_derive_commit_message_fallback ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_derive_commit_message_from_pr_title ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_parse_markdown_inline_list_backtick ... ok [INFO] [stdout] test workflows::stages::pr_review_poster::tests::test_strip_preamble_empty ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_derive_commit_message_from_task_first_line ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_derive_commit_message_pr_title_over_task ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_pr_url_regex_not_found ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_pr_url_regex ... ok [INFO] [stdout] test workflows::stages::review_feedback_loop::tests::test_review_feedback_loop_name ... ok [INFO] [stdout] test workflows::stages::reviewer::tests::test_approval_score_value ... ok [INFO] [stdout] test workflows::stages::reviewer::tests::test_approval_token_detection ... ok [INFO] [stdout] test workflows::stages::reviewer::tests::test_approval_token_value ... ok [INFO] [stdout] test workflows::stages::reviewer::tests::test_clean_approval_token_from_output ... ok [INFO] [stdout] test workflows::stages::reviewer::tests::test_no_approval_token ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_pull_request_stage_name ... ok [INFO] [stdout] test workflows::stages::pull_request::tests::test_derive_commit_message_truncates_long_task ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_cooldown_minutes_backoff ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_consecutive_failures_increase_count ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_failure_cooldown_store_empty_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_failure_cooldown_store_missing_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_clear_failure_exits_cooldown ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_different_workflows_independent ... ok [INFO] [stdout] test providers::tests::resolve_openai ... ok [INFO] [stdout] test workflows::stages::pr_checkout::tests::test_sets_branch_from_reviewing_pr ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_get_failures_for_workflow_empty ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_handled_issue_store_missing_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_no_failure_not_in_cooldown ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_get_failures_for_workflow_returns_matching ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_pr_response_store_missing_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_pr_review_store_missing_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_run_store_missing_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_run_store_empty_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_get_failures_for_workflow_excludes_other ... ok [INFO] [stdout] test providers::tests::resolve_ollama ... ok [INFO] [stdout] test workflows::stores::tests::test_get_issues_in_state_empty ... ok [INFO] [stdout] test workflows::stores::tests::test_backward_compat_state_none ... ok [INFO] [stdout] test workflows::stores::tests::test_get_record_returns_none_for_missing ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_handled_issue_store_empty_file ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_empty_file ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_stores_recreate_after_deletion ... ok [INFO] [stdout] test workflows::stores::tests::test_get_issues_in_state_filters_by_state ... ok [INFO] [stdout] test workflows::stages::parse::tests::test_parse_returns_task ... ok [INFO] [stdout] test workflows::stores::failure_cooldown_tests::test_record_failure_enters_cooldown ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_handles_missing_file ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_cross_workflow_isolation ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_mark_with_pr_url ... ok [INFO] [stdout] test workflows::stores::tests::test_get_record_returns_record ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_mark_without_pr_url ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_overwrite_updates_record ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_multiple_issues_same_workflow ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_handles_missing_file ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_cross_workflow_isolation ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_mark_and_check ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_unmark_nonexistent_does_not_error ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_unmark ... ok [INFO] [stdout] test workflows::stores::tests::test_handled_issue_store_persists_across_instances ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_remove_record ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_cross_workflow_isolation ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_tracks_both_cursors_independently ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_persists_across_instances ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_empty_file_returns_none ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_get_none ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_handles_missing_file ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_roundtrip ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_overwrite ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_persists_across_instances ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_empty_file_returns_none ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_overwrite ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_empty ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_roundtrip ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_remove_nonexistent_ok ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_append_and_history ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_response_store_remove_nonexistent_ok ... ok [INFO] [stdout] test workflows::stores::tests::test_pr_review_store_remove ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_get_workflow_names ... ok [INFO] [stdout] test workflows::workflow::tests::test_full_text_no_context ... ok [INFO] [stdout] test workflows::workflow::tests::test_full_text_with_context ... ok [INFO] [stdout] test workflows::workflow::tests::test_make_skipped_result_has_completed_at ... ok [INFO] [stdout] test workflows::workflow::tests::test_make_skipped_result_no_error ... ok [INFO] [stdout] test workflows::workflow::tests::test_make_skipped_result_with_error ... ok [INFO] [stdout] test workflows::workflow::tests::test_parsed_task_new ... ok [INFO] [stdout] test workflows::workflow::tests::test_parsed_task_serde_roundtrip ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_persists_across_instances ... ok [INFO] [stdout] test workflows::workflow_log::tests::test_list_run_logs_empty ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_append_preserves_all_fields ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_get_last_run ... ok [INFO] [stdout] test workflows::workflow_log::tests::test_list_run_logs_returns_sorted ... ok [INFO] [stdout] test workflows::workflow_log::tests::test_workflow_log_appends_entries ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_filters_by_workflow ... ok [INFO] [stdout] test workflows::workspace::tests::test_expand_repo_url_already_https ... ok [INFO] [stdout] test workflows::workspace::tests::test_expand_repo_url_already_ssh ... ok [INFO] [stdout] test workflows::stores::tests::test_run_store_limit_respects_count ... ok [INFO] [stdout] test workflows::workflow_log::tests::test_workflow_log_creates_file ... ok [INFO] [stdout] test workflows::workspace::tests::test_expand_repo_url_https_shorthand ... ok [INFO] [stdout] test workflows::workspace::tests::test_expand_repo_url_shorthand_https_default ... ok [INFO] [stdout] test workflows::workspace::tests::test_expand_repo_url_ssh_shorthand ... ok [INFO] [stdout] test workflows::workspace::tests::test_repo_slug_from_https_url ... ok [INFO] [stdout] test workflows::workspace::tests::test_repo_slug_from_ssh_url ... ok [INFO] [stdout] test workflows::workspace::tests::test_repo_slug_no_git_suffix ... ok [INFO] [stdout] test workflows::workspace::tests::test_repo_slug_simple_name ... ok [INFO] [stdout] test workflows::workspace::tests::test_repo_slug_trailing_slash ... ok [INFO] [stdout] test workflows::workspace::tests::test_repo_slug_with_dashes ... ok [INFO] [stdout] test workflows::workspace::tests::test_resolve_repo_url_from_config ... ok [INFO] [stdout] test workflows::workspace::tests::test_resolve_repo_url_from_target_repo ... ok [INFO] [stdout] test workflows::workspace::tests::test_resolve_repo_url_missing_errors ... ok [INFO] [stdout] test workflows::workspace::tests::test_workspaces_dir_custom ... ok [INFO] [stdout] test workflows::workspace::tests::test_workspaces_dir_default ... ok [INFO] [stdout] test workflows::workspace::tests::test_workspaces_dir_tilde_expansion ... ok [INFO] [stdout] test workflows::stores::tests::test_update_state_transitions ... ok [INFO] [stdout] test workflows::workflow_log::tests::test_workflow_log_complete_sets_status ... ok [INFO] [stdout] test workflows::workflow_log::tests::test_workflow_log_file_path_structure ... ok [INFO] [stdout] test workflows::workflow_log::tests::test_read_run_log_roundtrip ... ok [INFO] [stdout] test workflows::stages::pr_checkout::tests::test_reviewing_pr_takes_priority ... ok [INFO] [stdout] test workflows::stages::pr_checkout::tests::test_sets_branch_from_responding_pr ... ok [INFO] [stdout] test workflows::stages::trigger::tests::test_trigger_captures_stdout ... ok [INFO] [stdout] test workflows::stages::parse::tests::test_parse_none_returns_skip_signal ... ok [INFO] [stdout] test workflows::stages::parse::tests::test_parse_preserves_task_context ... ok [INFO] [stdout] test workflows::stages::parse::tests::test_parse_no_metadata_treats_as_empty ... ok [INFO] [stdout] test workflows::stages::pr_checkout::tests::test_errors_when_no_pr_set ... ok [INFO] [stdout] test workflows::stages::trigger::tests::test_trigger_missing_config_errors ... ok [INFO] [stdout] test workflows::stages::trigger::tests::test_trigger_multi_line_output ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 642 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.97s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/sousdev-6afc717ffd753add) [INFO] [stderr] Doc-tests sousdev [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 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" "ab0444fdecf83d3e0bb623dafd2acd501a837ef20a7ea00fc424f7770ddf334b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ab0444fdecf83d3e0bb623dafd2acd501a837ef20a7ea00fc424f7770ddf334b", kill_on_drop: false }` [INFO] [stdout] ab0444fdecf83d3e0bb623dafd2acd501a837ef20a7ea00fc424f7770ddf334b