[INFO] cloning repository https://github.com/unioslo/osp-cli-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/unioslo/osp-cli-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Funioslo%2Fosp-cli-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Funioslo%2Fosp-cli-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e9edc9f325941b1385d326a0e026bbd592bbb77c [INFO] testing unioslo/osp-cli-rs against master#562dee4820c458d823175268e41601d4c060588a for pr-154210 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Funioslo%2Fosp-cli-rs" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-1-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/unioslo/osp-cli-rs [INFO] finished tweaking git repo https://github.com/unioslo/osp-cli-rs [INFO] tweaked toml for git repo https://github.com/unioslo/osp-cli-rs written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/unioslo/osp-cli-rs on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/unioslo/osp-cli-rs 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded env_home v0.1.0 [INFO] [stderr] Downloaded unicode-display-width v0.3.0 [INFO] [stderr] Downloaded vt100 v0.16.2 [INFO] [stderr] Downloaded shell-quote v0.7.2 [INFO] [stderr] Downloaded predicates-tree v1.0.13 [INFO] [stderr] Downloaded backtrace-ext v0.2.1 [INFO] [stderr] Downloaded owo-colors v4.3.0 [INFO] [stderr] Downloaded assert_cmd v2.1.2 [INFO] [stderr] Downloaded hifijson v0.5.0 [INFO] [stderr] Downloaded jiff-tzdb v0.1.6 [INFO] [stderr] Downloaded indicatif v0.17.11 [INFO] [stderr] Downloaded miette v7.6.0 [INFO] [stderr] Downloaded zerocopy-derive v0.8.40 [INFO] [stderr] Downloaded regex-bites v0.1.6 [INFO] [stderr] Downloaded proptest v1.10.0 [INFO] [stderr] Downloaded winsafe v0.0.19 [INFO] [stderr] Downloaded raw-cpuid v11.6.0 [INFO] [stderr] Downloaded ron v0.12.0 [INFO] [stderr] Downloaded pulldown-cmark v0.13.1 [INFO] [stderr] Downloaded reedline v0.33.0 [INFO] [stderr] Downloaded interprocess v2.4.0 [INFO] [stderr] Downloaded jaq-core v3.0.0-gamma [INFO] [stderr] Downloaded portable-atomic-util v0.2.5 [INFO] [stderr] Downloaded rusty-fork v0.3.1 [INFO] [stderr] Downloaded zerocopy v0.8.40 [INFO] [stderr] Downloaded libmimalloc-sys v0.1.44 [INFO] [stderr] Downloaded clap_complete_nushell v4.5.10 [INFO] [stderr] Downloaded frizbee v0.8.2 [INFO] [stderr] Downloaded kanal v0.1.1 [INFO] [stderr] Downloaded float-cmp v0.10.0 [INFO] [stderr] Downloaded rand_xorshift v0.4.0 [INFO] [stderr] Downloaded ansi-to-tui v8.0.1 [INFO] [stderr] Downloaded assert_enum_variants v0.1.2 [INFO] [stderr] Downloaded rustc-demangle v0.1.27 [INFO] [stderr] Downloaded serial2 v0.2.34 [INFO] [stderr] Downloaded portable-pty v0.9.0 [INFO] [stderr] Downloaded roff v1.0.0 [INFO] [stderr] Downloaded ansitok v0.3.0 [INFO] [stderr] Downloaded ansi-str v0.9.0 [INFO] [stderr] Downloaded jaq-json v2.0.0-gamma [INFO] [stderr] Downloaded jiff-tzdb-platform v0.1.3 [INFO] [stderr] Downloaded jaq-std v3.0.0-gamma [INFO] [stderr] Downloaded miette-derive v7.6.0 [INFO] [stderr] Downloaded serial-windows v0.4.0 [INFO] [stderr] Downloaded skim v3.7.0 [INFO] [stderr] Downloaded portable-pty v0.8.1 [INFO] [stderr] Downloaded wait-timeout v0.2.1 [INFO] [stderr] Downloaded mimalloc v0.1.48 [INFO] [stderr] Downloaded is_ci v1.2.0 [INFO] [stderr] Downloaded supports-unicode v3.0.0 [INFO] [stderr] Downloaded serial v0.4.0 [INFO] [stderr] Downloaded predicates-core v1.0.10 [INFO] [stderr] Downloaded predicates v3.1.4 [INFO] [stderr] Downloaded supports-color v3.0.2 [INFO] [stderr] Downloaded supports-hyperlinks v3.2.0 [INFO] [stderr] Downloaded ioctl-rs v0.1.6 [INFO] [stderr] Downloaded termios v0.2.2 [INFO] [stderr] Downloaded serial-unix v0.4.0 [INFO] [stderr] Downloaded serial-core v0.4.0 [INFO] [stderr] Downloaded vte v0.15.0 [INFO] [stderr] Downloaded tui-term v0.3.2 [INFO] [stderr] Downloaded which v8.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e38a94012b6354cf194103f9106f9049e3cf9da91743ebed654b18a17b196370 [INFO] running `Command { std: "docker" "start" "-a" "e38a94012b6354cf194103f9106f9049e3cf9da91743ebed654b18a17b196370", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e38a94012b6354cf194103f9106f9049e3cf9da91743ebed654b18a17b196370", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e38a94012b6354cf194103f9106f9049e3cf9da91743ebed654b18a17b196370", kill_on_drop: false }` [INFO] [stdout] e38a94012b6354cf194103f9106f9049e3cf9da91743ebed654b18a17b196370 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e27fe00808c1d0f8a2a69848ce6599454bcac88eea0dbe6c0224abd13fce655d [INFO] running `Command { std: "docker" "start" "-a" "e27fe00808c1d0f8a2a69848ce6599454bcac88eea0dbe6c0224abd13fce655d", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling foldhash v0.2.0 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling compact_str v0.9.0 [INFO] [stderr] Compiling mio v0.8.11 [INFO] [stderr] Compiling lru v0.16.3 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling instability v0.3.11 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling convert_case v0.10.0 [INFO] [stderr] Compiling unicode-truncate v2.0.1 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling object v0.37.3 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling owo-colors v4.3.0 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling rand_core v0.10.0 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling litrs v1.0.0 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling gimli v0.32.3 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling num_threads v0.1.7 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling time-core v0.1.8 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling num-conv v0.2.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling document-features v0.2.12 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling addr2line v0.25.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [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 kasuari v0.4.11 [INFO] [stderr] Compiling filedescriptor v0.8.3 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling line-clipping v0.3.5 [INFO] [stderr] Compiling vte v0.14.1 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling strum v0.27.2 [INFO] [stderr] Compiling ratatui-core v0.1.0 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Compiling rustc-demangle v0.1.27 [INFO] [stderr] Compiling nix v0.28.0 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling crossterm v0.29.0 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling ratatui-widgets v0.3.0 [INFO] [stderr] Compiling backtrace v0.3.76 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling libmimalloc-sys v0.1.44 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling libm v0.2.16 [INFO] [stderr] Compiling color-spantrace v0.3.0 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling typeid v1.0.3 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling eyre v0.6.12 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling nix v0.31.2 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling tracing-error v0.2.1 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling derive_builder_core v0.20.2 [INFO] [stderr] Compiling vte v0.15.0 [INFO] [stderr] Compiling portable-atomic v1.13.1 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling typed-arena v2.0.2 [INFO] [stderr] Compiling tinyvec_macros v0.1.1 [INFO] [stderr] Compiling dyn-clone v1.0.20 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling indenter v0.3.4 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling chacha20 v0.10.0 [INFO] [stderr] Compiling jaq-core v3.0.0-gamma [INFO] [stderr] Compiling derive_builder_macro v0.20.2 [INFO] [stderr] Compiling tinyvec v1.10.0 [INFO] [stderr] Compiling ansitok v0.3.0 [INFO] [stderr] Compiling clap_complete v4.5.66 [INFO] [stderr] Compiling vt100 v0.16.2 [INFO] [stderr] Compiling ratatui-macros v0.7.0 [INFO] [stderr] Compiling ratatui-crossterm v0.1.0 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling raw-cpuid v11.6.0 [INFO] [stderr] Compiling serial2 v0.2.34 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling regex-bites v0.1.6 [INFO] [stderr] Compiling urlencoding v2.1.3 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling env_home v0.1.0 [INFO] [stderr] Compiling unicode-linebreak v0.1.5 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling downcast-rs v1.2.1 [INFO] [stderr] Compiling doctest-file v1.0.0 [INFO] [stderr] Compiling jiff v0.2.23 [INFO] [stderr] Compiling simdutf8 v0.1.5 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling pulldown-cmark v0.13.1 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling is_ci v1.2.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling supports-color v3.0.2 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling interprocess v2.4.0 [INFO] [stderr] Compiling textwrap v0.16.2 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling frizbee v0.8.2 [INFO] [stderr] Compiling portable-pty v0.9.0 [INFO] [stderr] Compiling which v8.0.0 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling ratatui v0.30.0 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling ron v0.12.0 [INFO] [stderr] Compiling color-eyre v0.6.5 [INFO] [stderr] Compiling tui-term v0.3.2 [INFO] [stderr] Compiling ansi-str v0.9.0 [INFO] [stderr] Compiling ansi-to-tui v8.0.1 [INFO] [stderr] Compiling clap_complete_nushell v4.5.10 [INFO] [stderr] Compiling unicode-normalization v0.1.25 [INFO] [stderr] Compiling derive_builder v0.20.2 [INFO] [stderr] Compiling mimalloc v0.1.48 [INFO] [stderr] Compiling rand v0.10.0 [INFO] [stderr] Compiling shell-quote v0.7.2 [INFO] [stderr] Compiling jaq-std v3.0.0-gamma [INFO] [stderr] Compiling backtrace-ext v0.2.1 [INFO] [stderr] Compiling crossterm v0.27.0 [INFO] [stderr] Compiling strip-ansi-escapes v0.2.1 [INFO] [stderr] Compiling miette-derive v7.6.0 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling terminal_size v0.4.3 [INFO] [stderr] Compiling fd-lock v4.0.4 [INFO] [stderr] Compiling console v0.16.2 [INFO] [stderr] Compiling kanal v0.1.1 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling unicode-display-width v0.3.0 [INFO] [stderr] Compiling getopts v0.2.24 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Compiling pulldown-cmark-escape v0.11.0 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling hifijson v0.5.0 [INFO] [stderr] Compiling roff v1.0.0 [INFO] [stderr] Compiling supports-hyperlinks v3.2.0 [INFO] [stderr] Compiling assert_enum_variants v0.1.2 [INFO] [stderr] Compiling self_cell v1.2.2 [INFO] [stderr] Compiling unicase v2.9.0 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling supports-unicode v3.0.0 [INFO] [stderr] Compiling comfy-table v7.2.2 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling jaq-json v2.0.0-gamma [INFO] [stderr] Compiling miette v7.6.0 [INFO] [stderr] Compiling skim v3.7.0 [INFO] [stderr] Compiling dialoguer v0.11.0 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling reedline v0.33.0 [INFO] [stderr] Compiling directories v6.0.0 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling osp-cli v1.5.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 33s [INFO] running `Command { std: "docker" "inspect" "e27fe00808c1d0f8a2a69848ce6599454bcac88eea0dbe6c0224abd13fce655d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e27fe00808c1d0f8a2a69848ce6599454bcac88eea0dbe6c0224abd13fce655d", kill_on_drop: false }` [INFO] [stdout] e27fe00808c1d0f8a2a69848ce6599454bcac88eea0dbe6c0224abd13fce655d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ddb644ef05d8934653f73076a764ec6084a042eb0ada07d65bb33268f64c7944 [INFO] running `Command { std: "docker" "start" "-a" "ddb644ef05d8934653f73076a764ec6084a042eb0ada07d65bb33268f64c7944", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling ioctl-rs v0.1.6 [INFO] [stderr] Compiling termios v0.2.2 [INFO] [stderr] Compiling serial-core v0.4.0 [INFO] [stderr] Compiling predicates-core v1.0.10 [INFO] [stderr] Compiling serial-unix v0.4.0 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling termtree v0.5.1 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling normalize-line-endings v0.3.0 [INFO] [stderr] Compiling assert_cmd v2.1.2 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling nix v0.25.1 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling serial v0.4.0 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling predicates-tree v1.0.13 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling predicates v3.1.4 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling insta v1.46.3 [INFO] [stderr] Compiling reedline v0.33.0 [INFO] [stderr] Compiling jaq-json v2.0.0-gamma [INFO] [stderr] Compiling portable-pty v0.8.1 [INFO] [stderr] Compiling osp-cli v1.5.1 (/opt/rustwide/workdir) [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling proptest v1.10.0 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 49s [INFO] running `Command { std: "docker" "inspect" "ddb644ef05d8934653f73076a764ec6084a042eb0ada07d65bb33268f64c7944", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ddb644ef05d8934653f73076a764ec6084a042eb0ada07d65bb33268f64c7944", kill_on_drop: false }` [INFO] [stdout] ddb644ef05d8934653f73076a764ec6084a042eb0ada07d65bb33268f64c7944 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a80d247ec2cbf441e7a1c4bc36535f970fe1c3eb120dce9effff25e5185f1129 [INFO] running `Command { std: "docker" "start" "-a" "a80d247ec2cbf441e7a1c4bc36535f970fe1c3eb120dce9effff25e5185f1129", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.61s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/osp_cli-4d990c297f347a54) [INFO] [stdout] [INFO] [stdout] running 720 tests [INFO] [stdout] test app::assembly::tests::host_inputs_derivation_reuses_one_config_path_for_ui_plugins_and_session_unit ... ok [INFO] [stdout] test app::assembly::tests::derive_render_settings_or_fallback_preserves_existing_seed_runtime_facts_unit ... ok [INFO] [stdout] test app::assembly::tests::build_plugin_manager_applies_launch_roots_and_preference_override_unit ... ok [INFO] [stdout] test app::assembly::tests::derive_ui_state_layers_config_runtime_and_theme_selection_unit ... ok [INFO] [stdout] test app::config_explain::tests::config_explain_includes_schema_description_in_text_and_json_unit ... ok [INFO] [stdout] test app::bootstrap::tests::debug_verbosity_from_config_clamps_string_and_integer_inputs_unit ... ok [INFO] [stdout] test app::assembly::tests::derive_ui_state_applies_repl_margin_default_without_affecting_cli_unit ... ok [INFO] [stdout] test app::config_explain::tests::config_explain_helpers_cover_scope_policy_and_key_suggestions_unit ... ok [INFO] [stdout] test app::bootstrap::tests::build_logging_config_ignores_blank_paths_even_when_file_logging_is_enabled_unit ... ok [INFO] [stdout] test app::bootstrap::tests::parse_message_level_accepts_warn_alias_and_rejects_unknown_values_unit ... ok [INFO] [stdout] test app::config_explain::tests::config_explain_redacts_sensitive_values_in_text_and_json_unit ... ok [INFO] [stdout] test app::dispatch::tests::normalize_profile_helpers_trim_blank_values_and_rewrite_cli_unit ... ok [INFO] [stdout] test app::dispatch::tests::run_action_builtin_conversion_covers_builtin_and_non_builtin_paths_unit ... ok [INFO] [stdout] test app::external::tests::external_builtin_help_passthrough_is_handled_unit ... ok [INFO] [stdout] test app::external::tests::external_native_command_help_exit_and_response_paths_unit ... ok [INFO] [stdout] test app::dispatch::tests::dispatch_reason_rendering_covers_feature_profile_and_capability_denials_unit ... ok [INFO] [stdout] test app::external::tests::external_plugin_response_preserves_messages_unit ... ok [INFO] [stdout] test app::external::tests::help_passthrough_detection_covers_flags_and_help_subcommand_unit ... ok [INFO] [stdout] test app::logging::tests::file_logging_helpers_and_writer_lifecycle_cover_split_open_toggle_and_sink_unit ... ok [INFO] [stdout] test app::help::tests::help_arg_parsers_accept_case_whitespace_and_invalid_values_unit ... ok [INFO] [stdout] test app::help::tests::parse_help_render_overrides_handle_inline_assignments_invalid_values_and_flags_unit ... ok [INFO] [stdout] test app::runtime::tests::auth_state_and_command_access_layer_policy_overrides_on_allowlists ... ok [INFO] [stdout] test app::runtime::tests::runtime_context_and_allowlists_normalize_inputs ... ok [INFO] [stdout] test app::session::tests::rebuild_state_round_trip_preserves_rows_and_scope_unit ... ok [INFO] [stdout] test app::runtime::tests::command_access_for_uses_registry_when_present_and_public_default_otherwise ... ok [INFO] [stdout] test app::runtime::tests::config_state_tracks_noops_changes_and_transaction_errors ... ok [INFO] [stdout] test app::session::tests::request_repl_exit_tracks_root_and_nested_scope_transitions_unit ... ok [INFO] [stdout] test app::config_explain::tests::explain_runtime_config_matches_resolved_runtime_presentation_defaults_unit ... ok [INFO] [stdout] test app::dispatch::tests::dispatch_visibility_helpers_cover_allowlists_unrunnable_commands_and_terminals_unit ... ok [INFO] [stdout] test app::logging::tests::logging_level_parsing_and_debug_scanning_cover_supported_inputs_unit ... ok [INFO] [stdout] test app::help::tests::render_settings_for_help_combines_presentation_format_and_level_overrides_unit ... ok [INFO] [stdout] test app::tests::app_runtime::bootstrap_message_verbosity_handles_non_utf8_short_flags_and_double_dash_unit ... ok [INFO] [stdout] test app::tests::app_runtime::error_rendering_prioritizes_actionable_details_across_levels_unit ... ok [INFO] [stdout] test app::dispatch::tests::build_dispatch_plan_routes_profiles_builtins_external_and_errors_unit ... ok [INFO] [stdout] test app::tests::app_runtime::prepare_plugin_response_handles_failures_and_pipeline_hints_unit ... ok [INFO] [stdout] test app::tests::app_runtime::prepared_plugin_response_maps_into_cli_command_result_unit ... ok [INFO] [stdout] test app::tests::app_runtime::app_session_builders_and_cache_helpers_cover_public_session_surface_unit ... ok [INFO] [stdout] test app::tests::app_runtime::run_cli_command_routes_messages_stdout_and_stderr_through_sink_unit ... ok [INFO] [stdout] test app::tests::app_runtime::native_commands_project_into_auth_catalog_unit ... ok [INFO] [stdout] test app::tests::app_runtime::run_cli_command_with_ui_builds_runtime_from_config_and_ui_unit ... ok [INFO] [stdout] test app::tests::app_runtime::free_process_wrapper_renders_usage_errors_to_bound_sink_unit ... ok [INFO] [stdout] test app::tests::app_runtime::state_and_client_builders_produce_coherent_embedder_state_unit ... ok [INFO] [stdout] test app::tests::cli_dispatch::cli_cache_flag_is_rejected_outside_repl_unit ... ok [INFO] [stdout] test app::tests::cli_dispatch::cli_presentation_flags_map_to_session_overrides_unit ... ok [INFO] [stdout] test app::tests::cli_dispatch::cli_scan_and_runtime_load_options_strip_invocation_flags_unit ... ok [INFO] [stdout] test app::tests::app_runtime::state_builder_from_host_inputs_preserves_derived_plugin_and_theme_state_unit ... ok [INFO] [stdout] test app::tests::cli_dispatch::external_inline_builtin_reuses_repl_dsl_policy_unit ... ok [INFO] [stdout] test app::tests::command_surfaces::intro_command_dispatches_as_repl_scoped_builtin_unit ... ok [INFO] [stdout] test app::tests::command_surfaces::staged_semantic_quick_search_preserves_guide_shape_by_default_unit ... ok [INFO] [stdout] test app::tests::cli_dispatch::invocation_ui_and_format_hints_overlay_runtime_defaults_unit ... ok [INFO] [stdout] test app::tests::cli_dispatch::repl_dsl_capability_is_declared_per_command_unit ... ok [INFO] [stdout] test app::tests::plugin_config::app_clients_plugin_config_entries_match_shared_projection_helper_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_config_env_collects_shared_and_plugin_specific_entries_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_config_env_serializes_lists_and_secrets_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_dispatch_context_owns_invocation_provider_override_unit ... ok [INFO] [stdout] test app::tests::app_runtime::exit_code_classification_distinguishes_usage_config_and_plugin_unit ... ok [INFO] [stdout] test app::tests::cli_dispatch::dispatch_plan_keeps_structured_builtin_shape_and_profile_normalization_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_format_hint_parser_supports_known_values_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_path_discovery_defaults_off_and_respects_config_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_process_timeout_reads_config_override_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_config_env_name_normalizes_extension_keys_unit ... ok [INFO] [stdout] test app::tests::plugin_config::plugin_dispatch_context_refreshes_cached_plugin_env_after_config_change ... ok [INFO] [stdout] test app::tests::presentation::help_render_overrides_parse_supported_and_edge_flags_unit ... ok [INFO] [stdout] test app::tests::presentation::repl_prompt_right_variants_render_incognito_and_timing_unit ... ok [INFO] [stdout] test app::tests::presentation::sensitive_key_detection_handles_common_variants_unit ... ok [INFO] [stdout] test app::tests::repl_completion::compact_repl_surface_omits_options_overview_and_prioritizes_builtins_unit ... ok [INFO] [stdout] test app::tests::plugin_config::app_state_seeds_plugin_command_policy_registry_unit ... ok [INFO] [stdout] test app::tests::presentation::repl_help_chrome_variants_render_expected_structure_unit ... ok [INFO] [stdout] test app::tests::repl_completion::compact_root_completion_suggestions_prioritize_core_commands_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_completion_tree_respects_builtin_visibility_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_completion_tree_injects_config_set_schema_keys_unit ... ok [INFO] [stdout] test app::tests::app_runtime::app_builder_product_defaults_flow_through_public_builder_surface_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_completion_tree_roots_to_active_shell_scope_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_surface_drives_overview_and_completion_visibility_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_surface_exposes_selected_provider_for_conflicts_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_surface_includes_plugin_auth_hints_in_overview_and_tooltip_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_completion_tree_contains_builtin_and_plugin_commands_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::rebuild_repl_state_preserves_last_failure_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_help_alias_parsing_and_completion_cover_root_and_scoped_paths_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::rebuild_repl_state_preserves_rich_terminal_render_runtime_unit ... ok [INFO] [stderr] 2026-03-31T18:26:12.499798Z DEBUG osp_cli::config::resolver: resolving config profile_override=None terminal=Some("repl") [INFO] [stdout] test app::tests::repl_runtime::rebuild_repl_state_preserves_session_defaults_and_shell_context_unit ... ok [INFO] [stderr] 2026-03-31T18:26:12.499893Z DEBUG osp_cli::config::bootstrap: resolving active profile explicit_profile=None terminal=Some("repl") [INFO] [stderr] 2026-03-31T18:26:12.499936Z DEBUG osp_cli::config::bootstrap: resolved profile.default from loaded layers terminal=Some("repl") selected_profile=default [INFO] [stderr] 2026-03-31T18:26:12.499955Z DEBUG osp_cli::config::bootstrap: resolved active profile active_profile=default active_profile_source=profile.default [INFO] [stderr] 2026-03-31T18:26:12.499976Z DEBUG osp_cli::config::bootstrap: prepared config resolution frame active_profile=default active_profile_source=profile.default terminal=Some("repl") known_profiles=1 [INFO] [stderr] 2026-03-31T18:26:12.500051Z DEBUG osp_cli::config::resolver: resolved config active_profile=default terminal=Some("repl") values=1 aliases=0 [INFO] [stderr] 2026-03-31T18:26:12.500309Z DEBUG osp_cli::plugin::discovery: resolved plugin search roots search_roots=0 [INFO] [stderr] 2026-03-31T18:26:12.500361Z DEBUG osp_cli::plugin::discovery: describe cache missing; using empty cache path=/tmp/osp-cli-test-cacheGWKRD5/describe-v1.json [INFO] [stderr] 2026-03-31T18:26:12.500384Z DEBUG osp_cli::plugin::discovery: completed plugin discovery discovered_plugins=0 unhealthy_plugins=0 search_roots=0 [INFO] [stderr] 2026-03-31T18:26:12.500641Z DEBUG osp_cli::app::rebuild: rebuilding REPL state after config/theme change profile_override=None scoped=false [INFO] [stderr] 2026-03-31T18:26:12.500676Z DEBUG osp_cli::app::bootstrap: resolving runtime config profile_override=None terminal=Some("repl") has_session_layer=true bootstrap_mode=Standard [INFO] [stderr] 2026-03-31T18:26:12.500783Z DEBUG osp_cli::config::runtime: discovered runtime config paths config_file=Some("/root/.config/osp/config.toml") secrets_file=Some("/root/.config/osp/secrets.toml") bootstrap_mode=Standard [INFO] [stderr] 2026-03-31T18:26:12.500951Z DEBUG osp_cli::config::runtime: building runtime loader pipeline include_env=true include_config_file=true config_file=Some("/root/.config/osp/config.toml") secrets_file=Some("/root/.config/osp/secrets.toml") has_presentation_layer=false has_cli_layer=false has_session_layer=true defaults_entries=64 [INFO] [stderr] 2026-03-31T18:26:12.501054Z DEBUG osp_cli::config::loader: loading config layers [INFO] [stderr] 2026-03-31T18:26:12.501085Z DEBUG osp_cli::config::loader: loading TOML config layer path=/root/.config/osp/config.toml missing_ok=true [INFO] [stderr] 2026-03-31T18:26:12.501110Z DEBUG osp_cli::config::loader: optional TOML config file missing path=/root/.config/osp/config.toml [INFO] [stderr] 2026-03-31T18:26:12.501123Z DEBUG osp_cli::config::loader: loading chained config layer loader_count=2 [INFO] [stderr] 2026-03-31T18:26:12.501135Z DEBUG osp_cli::config::loader: loading TOML secrets layer path=/root/.config/osp/secrets.toml missing_ok=true strict_permissions=true [INFO] [stderr] 2026-03-31T18:26:12.501150Z DEBUG osp_cli::config::loader: optional TOML secrets file missing path=/root/.config/osp/secrets.toml [INFO] [stderr] 2026-03-31T18:26:12.501166Z DEBUG osp_cli::config::loader: loaded environment secrets layer input_vars=34 entries=0 [INFO] [stderr] 2026-03-31T18:26:12.501179Z DEBUG osp_cli::config::loader: loaded chained config layer entries=0 [INFO] [stderr] 2026-03-31T18:26:12.501193Z DEBUG osp_cli::config::loader: loaded environment config layer input_vars=34 entries=0 [INFO] [stderr] 2026-03-31T18:26:12.501208Z DEBUG osp_cli::config::loader: loaded config layers defaults=64 presentation=0 file=0 secrets=0 env=0 cli=0 session=1 [INFO] [stderr] 2026-03-31T18:26:12.501258Z DEBUG osp_cli::config::resolver: resolving config profile_override=None terminal=Some("repl") [INFO] [stderr] 2026-03-31T18:26:12.501479Z DEBUG osp_cli::config::bootstrap: resolving active profile explicit_profile=None terminal=Some("repl") [INFO] [stderr] 2026-03-31T18:26:12.501507Z DEBUG osp_cli::config::bootstrap: resolved profile.default from loaded layers terminal=Some("repl") selected_profile=default [INFO] [stderr] 2026-03-31T18:26:12.501520Z DEBUG osp_cli::config::bootstrap: resolved active profile active_profile=default active_profile_source=profile.default [INFO] [stderr] 2026-03-31T18:26:12.501532Z DEBUG osp_cli::config::bootstrap: prepared config resolution frame active_profile=default active_profile_source=profile.default terminal=Some("repl") known_profiles=1 [INFO] [stdout] test app::tests::repl_runtime::rebuild_repl_state_preserves_session_render_defaults_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::rebuild_repl_state_preserves_path_discovery_enabled_by_config_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::plugin_pipeline_rendering_matches_between_cli_and_repl_unit ... ok [INFO] [stdout] test app::tests::app_runtime::app_public_entrypoints_cover_owned_runner_and_free_process_wrappers_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_bang_contains_search_respects_shell_scope_unit ... ok [INFO] [stdout] test app::tests::app_runtime::app_help_entrypoints_share_exit_and_sink_routing_invariants_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_bang_contains_search_expands_matching_command_unit ... ok [INFO] [stdout] test app::tests::presentation::presentation_prompt_profiles_preserve_local_snapshots_unit ... ok [INFO] [stdout] test app::tests::repl_completion::repl_shell_and_scoped_alias_completion_cover_scope_rules_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_builtin_overrides_do_not_mutate_runtime_ui_state_unit ... ok [INFO] [stderr] 2026-03-31T18:26:12.632992Z WARN osp_cli::plugin::manager: no plugin provider found for command command=missing active_plugins=0 [INFO] [stdout] test app::tests::repl_runtime::repl_config_unset_dry_run_preserves_session_state_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_exit_is_host_owned_at_root_but_leaves_shell_in_scope_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_bang_expands_last_visible_command_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_failure_is_cached_for_doctor_last_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_config_prompt_color_change_rebuilds_deterministically_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_config_unset_rebuilds_runtime_state_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_cache_reuses_external_result_across_pipelines_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_flag_prefixed_help_records_prompt_timing_badge_unit ... ok [INFO] [stdout] test app::timing::tests::debug_level_zero_and_empty_alignment_yield_no_output ... ok [INFO] [stdout] test app::timing::tests::duration_and_style_helpers_cover_threshold_edges ... ok [INFO] [stdout] test app::timing::tests::level_three_timing_includes_phase_breakdown ... ok [INFO] [stdout] test app::timing::tests::visible_width_and_right_alignment_ignore_ansi_sequences ... ok [INFO] [stdout] test cli::commands::config::tests::config_diagnostics_rows_include_secrets_status_unit ... ok [INFO] [stderr] 2026-03-31T18:26:12.747463Z WARN osp_cli::plugin::manager: plugin command requires explicit provider selection command=hello providers="alpha-provider (explicit), beta-provider (explicit)" [INFO] [stdout] test cli::commands::config::tests::config_get_rows_and_run_config_get_cover_bootstrap_alias_and_missing_paths_unit ... ok [INFO] [stdout] test cli::commands::config::tests::resolve_config_scopes_cover_global_profile_known_profiles_and_terminal_variants_unit ... ok [INFO] [stdout] test cli::commands::config::tests::resolve_config_store_and_names_cover_defaults_and_explicit_targets_unit ... ok [INFO] [stdout] test cli::commands::config::tests::resolve_scope_target_store_target_and_terminal_selector_cover_precedence_helpers_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_plugin_error_payload_is_handled_as_error_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_reload_intent_matches_command_scope_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_plugin_provider_override_dispatches_selected_provider_unit ... ok [INFO] [stdout] test cli::commands::config::tests::run_config_set_and_unset_reject_derived_profile_active_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_plugin_enable_restart_refreshes_command_catalog_unit ... ok [INFO] [stdout] test cli::commands::config::tests::secrets_permissions_diagnostic_covers_missing_ok_warning_and_issue_unit ... ok [INFO] [stdout] test cli::commands::config::tests::validate_write_scopes_and_session_lookup_cover_invalid_and_present_paths_unit ... ok [INFO] [stdout] test cli::commands::history::tests::history_command_is_repl_only_unit ... ok [INFO] [stdout] test cli::commands::doctor::tests::doctor_last_rendering_covers_empty_text_debug_and_json_modes_unit ... ok [INFO] [stdout] test cli::commands::intro::tests::intro_command_returns_structured_guide_output_unit ... ok [INFO] [stdout] test cli::commands::intro::tests::intro_context_projects_visible_surface_for_repl_intro_unit ... ok [INFO] [stdout] test cli::commands::history::tests::history_output_helpers_wrap_rows_and_ignore_text_results_unit ... ok [INFO] [stdout] test cli::commands::doctor::tests::doctor_commands_respect_visibility_output_shapes_and_subcommand_defs_unit ... ok [INFO] [stdout] test cli::commands::plugins::tests::doctor_rows_include_summary_and_conflicts_unit ... ok [INFO] [stdout] test cli::commands::plugins::tests::plugin_rows_render_empty_states_unit ... ok [INFO] [stdout] test cli::commands::plugins::tests::plugin_rows_render_real_metadata_and_scopes_unit ... ok [INFO] [stdout] test cli::commands::theme::tests::theme_output_helpers_and_command_def_expose_runtime_choices_unit ... ok [INFO] [stdout] test cli::invocation::tests::scan_command_tokens_covers_host_flags_aliases_clusters_and_trace_unit ... ok [INFO] [stdout] test cli::commands::theme::tests::theme_rows_and_commands_resolve_builtin_and_custom_sources_unit ... ok [INFO] [stdout] test cli::invocation::tests::scan_command_tokens_report_conflicts_and_missing_values_unit ... ok [INFO] [stdout] test cli::invocation::tests::invocation_help_hidden_completion_and_cli_argv_follow_visibility_and_flag_only_inputs_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_records_last_rows_and_bounded_cache_unit ... ok [INFO] [stdout] test cli::pipeline::tests::alias_and_command_parsing_cover_config_values_following_stages_shell_words_and_empty_input_unit ... ok [INFO] [stdout] test cli::pipeline::tests::cli_dsl_stage_validation_covers_help_and_unknown_verbs_unit ... ok [INFO] [stdout] test cli::rows::output::tests::output_row_helpers_round_trip_and_flatten_groups_unit ... ok [INFO] [stdout] test cli::pipeline::tests::alias_and_parse_errors_are_reported_cleanly_unit ... ok [INFO] [stdout] test cli::rows::output::tests::plugin_meta_and_data_shapes_preserve_alignment_and_normalize_rows_unit ... ok [INFO] [stdout] test cli::pipeline::tests::truncate_display_respects_utf8_boundaries ... ok [INFO] [stdout] test cli::commands::config::tests::run_config_set_and_unset_cover_session_paths_and_explain_output_unit ... ok [INFO] [stdout] test cli::pipeline::tests::alias_placeholders_support_positionals_defaults_and_quoting_unit ... ok [INFO] [stdout] test cli::tests::app_style_alias_maps_to_presentation_unit ... ok [INFO] [stdout] test cli::tests::parse_inline_command_tokens_accepts_builtin_and_external_commands_unit ... ok [INFO] [stdout] test completion::engine::tests::context_merge_contracts::provider_context_merges_across_completion_and_analysis ... ok [INFO] [stdout] test completion::engine::tests::metadata_contracts::subcommand_metadata_includes_tooltip_and_preview ... ok [INFO] [stdout] test completion::engine::tests::context_merge_contracts::value_completion_handles_equals_flags_and_open_quotes ... ok [INFO] [stdout] test completion::engine::tests::scope_resolution_contracts::analysis_tolerates_non_char_boundary_cursors_and_counts_value_keys ... ok [INFO] [stdout] test completion::engine::tests::request_contracts::completion_request_characterization_covers_representative_kinds_and_suggestions ... ok [INFO] [stdout] test completion::model::tests::command_line_and_node_data_structs_preserve_internal_state_unit ... ok [INFO] [stdout] test cli::tests::cli_runtime_load_options_and_inline_parser_follow_disable_flags_unit ... ok [INFO] [stdout] test completion::parse::tests::command_shape_contracts::parse_distinguishes_tail_mode_from_dsl_boundaries ... ok [INFO] [stdout] test completion::engine::tests::scope_resolution_contracts::completion_hides_later_flags_and_does_not_inherit_root_flags ... ok [INFO] [stdout] test completion::parse::tests::command_shape_contracts::parse_tracks_flag_values_pipes_and_repeated_occurrence_boundaries ... ok [INFO] [stdout] test completion::parse::tests::cursor_analysis_contracts::analyze_recovers_from_unbalanced_quotes_and_non_char_boundaries ... ok [INFO] [stdout] test completion::parse::tests::cursor_analysis_contracts::analyze_reuses_safe_cursor_snapshots_for_prefix_and_balanced_quotes ... ok [INFO] [stdout] test completion::parse::tests::cursor_analysis_contracts::cursor_state_tracks_equals_boundaries_and_open_quote_ranges ... ok [INFO] [stdout] test completion::parse::tests::scanner_contracts::scanner_preserves_token_values_offsets_and_unmatched_quote_recovery ... ok [INFO] [stdout] test completion::suggest::tests::arg_suggestions_honor_numeric_sort_after_match_score ... ok [INFO] [stdout] test completion::parse::tests::command_shape_contracts::parse_respects_option_boundaries_inline_values_and_negative_numbers ... ok [INFO] [stdout] test completion::suggest::tests::flag_suggestions_preserve_meta_and_display_fields ... ok [INFO] [stdout] test completion::suggest::tests::flag_value_modes_cover_single_multi_repeatable_and_repeated_flags_unit ... ok [INFO] [stdout] test cli::tests::appearance_overrides_trim_theme_and_apply_presentation_unit ... ok [INFO] [stdout] test completion::suggest::tests::path_value_modes_emit_path_sentinels_for_args_and_flags_unit ... ok [INFO] [stdout] test completion::suggest::tests::args_after_double_dash_advance_index ... ok [INFO] [stdout] test completion::suggest::tests::command_and_pipe_suggestions_cover_scope_fuzzy_values_and_filters_unit ... ok [INFO] [stdout] test completion::suggest::tests::subcommand_suggestions_honor_child_sort_after_match_score ... ok [INFO] [stdout] test completion::suggest::tests::suggestions_match_unicode_case_insensitively ... ok [INFO] [stdout] test completion::tree::tests::command_spec_conversion_preserves_flag_spellings_and_choices_unit ... ok [INFO] [stdout] test completion::tree::tests::duplicate_subcommands_return_an_error ... ok [INFO] [stdout] test completion::tree::tests::duplicate_root_specs_return_an_error ... ok [INFO] [stdout] test config::core::tests::adapt_value_for_schema_covers_float_and_secret_string_list_paths_unit ... ok [INFO] [stdout] test config::core::tests::config_layer_from_toml_str_rejects_derived_profile_active ... ok [INFO] [stdout] test config::core::tests::config_layer_from_toml_str_reports_invalid_sections_and_unknown_roots_unit ... ok [INFO] [stdout] test completion::tree::tests::duplicate_config_keys_return_an_error ... ok [INFO] [stdout] test config::core::tests::config_layer_helpers_cover_insert_remove_and_profile_terminal_scope_unit ... ok [INFO] [stdout] test config::core::tests::config_layer_parsing_flattens_toml_and_env_scopes_unit ... ok [INFO] [stdout] test config::core::tests::parse_input_value_covers_float_unknown_and_allowed_scope_paths_unit ... ok [INFO] [stdout] test config::core::tests::bootstrap_registry_contracts::bootstrap_and_alias_helpers_match_runtime_rules ... ok [INFO] [stdout] test config::core::tests::resolve_options_new_and_with_helpers_normalize_inputs_unit ... ok [INFO] [stdout] test completion::suggest::tests::flag_hints_filter_provider_specific_flags_and_alias_allowlists_unit ... ok [INFO] [stdout] test config::core::tests::schema_adaptation_helpers_cover_scalar_secret_list_and_env_paths_unit ... ok [INFO] [stdout] test config::core::tests::schema_extension_runtime_and_scope_helpers_cover_aliases_and_bootstrap_specs_unit ... ok [INFO] [stdout] test config::core::tests::bootstrap_registry_contracts::profile_default_is_bootstrap_only_and_rejects_invalid_scopes ... ok [INFO] [stdout] test config::core::tests::schema_value_contracts::config_values_cover_secret_interpolation_toml_and_display_paths ... ok [INFO] [stdout] test config::core::tests::schema_value_contracts::schema_parsing_handles_scalars_lists_enums_and_derived_keys ... ok [INFO] [stdout] test config::core::tests::validate_and_adapt_rejects_unknown_and_missing_required_keys ... ok [INFO] [stdout] test config::core::tests::validate_and_adapt_converts_runtime_visible_string_values ... ok [INFO] [stdout] test config::defaults::tests::builtin_defaults_fall_back_without_theme_path_when_config_root_is_missing_unit ... ok [INFO] [stdout] test config::defaults::tests::literal_default_helpers_seed_string_bool_and_integer_entries_unit ... ok [INFO] [stdout] test config::error::tests::config_error_display_and_path_context_cover_user_facing_variants_unit ... ok [INFO] [stdout] test config::interpolate::tests::explain_interpolation_reports_recursive_steps_once_unit ... ok [INFO] [stdout] test config::interpolate::tests::interpolate_all_expands_secret_placeholders_and_keeps_result_secret_unit ... ok [INFO] [stdout] test config::interpolate::tests::parse_template_rejects_empty_placeholders_and_trims_names_unit ... ok [INFO] [stdout] test config::loader::tests::chained_loader_and_pipeline_resolve_layers_with_optionals_unit ... ok [INFO] [stdout] test config::loader::tests::pipeline_builder_covers_schema_collected_env_and_optional_layer_paths_unit ... ok [INFO] [stdout] test config::loader::tests::pipeline_resolver_preserves_custom_schema_for_explain_unit ... ok [INFO] [stdout] test config::loader::tests::toml_file_loader_covers_existing_missing_optional_and_directory_paths_unit ... ok [INFO] [stdout] test config::resolver::tests::resolver_layer_mutators_and_setters_are_callable_unit ... ok [INFO] [stdout] test config::runtime::tests::defaults_only_bootstrap_skips_home_and_override_discovery_unit ... ok [INFO] [stdout] test config::defaults::tests::builtin_defaults_seed_literal_and_computed_environment_values_unit ... ok [INFO] [stdout] test config::runtime::tests::defaults_only_runtime_load_options_disable_ambient_bootstrap_unit ... ok [INFO] [stdout] test config::loader::tests::secrets_and_env_loaders_mark_secret_entries_and_directory_errors_unit ... ok [INFO] [stdout] test config::runtime::tests::runtime_config_paths_prefer_explicit_file_overrides ... ok [INFO] [stdout] test config::runtime::tests::runtime_defaults_seed_expected_keys_and_history_placeholders_unit ... ok [INFO] [stdout] test config::runtime::tests::runtime_environment_uses_home_and_temp_fallbacks_for_state_paths_unit ... ok [INFO] [stdout] test config::store::tests::helper_value_and_path_functions_cover_scalar_secret_nested_and_pruned_cases_unit ... ok [INFO] [stdout] test config::core::tests::resolved_config_helpers_read_scalar_list_secret_and_alias_views_unit ... ok [INFO] [stdout] test config::store::tests::secret_write_and_permission_validation_cover_strict_non_strict_and_missing_paths_unit ... ok [INFO] [stdout] test config::store::tests::dry_run_set_does_not_create_file ... ok [INFO] [stdout] test core::command_def::tests::clap_command_def_caches_usage_aliases_and_help_unit ... ok [INFO] [stdout] test core::command_policy::tests::access_helpers_reflect_visibility_and_runnability ... ok [INFO] [stdout] test core::command_policy::tests::capability_gated_command_is_visible_but_denied_when_capability_missing ... ok [INFO] [stdout] test core::command_policy::tests::command_path_and_policy_builders_normalize_inputs ... ok [INFO] [stdout] test core::command_policy::tests::evaluate_policy_covers_disabled_hidden_feature_profile_and_auth_variants ... ok [INFO] [stdout] test core::command_policy::tests::overrides_can_hide_commands ... ok [INFO] [stdout] test core::command_policy::tests::policy_context_builders_normalize_inputs ... ok [INFO] [stdout] test core::command_policy::tests::public_commands_can_remain_unauthenticated ... ok [INFO] [stdout] test core::command_policy::tests::registry_resolution_applies_overrides_and_contains_lookup ... ok [INFO] [stdout] test core::command_policy::tests::required_capabilities_are_simple_conjunction ... ok [INFO] [stdout] test config::store::tests::unset_behaviors_cover_missing_values_missing_files_and_pruning_unit ... ok [INFO] [stdout] test core::output::tests::output_modes_round_trip_known_values_aliases_and_variants_unit ... ok [INFO] [stdout] test core::output_model::tests::grouped_results_and_semantic_documents_cover_non_row_views_unit ... ok [INFO] [stdout] test core::output_model::tests::output_items_projection_round_trips_rows_and_groups_unit ... ok [INFO] [stdout] test core::output_model::tests::output_items_to_rows_merges_group_context_once_unit ... ok [INFO] [stdout] test core::output_model::tests::row_results_keep_first_seen_key_order_and_expose_row_views_unit ... ok [INFO] [stdout] test core::plugin::clap_tests::clap_helper_captures_subcommands_flags_and_args ... ok [INFO] [stdout] test core::plugin::tests::command_auth_converts_to_generic_command_policy_unit ... ok [INFO] [stdout] test core::plugin::clap_tests::clap_command_conversion_skips_hidden_items ... ok [INFO] [stdout] test config::store::tests::set_round_trips_cover_overwrite_list_and_terminal_profile_scopes_unit ... ok [INFO] [stdout] test core::runtime::tests::env_roundtrip_keeps_runtime_hints ... ok [INFO] [stdout] test core::runtime::tests::from_env_defaults_when_vars_missing_or_invalid ... ok [INFO] [stdout] test core::runtime::tests::new_and_with_helpers_build_runtime_hints_unit ... ok [INFO] [stdout] test core::runtime::tests::terminal_kind_falls_back_to_terminal_env ... ok [INFO] [stdout] test config::store::tests::write_and_load_helpers_cover_regular_io_and_error_paths_unit ... ok [INFO] [stdout] test core::shell_words::tests::escape_for_shell_backslashes_unsafe_characters ... ok [INFO] [stdout] test core::shell_words::tests::quote_for_shell_handles_double_quotes ... ok [INFO] [stdout] test config::store::tests::store_reports_invalid_toml_sections_and_blank_keys_for_set_and_unset_unit ... ok [INFO] [stdout] test core::shell_words::tests::quote_for_shell_handles_single_quotes ... ok [INFO] [stdout] test dsl::compiled::tests::quick_plan_helper_covers_all_quick_family_variants_unit ... ok [INFO] [stdout] test core::plugin::tests::command_auth_hint_stays_compact_and_stable_unit ... ok [INFO] [stdout] test dsl::compiled::tests::stage_behavior_centralizes_stream_render_and_semantic_rules_unit ... ok [INFO] [stdout] test core::plugin::tests::command_auth_validation_rejects_blank_entries_unit ... ok [INFO] [stdout] test dsl::engine::tests::bare_quick_stage_without_verb_still_works ... ok [INFO] [stdout] test dsl::engine::tests::copy_stage_sets_meta_flag ... ok [INFO] [stdout] test dsl::engine::tests::project_then_filter_pipeline_works ... ok [INFO] [stdout] test dsl::engine::tests::question_stage_variants_clean_empty_fields_and_filter_by_existence_unit ... ok [INFO] [stdout] test dsl::engine::tests::semantic_document_rebuilds_from_document_source_unit ... ok [INFO] [stdout] test dsl::engine::tests::streaming_pipeline_stage_variants_preserve_meta_and_errors_unit ... ok [INFO] [stdout] test dsl::engine::tests::unknown_single_letter_verb_errors ... ok [INFO] [stdout] test dsl::engine::tests::unroll_stage_expands_lists_and_requires_field_names_unit ... ok [INFO] [stdout] test dsl::engine::tests::value_scope_alias_filters_by_value ... ok [INFO] [stdout] test dsl::eval::context::tests::keeps_first_seen_key_order ... ok [INFO] [stdout] test dsl::eval::flatten::tests::coalesce_skips_invalid_or_negative_index_paths ... ok [INFO] [stdout] test dsl::eval::flatten::tests::coalesces_flattened_row_back_to_nested_structure ... ok [INFO] [stdout] test dsl::eval::flatten::tests::flatten_rows_maps_each_row_independently ... ok [INFO] [stdout] test dsl::eval::flatten::tests::flattens_nested_objects_and_lists ... ok [INFO] [stdout] test dsl::eval::matchers::tests::absolute_paths_require_prefix_match ... ok [INFO] [stdout] test dsl::eval::matchers::tests::detailed_matching_reports_partial_hits_when_exact_match_is_absent ... ok [INFO] [stdout] test dsl::eval::matchers::tests::fuzzy_key_matching_accepts_typo_like_last_segment_hits ... ok [INFO] [stdout] test dsl::engine::tests::streaming_materializes_cleanly_at_sort_barrier ... ok [INFO] [stdout] test dsl::engine::tests::apply_output_pipeline_covers_explicit_materializing_row_stages_unit ... ok [INFO] [stdout] test dsl::engine::tests::grouped_output_row_transforms_preserve_group_container_unit ... ok [INFO] [stdout] test dsl::engine::tests::streaming_executor_matches_eager_for_representative_hot_paths_unit ... ok [INFO] [stdout] test dsl::eval::matchers::tests::matches_subsequence_dotted_paths ... ok [INFO] [stdout] test dsl::eval::matchers::tests::selector_paths_match_exact_index ... ok [INFO] [stdout] test dsl::eval::matchers::tests::relative_selector_paths_match_descendant_subsequences ... ok [INFO] [stdout] test dsl::eval::resolve::tests::path_match_materialization_tracks_addresses_and_selected_nulls_unit ... ok [INFO] [stdout] test dsl::eval::resolve::tests::relative_path_resolution_requires_structural_matches_unit ... ok [INFO] [stdout] test dsl::eval::resolve::tests::resolve_pair_helpers_cover_deduplication_flat_fallback_and_materialization_unit ... ok [INFO] [stdout] test dsl::eval::matchers::tests::fuzzy_text_matching_rejects_loose_subsequence_noise ... ok [INFO] [stdout] test dsl::eval::resolve::tests::slice_and_truthiness_helpers_cover_edge_cases_unit ... ok [INFO] [stdout] test dsl::eval::matchers::tests::matches_last_segment_case_insensitive ... ok [INFO] [stdout] test dsl::parse::key_spec::tests::does_not_treat_bang_equal_as_prefix ... ok [INFO] [stdout] test dsl::eval::resolve::tests::path_evaluation_and_exact_address_helpers_cover_fanout_slices_and_indexes_unit ... ok [INFO] [stdout] test dsl::parse::key_spec::tests::parses_case_insensitive_exact ... ok [INFO] [stdout] test dsl::parse::key_spec::tests::parses_case_sensitive_exact_with_strict ... ok [INFO] [stdout] test dsl::eval::matchers::tests::value_contains_handles_arrays_and_case_sensitivity ... ok [INFO] [stdout] test dsl::parse::key_spec::tests::parses_negated_existence ... ok [INFO] [stdout] test dsl::parse::lexer::tests::split_pipeline_reports_trailing_escape ... ok [INFO] [stdout] test dsl::parse::lexer::tests::tokenize_stage_keeps_operator_chars_inside_quoted_value ... ok [INFO] [stdout] test dsl::parse::lexer::tests::tokenize_stage_keeps_prefix_operators_in_single_token ... ok [INFO] [stdout] test dsl::parse::lexer::tests::tokenize_stage_splits_inline_operators ... ok [INFO] [stdout] test dsl::parse::lexer::tests::split_pipeline_reports_unterminated_quote ... ok [INFO] [stdout] test dsl::parse::lexer::tests::tokenize_stage_reports_trailing_escape ... ok [INFO] [stdout] test dsl::parse::lexer::tests::split_pipeline_respects_quoted_pipes ... ok [INFO] [stdout] test dsl::parse::path::tests::expression_to_flat_key_accepts_positive_index_only ... ok [INFO] [stdout] test dsl::parse::path::tests::full_slice_does_not_require_materialization ... ok [INFO] [stdout] test dsl::parse::path::tests::non_full_slice_requires_materialization ... ok [INFO] [stdout] test dsl::parse::lexer::tests::tokenize_stage_handles_quotes_and_escapes ... ok [INFO] [stdout] test dsl::parse::path::tests::parse_path_reports_typed_errors_for_common_invalid_inputs_unit ... ok [INFO] [stdout] test dsl::parse::path::tests::parses_dotted_path_with_selectors ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_pipeline_extracts_command_and_stages ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_pipeline_rejects_trailing_escape ... ok [INFO] [stdout] test dsl::parse::path::tests::detects_materialization_for_negative_index ... ok [INFO] [stdout] test dsl::parse::path::tests::structural_path_token_detection_matches_selector_routing_unit ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_pipeline_rejects_invalid_quotes ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_pipeline_ignores_empty_segments_like_python ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_stage_list_rejects_invalid_quoted_stage ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_stage_extracts_verb_and_spec ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_stage_list_rejects_trailing_escape ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_stage_marks_unknown_single_letter_verb_as_explicit ... ok [INFO] [stdout] test dsl::parse::quick::tests::parses_fuzzy_prefix_before_token ... ok [INFO] [stdout] test dsl::parse::pipeline::tests::parse_stage_with_only_term_becomes_quick_candidate ... ok [INFO] [stdout] test dsl::parse::quick::tests::parses_key_not_equals_form ... ok [INFO] [stdout] test dsl::parse::quick::tests::parses_key_scope ... ok [INFO] [stdout] test dsl::parse::quick::tests::parses_scope_then_fuzzy_prefix ... ok [INFO] [stdout] test dsl::parse::quick::tests::parses_value_scope ... ok [INFO] [stdout] test dsl::tests::contracts::quick_contract_preserves_matching_parent_objects_in_object_arrays ... ok [INFO] [stdout] test dsl::tests::contracts::quoted_term_contract_is_shared_by_project_and_value_stages ... ok [INFO] [stdout] test dsl::tests::contracts::nested_path_contract_is_shared_by_filter_project_and_value_stages ... ok [INFO] [stdout] test dsl::value::tests::collapse_summarizes_grouped_semantic_values_unit ... ok [INFO] [stdout] test dsl::value::tests::copy_stage_preserves_semantic_value_verbatim_unit ... ok [INFO] [stdout] test dsl::tests::contracts::unicode_case_insensitive_matching_is_shared_by_quick_and_filter ... ok [INFO] [stdout] test dsl::value::tests::filter_addressed_path_failures_collapse_to_null_unit ... ok [INFO] [stdout] test dsl::tests::contracts::grouped_row_stage_contract_preserves_metadata_and_transforms_rows ... ok [INFO] [stdout] test dsl::value::tests::filter_preserves_section_metadata_when_descendants_match_unit ... ok [INFO] [stdout] test dsl::tests::contracts::unsupported_group_only_stage_fails_loudly ... ok [INFO] [stdout] test dsl::value::tests::fuzzy_quick_filters_semantic_entries_with_typo_tolerance_unit ... ok [INFO] [stdout] test dsl::value::tests::fuzzy_quick_rejects_structural_path_tokens_unit ... ok [INFO] [stdout] test dsl::value::tests::group_groups_nested_semantic_entry_collections_unit ... ok [INFO] [stdout] test dsl::value::tests::limit_trims_nested_semantic_collections_unit ... ok [INFO] [stdout] test dsl::value::tests::project_path_dropper_only_removes_selected_branch_unit ... ok [INFO] [stdout] test dsl::value::tests::project_relative_path_requires_real_path_matches_unit ... ok [INFO] [stdout] test dsl::value::tests::project_structural_keeper_and_dropper_variants_preserve_section_alignment_unit ... ok [INFO] [stdout] test dsl::value::tests::key_scope_alias_filters_semantic_entries_by_key_unit ... ok [INFO] [stdout] test dsl::value::tests::negated_path_quick_preserves_user_strings_that_look_like_old_remove_markers_unit ... ok [INFO] [stdout] test dsl::value::tests::aggregate_and_count_aliases_produce_same_nested_semantic_count_unit ... ok [INFO] [stdout] test dsl::value::tests::question_cleans_nested_semantic_values_unit ... ok [INFO] [stdout] test dsl::value::tests::project_structural_selection_preserves_user_strings_that_look_like_old_hole_markers_unit ... ok [INFO] [stdout] test dsl::value::tests::jq_stage_transforms_semantic_values_with_real_jaq_unit ... ok [INFO] [stdout] test dsl::value::tests::project_structural_selection_preserves_selected_null_array_items_unit ... ok [INFO] [stdout] test dsl::value::tests::quick_keeps_matching_array_object_elements_whole_without_inventing_values_unit ... ok [INFO] [stdout] test dsl::value::tests::quick_keeps_only_matching_root_fields_and_matching_array_elements_unit ... ok [INFO] [stdout] test dsl::value::tests::quick_preserves_container_metadata_when_descendants_match_unit ... ok [INFO] [stdout] test dsl::value::tests::unroll_expands_nested_semantic_entry_collections_unit ... ok [INFO] [stdout] test dsl::verb_info::tests::explicit_verb_registration_is_derived_from_metadata_unit ... ok [INFO] [stdout] test dsl::value::tests::value_stage_extracts_nested_semantic_values_unit ... ok [INFO] [stdout] test dsl::verb_info::tests::stage_streamability_matches_real_barriers_unit ... ok [INFO] [stdout] test dsl::verb_info::tests::verb_metadata_exposes_streaming_annotations_unit ... ok [INFO] [stdout] test dsl::verbs::aggregate::tests::aggregates_cover_empty_numeric_sets_and_ordered_extrema_unit ... ok [INFO] [stdout] test dsl::verbs::aggregate::tests::apply_with_plan_aggregates_rows_and_grouped_rows_unit ... ok [INFO] [stdout] test dsl::verbs::aggregate::tests::compile_parses_functions_columns_and_aliases_unit ... ok [INFO] [stdout] test dsl::value::tests::value_scope_alias_filters_semantic_entries_by_value_unit ... ok [INFO] [stdout] test dsl::verbs::aggregate::tests::compile_rejects_empty_and_malformed_function_calls_unit ... ok [INFO] [stdout] test dsl::value::tests::quick_narrows_singleton_matching_array_element_when_whole_element_would_be_noop_unit ... ok [INFO] [stdout] test dsl::value::tests::sort_orders_nested_semantic_entry_collections_unit ... ok [INFO] [stdout] test dsl::verbs::collapse::tests::collapses_groups_into_summary_rows ... ok [INFO] [stdout] test dsl::verbs::aggregate::tests::compile_uses_default_aliases_for_parenthesized_and_default_forms_unit ... ok [INFO] [stdout] test dsl::verbs::aggregate::tests::count_macros_cover_rows_groups_and_semantic_values_unit ... ok [INFO] [stdout] test dsl::verbs::collapse::tests::rejects_flat_rows ... ok [INFO] [stdout] test dsl::verbs::common::tests::alias_parsers_cover_valid_and_invalid_as_forms ... ok [INFO] [stdout] test dsl::verbs::common::tests::map_group_rows_preserves_metadata_while_transforming_rows ... ok [INFO] [stdout] test dsl::verbs::common::tests::optional_alias_parser_returns_none_when_alias_is_absent_or_index_missing ... ok [INFO] [stdout] test dsl::verbs::common::tests::parse_stage_words_reports_lexer_errors ... ok [INFO] [stdout] test dsl::verbs::common::tests::parse_terms_respects_quoted_commas_and_spaces ... ok [INFO] [stdout] test dsl::verbs::common::tests::parse_terms_splits_commas_and_whitespace ... ok [INFO] [stdout] test dsl::verbs::copy::tests::copy_stage_is_identity_for_rows_unit ... ok [INFO] [stdout] test dsl::verbs::aggregate::tests::apply_value_with_plan_traverses_nested_collections_unit ... ok [INFO] [stdout] test dsl::verbs::filter::tests::filters_on_equals_predicate ... ok [INFO] [stdout] test dsl::verbs::filter::tests::invalid_regex_fails_at_parse_time ... ok [INFO] [stdout] test dsl::verbs::common::tests::parse_stage_words_handles_empty_and_quoted_input ... ok [INFO] [stdout] test dsl::verbs::filter::tests::parse_treats_prefixed_path_filters_as_structural_selectors ... ok [INFO] [stdout] test dsl::verbs::filter::tests::groups_keep_matching_rows_when_headers_do_not_match ... ok [INFO] [stdout] test dsl::verbs::filter::tests::parses_timestamps_for_ordered_comparison ... ok [INFO] [stdout] test dsl::verbs::filter::tests::supports_existence_checks ... ok [INFO] [stdout] test dsl::verbs::filter::tests::supports_numeric_timestamp_and_missing_negated_comparisons ... ok [INFO] [stdout] test dsl::verbs::filter::tests::supports_array_regex_and_boolean_matches ... ok [INFO] [stdout] test dsl::verbs::filter::tests::supports_spaced_contains_syntax ... ok [INFO] [stdout] test dsl::verbs::filter::tests::supports_negated_missing_keys ... ok [INFO] [stdout] test dsl::verbs::jq::tests::json_helpers_wrap_scalars_and_restore_group_fallback_metadata_unit ... ok [INFO] [stdout] test dsl::verbs::jq::tests::apply_with_expr_returns_empty_rows_when_jaq_emits_no_output_unit ... ok [INFO] [stdout] test dsl::verbs::jq::tests::run_jaq_collects_multiple_outputs_into_one_json_array_unit ... ok [INFO] [stdout] test dsl::verbs::limit::tests::handles_zero_limit ... ok [INFO] [stdout] test dsl::verbs::jq::tests::compile_rejects_empty_expressions_and_normalizes_quotes_unit ... ok [INFO] [stdout] test dsl::verbs::limit::tests::rejects_invalid_argument_count ... ok [INFO] [stdout] test dsl::verbs::limit::tests::supports_negative_count_for_tail ... ok [INFO] [stdout] test dsl::verbs::limit::tests::supports_negative_count_with_negative_offset ... ok [INFO] [stdout] test dsl::verbs::limit::tests::supports_positive_count_with_negative_offset ... ok [INFO] [stdout] test dsl::verbs::limit::tests::supports_positive_count_with_positive_offset ... ok [INFO] [stdout] test dsl::verbs::limit::tests::takes_head_for_positive_limit ... ok [INFO] [stdout] test dsl::verbs::project::tests::project_basic_selection_variants_cover_columns_droppers_and_quoted_terms_unit ... ok [INFO] [stdout] test dsl::verbs::project::tests::project_fanout_and_dynamic_label_rules_cover_projection_drop_and_ambiguity_unit ... ok [INFO] [stdout] test dsl::verbs::project::tests::project_group_retention_and_compile_guards_cover_empty_specs_and_structural_droppers_unit ... ok [INFO] [stdout] test dsl::verbs::project::tests::project_nested_path_variants_cover_exact_relative_and_absolute_matching_unit ... ok [INFO] [stdout] test dsl::verbs::question::tests::empty_spec_cleans_group_rows_without_touching_group_metadata ... ok [INFO] [stdout] test dsl::verbs::question::tests::empty_spec_cleans_rows_and_drops_empty_results ... ok [INFO] [stdout] test dsl::verbs::question::tests::non_empty_spec_reuses_quick_filter_for_rows_and_groups ... ok [INFO] [stdout] test dsl::verbs::quick::tests::compile_classifies_structural_selectors_and_rejects_invalid_fuzzy_forms_unit ... ok [INFO] [stdout] test dsl::verbs::quick::tests::dotted_token_search_falls_back_to_visible_row_text_for_exact_partial_and_escaped_queries_unit ... ok [INFO] [stdout] test dsl::verbs::quick::tests::grouped_quick_uses_single_row_mode_per_group_unit ... ok [INFO] [stdout] test dsl::verbs::quick::tests::path_scoped_quick_preserves_row_and_value_envelopes_unit ... ok [INFO] [stdout] test dsl::verbs::quick::tests::quick_helper_functions_cover_parent_prefix_and_value_matching_unit ... ok [INFO] [stdout] test dsl::verbs::quick::tests::stream_rows_with_plan_preserves_rows_and_errors_across_seed_orders_unit ... ok [INFO] [stdout] test dsl::verbs::quick::tests::transform_row_variants_trim_arrays_synthetic_hits_and_squeezed_entries_unit ... ok [INFO] [stdout] test dsl::verbs::sort::tests::apply_value_with_plan_sorts_scalars_and_nested_collection_rows_unit ... ok [INFO] [stdout] test dsl::verbs::sort::tests::apply_with_plan_sorts_rows_and_groups_using_requested_casts_unit ... ok [INFO] [stdout] test dsl::verbs::sort::tests::compile_parses_descending_keys_and_casts_unit ... ok [INFO] [stdout] test dsl::verbs::sort::tests::compile_rejects_empty_specs_and_unknown_casts_unit ... ok [INFO] [stdout] test dsl::verbs::unroll::tests::unroll_dotted_row_path_expands_nested_field_unit ... ok [INFO] [stdout] test dsl::verbs::unroll::tests::unroll_exact_path_duplicates_only_selected_branch_unit ... ok [INFO] [stdout] test dsl::verbs::values::tests::emits_requested_scalar_values_and_ignores_missing_keys ... ok [INFO] [stdout] test dsl::verbs::values::tests::empty_spec_emits_all_scalar_and_array_values_in_order ... ok [INFO] [stdout] test dsl::verbs::values::tests::explodes_array_values ... ok [INFO] [stdout] test dsl::verbs::values::tests::extracts_addressed_nested_values_while_preserving_section_shell ... ok [INFO] [stdout] test dsl::verbs::values::tests::extracts_top_level_scalar_arrays_from_semantic_payloads ... ok [INFO] [stdout] test dsl::verbs::values::tests::missing_semantic_value_path_returns_null ... ok [INFO] [stdout] test dsl::verbs::values::tests::resolves_nested_paths_and_quoted_terms ... ok [INFO] [stdout] test guide::template::tests::markdown_template_keeps_non_semantic_or_invalid_code_blocks_literal_unit ... ok [INFO] [stdout] test guide::template::tests::markdown_template_parses_headings_includes_lists_and_inline_markdown_unit ... ok [INFO] [stdout] test guide::template::tests::markdown_template_parses_valid_osp_code_blocks_as_semantic_data_unit ... ok [INFO] [stdout] test dsl::verbs::quick::tests::single_row_and_key_scoped_quick_modes_cover_positive_negated_existence_and_key_matching_unit ... ok [INFO] [stdout] test guide::tests::guide_markdown_surfaces_sections_and_bounds_entry_rows_unit ... ok [INFO] [stdout] test guide::tests::guide_output_restore_round_trips_canonical_and_authored_ordered_shapes_unit ... ok [INFO] [stdout] test guide::tests::guide_restore_prefers_document_and_accepts_legacy_row_shapes_unit ... ok [INFO] [stdout] test guide::tests::guide_value_lines_use_semantic_content_and_preserve_object_value_order_unit ... ok [INFO] [stdout] test guide::tests::guide_view_from_command_def_builds_usage_arguments_and_options_unit ... ok [INFO] [stdout] test native::tests::empty_registry_and_default_auth_catalog_paths_unit ... ok [INFO] [stdout] test native::tests::registered_command_executes_through_registry_unit ... ok [INFO] [stdout] test guide::tests::filtered_for_help_level_hides_verbose_sections_until_requested_unit ... ok [INFO] [stdout] test native::tests::registry_catalog_and_policy_projection_cover_lookup_completion_and_root_auth_unit ... ok [INFO] [stdout] test native::tests::registry_collects_nested_auth_policies_when_describe_is_overridden_unit ... ok [INFO] [stdout] test plugin::active::tests::active_view_reuses_one_available_provider_index_unit ... ok [INFO] [stdout] test plugin::catalog::tests::catalog_uses_canonical_command_metadata_when_raw_names_drift_unit ... ok [INFO] [stdout] test plugin::catalog::tests::command_catalog_marks_ambiguous_commands_without_touching_dispatch_unit ... ok [INFO] [stdout] test plugin::catalog::tests::completion_words_and_help_render_from_catalog_surface_unit ... ok [INFO] [stdout] test plugin::config::tests::collect_plugin_config_env_ignores_incomplete_plugin_keys ... ok [INFO] [stdout] test plugin::config::tests::config_value_to_plugin_env_serializes_scalars_lists_and_nans ... ok [INFO] [stdout] test plugin::config::tests::plugin_config_env_cache_reuses_revision_and_refreshes_after_replace ... ok [INFO] [stdout] test plugin::config::tests::plugin_config_env_name_normalizes_mixed_separators ... ok [INFO] [stdout] test plugin::config::tests::plugin_entries_merge_shared_and_plugin_specific_values ... ok [INFO] [stdout] test plugin::selection::tests::canonical_command_identity_drives_provider_lookup_unit ... ok [INFO] [stdout] test plugin::selection::tests::provider_availability_honors_command_state_over_default_enabled_unit ... ok [INFO] [stdout] test plugin::tests::cache_and_issue_helpers_cover_update_lookup_and_prune_unit ... ok [INFO] [stdout] test plugin::selection::tests::provider_resolution_prefers_override_then_preference_then_unique_unit ... ok [INFO] [stdout] test plugin::tests::completion_words_collect_flags_and_backbone_commands_unit ... ok [INFO] [stdout] test plugin::tests::command_preferences_load_state_and_provider_from_resolved_config_unit ... ok [INFO] [stdout] test plugin::tests::describe_command_helpers_preserve_nested_completion_metadata_unit ... ok [INFO] [stdout] test plugin::tests::bundled_plugins_skip_describe_until_manifest_requirements_pass_unit ... ok [INFO] [stdout] test dsl::verbs::jq::tests::run_jaq_reports_compile_eval_non_json_and_empty_output_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.055330Z WARN osp_cli::plugin::discovery: duplicate plugin id discovered plugin_id=shared winner=/tmp/osp-shared-beta providers="/tmp/osp-shared-alpha, /tmp/osp-shared-beta" [INFO] [stdout] test dsl::verbs::jq::tests::apply_with_expr_uses_real_jaq_for_rows_groups_and_values_unit ... ok [INFO] [stdout] test plugin::tests::duplicate_plugin_ids_fall_through_to_later_healthy_provider_when_earlier_copy_is_broken_unit ... ok [INFO] [stdout] test plugin::tests::duplicate_plugin_ids_keep_first_healthy_provider_and_shadow_later_copies_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.055604Z WARN osp_cli::plugin::discovery: duplicate plugin id discovered plugin_id=shared winner=/tmp/osp-shared-alpha providers="/tmp/osp-shared-alpha, /tmp/osp-shared-beta" [INFO] [stderr] 2026-03-31T18:26:13.058124Z WARN osp_cli::plugin::manager: no plugin provider found for command command=shared active_plugins=2 [INFO] [stdout] test app::tests::repl_completion::repl_alias_completion_inherits_prefilled_context_unit ... ok [INFO] [stdout] test plugin::tests::manifest_helpers_cover_not_bundled_missing_invalid_and_valid_paths_unit ... ok [INFO] [stdout] test app::tests::repl_runtime::repl_provider_selection_restart_invalidates_command_cache_unit ... ok [INFO] [stdout] test plugin::tests::min_osp_version_helper_covers_compatible_and_invalid_inputs_unit ... ok [INFO] [stdout] test plugin::tests::plugin_dispatch_context_and_error_formats_cover_local_helper_paths_unit ... ok [INFO] [stdout] test plugin::tests::disabling_a_command_updates_only_that_command_in_memory_unit ... ok [INFO] [stdout] test plugin::tests::dispatch_drains_large_plugin_output_without_false_timeout_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.084369Z WARN osp_cli::plugin::dispatch: plugin describe execution failed executable=/tmp/osp-cli-plugin-manager-missing-describehbptso/osp-missing error=No such file or directory (os error 2) [INFO] [stdout] test plugin::tests::provider_selection_validation_rejects_empty_unknown_and_mismatched_inputs_unit ... ok [INFO] [stdout] test cli::commands::config::tests::run_config_set_and_unset_cover_persistent_paths_and_warning_unit ... ok [INFO] [stdout] test plugin::tests::config_backed_preferences_can_disable_and_route_commands_unit ... ok [INFO] [stdout] test plugin::tests::provider_selection_validation_respects_current_command_availability_unit ... ok [INFO] [stdout] test plugin::tests::search_root_and_checksum_helpers_cover_real_filesystem_paths_unit ... ok [INFO] [stdout] test ports::mock::tests::exact_netgroup_queries_return_single_match ... ok [INFO] [stdout] test ports::mock::tests::user_filter_uid_equals_returns_match ... ok [INFO] [stdout] test ports::tests::filter_matches_arrays_and_missing_fields_fail_cleanly ... ok [INFO] [stdout] test ports::mock::tests::missing_entries_return_empty_results ... ok [INFO] [stdout] test plugin::tests::describe_plugin_and_provider_error_paths_cover_missing_nonzero_invalid_and_execute_failed_unit ... ok [INFO] [stdout] test ports::tests::filter_supports_key_value_match ... ok [INFO] [stderr] 2026-03-31T18:26:13.109216Z WARN osp_cli::plugin::dispatch: plugin command execution failed plugin_id=missing executable=/tmp/osp-cli-plugin-manager-missing-describehbptso/osp-missing-run command=missing error=No such file or directory (os error 2) [INFO] [stdout] test ports::tests::parse_attributes_trims_and_rejects_empty_lists ... ok [INFO] [stdout] test ports::tests::projection_keeps_selected_keys_only ... ok [INFO] [stdout] test plugin::tests::refresh_picks_up_filesystem_changes_and_prunes_stale_cache ... ok [INFO] [stdout] test ports::mock::tests::wildcard_queries_match_users_and_netgroups ... ok [INFO] [stdout] test ports::tests::filter_supports_case_insensitive_substring_and_wildcard_matching ... ok [INFO] [stdout] test repl::completion::tests::alias_completion_helpers_cover_prefilled_flags_missing_targets_and_collisions_unit ... ok [INFO] [stdout] test ports::tests::projection_runs_after_filtering ... ok [INFO] [stdout] test repl::completion::tests::injects_invocation_flags_on_root_and_children ... ok [INFO] [stdout] test repl::completion::tests::marks_context_only_flags_recursively ... ok [INFO] [stdout] test repl::completion::tests::scope_completion_tree_handles_current_and_unknown_scopes_unit ... ok [INFO] [stdout] test repl::completion::tests::alias_template_sanitizer_replaces_placeholders_and_preserves_suffixes ... ok [INFO] [stdout] test repl::completion::tests::dsl_help_describes_materialization_and_streaming_behaviors_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.126727Z WARN osp_cli::plugin::dispatch: plugin describe timed out executable=/tmp/osp-cli-plugin-manager-describe-timeouthhtsEB/plugins/osp-hang-describe timeout_ms=50 stderr= [INFO] [stdout] test repl::dispatch::command::tests::parse_repl_invocation_invalid_help_alias_paths_cover_help_and_error_unit ... ok [INFO] [stdout] test repl::dispatch::builtins::tests::parse_repl_builtin_covers_none_help_exit_and_bang_unit ... ok [INFO] [stdout] test repl::dispatch::command::tests::render_repl_command_output_covers_json_and_text_pipeline_paths_unit ... ok [INFO] [stdout] test repl::dispatch::command::tests::repl_cache_key_covers_disabled_builtin_and_external_paths_unit ... ok [INFO] [stdout] test repl::dispatch::command::tests::parse_repl_invocation_covers_missing_command_and_inline_help_errors_unit ... ok [INFO] [stdout] test plugin::tests::hung_describe_marks_plugin_unhealthy_unit ... ok [INFO] [stdout] test repl::dispatch::shell::tests::native_shell_entry_and_scoped_help_render_unit ... ok [INFO] [stdout] test repl::dispatch::builtins::tests::execute_repl_builtin_covers_exit_and_help_unit ... ok [INFO] [stdout] test repl::dispatch::shell::tests::root_help_quick_filter_uses_overview_descriptions_not_subcommand_inventory_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.241643Z WARN osp_cli::plugin::dispatch: plugin command timed out plugin_id=hang executable=/tmp/osp-cli-plugin-manager-dispatch-timeoutdeli7Z/plugins/osp-hang command=hang timeout_ms=50 stderr= [INFO] [stdout] test repl::dispatch::tests::bang_execution_and_scope_helpers_cover_help_matches_and_replace_unit ... ok [INFO] [stdout] test repl::dispatch::shell::tests::shortcut_classification_and_execution_cover_help_none_and_shell_entry_error_unit ... ok [INFO] [stdout] test repl::dispatch::tests::clap_error_helpers_extract_summary_and_body_when_present_or_missing_unit ... ok [INFO] [stdout] test repl::dispatch::tests::finalize_repl_command_uses_intro_reload_when_requested_unit ... ok [INFO] [stdout] test repl::dispatch::tests::execute_repl_plugin_line_records_failures_and_inline_help_unit ... ok [INFO] [stdout] test plugin::tests::path_discovery_is_opt_in_and_uses_passive_cache_until_dispatch_unit ... ok [INFO] [stdout] test repl::dispatch::tests::intro_reload_keys_cover_theme_color_and_palette_mutations_unit ... ok [INFO] [stdout] test repl::dispatch::tests::leave_repl_shell_returns_none_at_root_unit ... ok [INFO] [stdout] test repl::dispatch::tests::render_repl_command_output_handles_text_none_and_stderr_unit ... ok [INFO] [stdout] test repl::dispatch::tests::repl_builtin_and_bang_parsers_cover_shortcuts_unit ... ok [INFO] [stdout] test repl::dispatch::tests::repl_command_spec_covers_repl_variant_and_builtin_dsl_matrix_unit ... ok [INFO] [stdout] test repl::dispatch::tests::intro_value_pipeline_prefers_matching_entry_content_unit ... ok [INFO] [stdout] test repl::dispatch::tests::repl_exit_behaves_differently_for_root_and_nested_shells_unit ... ok [INFO] [stdout] test repl::dispatch::tests::repl_inline_help_kinds_match_supported_clap_errors_unit ... ok [INFO] [stdout] test repl::dispatch::tests::repl_restart_detection_covers_mutating_commands_unit ... ok [INFO] [stdout] test repl::dispatch::shell::tests::root_help_shortcut_supports_dsl_stages_unit ... ok [INFO] [stdout] test repl::dispatch::tests::root_help_rendering_and_shell_prefix_helpers_cover_root_paths_unit ... ok [INFO] [stdout] test repl::dispatch::tests::staged_repl_line_validation_rejects_invalid_invocations_before_pipeline_execution_unit ... ok [INFO] [stdout] test repl::dispatch::tests::theme_show_value_pipeline_renders_selected_field_rhs_unit ... ok [INFO] [stdout] test repl::engine::config::tests::prompt_and_restart_outcomes_stay_plain_semantic_payloads ... ok [INFO] [stdout] test repl::engine::config::tests::run_config_builder_captures_host_surface_choices ... ok [INFO] [stdout] test repl::engine::overlay::tests::launch_history_picker_skips_empty_history_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.329982Z WARN osp_cli::plugin::dispatch: plugin command timed out plugin_id=hang executable=/tmp/osp-cli-plugin-manager-timeout-process-groupYRhRnu/plugins/osp-hang command=hang timeout_ms=50 stderr= [INFO] [stdout] test repl::dispatch::shell::tests::root_help_shortcut_supports_explicit_value_format_with_dsl_unit ... ok [INFO] [stdout] test repl::dispatch::tests::repl_dispatch_and_classification_cover_representative_line_categories_unit ... ok [INFO] [stdout] test repl::dispatch::shell::tests::shell_helpers_cover_prefix_exit_and_root_help_unit ... ok [INFO] [stdout] test repl::engine::session::tests::apply_interactive_submission_covers_editor_update_and_terminal_outcomes_unit ... ok [INFO] [stdout] test repl::engine::session::tests::interactive_signal_paths_cover_host_picker_submit_and_ctrl_events_unit ... ok [INFO] [stdout] test repl::engine::tests::color_parser_extracts_hex_and_named_colors ... ok [INFO] [stdout] test repl::engine::session::tests::repl_keybindings_wire_completion_and_history_shortcuts_unit ... ok [INFO] [stdout] test repl::engine::tests::completer_can_use_projected_line_for_host_flags_unit ... ok [INFO] [stdout] test repl::engine::tests::completer_hides_suggestions_requested_by_projection_unit ... ok [INFO] [stdout] test repl::dispatch::tests::intro_pipeline_keeps_filtered_guide_structure_unit ... ok [INFO] [stdout] test repl::engine::tests::completer_with_tree_does_not_fallback_to_word_list ... ok [INFO] [stdout] test repl::engine::tests::completer_uses_engine_metadata_for_subcommands ... ok [INFO] [stdout] test repl::engine::tests::completion_analysis_marks_uncommitted_root_tokens_as_subcommand_context_unit ... ok [INFO] [stdout] test repl::engine::tests::completer_covers_prefix_fuzzy_and_pipe_scenarios_unit ... ok [INFO] [stdout] test repl::engine::tests::cursor_probe_helpers_distinguish_errors_and_valid_reports_unit ... ok [INFO] [stdout] test repl::engine::tests::completion_debug_options_builders_cover_appearance_and_empty_steps_unit ... ok [INFO] [stdout] test repl::engine::overlay::tests::overlay_color_and_menu_helpers_cover_completion_and_history_paths_unit ... ok [INFO] [stdout] test repl::engine::tests::autocomplete_policy_and_path_helpers_cover_editing_and_lookup_edges_unit ... ok [INFO] [stdout] test repl::engine::tests::debug_completion_and_steps_surface_menu_state_unit ... ok [INFO] [stdout] test repl::engine::tests::debug_history_menu_surfaces_numbered_labels_and_steps_unit ... ok [INFO] [stdout] test repl::engine::tests::debug_step_parse_round_trips_known_values_unit ... ok [INFO] [stdout] test repl::engine::tests::evaluate_repl_submission_handles_restart_and_error_paths_unit ... ok [INFO] [stdout] test repl::engine::tests::history_completer_ranks_exact_prefix_then_substring_unit ... ok [INFO] [stdout] test repl::engine::tests::history_completer_returns_latest_unique_entries_for_empty_query_unit ... ok [INFO] [stdout] test repl::engine::tests::history_expansion_variants_resolve_recent_relative_and_prefix_queries_unit ... ok [INFO] [stdout] test repl::engine::tests::history_picker_items_keep_latest_unique_commands_and_flatten_multiline_unit ... ok [INFO] [stdout] test repl::engine::tests::history_picker_options_use_configured_rows_query_and_skin_unit ... ok [INFO] [stdout] test repl::engine::tests::expand_home_and_prompt_renderers_behave_unit ... ok [INFO] [stdout] test repl::engine::tests::highlighter_builder_requires_command_color_unit ... ok [INFO] [stdout] test repl::engine::tests::debug_completion_navigation_and_empty_match_states_unit ... ok [INFO] [stdout] test repl::engine::tests::interactive_editor_builder_and_driver_cover_fallback_and_signal_paths_unit ... ok [INFO] [stdout] test repl::engine::tests::default_pipe_verbs_include_extended_dsl_surface ... ok [INFO] [stdout] test repl::engine::tests::run_repl_with_reason_and_basic_input_detection_cover_basic_and_interactive_modes_unit ... ok [INFO] [stdout] test repl::engine::tests::path_suggestions_cover_files_directories_and_quote_variants_unit ... ok [INFO] [stdout] test repl::engine::tests::submission_delegates_help_and_exit_to_host ... ok [INFO] [stdout] test repl::help::tests::guide_rendering_prefers_semantic_help_until_explicit_format_wins_unit ... ok [INFO] [stdout] test repl::engine::tests::trace_completion_env_controls_and_jsonl_output_unit ... ok [INFO] [stdout] test repl::highlight::tests::colors_full_command_chain_only_unit ... ok [INFO] [stdout] test repl::help::tests::guide_output_after_pipeline_preserves_recommendation_until_explicit_format_or_markdown_overrides_unit ... ok [INFO] [stdout] test repl::highlight::tests::colors_help_alias_keyword_and_target_unit ... ok [INFO] [stdout] test repl::highlight::tests::highlights_hex_color_literals_unit ... ok [INFO] [stdout] test repl::highlight::tests::debug_spans_preserve_help_alias_ranges_unit ... ok [INFO] [stdout] test repl::help::tests::help_chrome_preserves_custom_preamble_and_extra_sections_unit ... ok [INFO] [stdout] test repl::highlight::tests::skips_partial_subcommand_and_flags_unit ... ok [INFO] [stdout] test repl::help::tests::compact_and_austere_help_surfaces_match_clap_layout_unit ... ok [INFO] [stdout] test repl::highlight::tests::three_digit_hex_and_invalid_tokens_cover_debug_paths_unit ... ok [INFO] [stdout] test repl::history::tests::history_command_def_exposes_expected_subcommands_unit ... ok [INFO] [stdout] test repl::history::tests::history_exclude_patterns_include_repl_defaults ... ok [INFO] [stdout] test repl::history::tests::history_scope_label_tracks_current_shell_unit ... ok [INFO] [stdout] test repl::history::tests::repl_history_policy_reads_effective_defaults_and_overrides_unit ... ok [INFO] [stdout] test repl::history::tests::repl_history_enabled_obeys_toggle_and_capacity_unit ... ok [INFO] [stdout] test repl::history::tests::build_history_config_tracks_current_shell_scope_without_manual_sync_unit ... ok [INFO] [stdout] test repl::history::tests::run_history_repl_command_reports_disabled_history_unit ... ok [INFO] [stdout] test repl::dispatch::tests::shell_entry_help_and_repl_command_cache_paths_cover_external_flow_unit ... ok [INFO] [stdout] test repl::history_store::tests::excluded_commands_respect_prefixes_and_patterns ... ok [INFO] [stdout] test repl::history_store::tests::explicit_scope_queries_override_live_shell_context ... ok [INFO] [stdout] test repl::history_store::tests::disabled_history_returns_original_item_without_persisting_records ... ok [INFO] [stdout] test repl::history_store::tests::list_entries_tracks_live_shell_context_updates ... ok [INFO] [stdout] test repl::history_store::tests::load_missing_history_item_returns_not_found_error ... ok [INFO] [stdout] test repl::history_store::tests::list_entries_filters_shell_and_excludes ... ok [INFO] [stdout] test repl::history_store::tests::save_expands_history_and_dedupes_with_shell_scope ... ok [INFO] [stdout] test repl::history_store::tests::persisted_records_skip_invalid_lines_and_trim_to_capacity ... ok [INFO] [stdout] test repl::history_store::tests::search_respects_filters_direction_bounds_and_skip_logic ... ok [INFO] [stdout] test repl::history::tests::run_history_repl_command_lists_visible_rows_unit ... ok [INFO] [stdout] test repl::history_store::tests::shell_prefix_helpers_normalize_and_round_trip_commands ... ok [INFO] [stdout] test repl::history_store::tests::unsupported_history_mutations_surface_feature_errors ... ok [INFO] [stdout] test repl::history_store::tests::wildcard_matching_handles_prefix_and_infix ... ok [INFO] [stdout] test repl::host::tests::cycle_chrome_renders_intro_then_help_then_pending_output ... ok [INFO] [stdout] test repl::host::tests::quiet_verbosity_suppresses_repl_intro_unit ... ok [INFO] [stdout] test repl::history::tests::history_exclude_patterns_do_not_duplicate_defaults ... ok [INFO] [stdout] test repl::help::tests::compact_help_can_add_color_without_box_chrome_unit ... ok [INFO] [stdout] test repl::host::tests::cycle_chrome_without_intro_keeps_pending_output_only ... ok [INFO] [stdout] test repl::history::tests::run_history_repl_command_prunes_and_clears_with_scope_unit ... ok [INFO] [stdout] test repl::history_store::tests::shared_history_supports_save_load_prune_clear_and_sync ... ok [INFO] [stdout] test repl::input::tests::help_alias_parsing_rewrite_and_shell_entry_rules_cover_valid_and_invalid_cases_unit ... ok [INFO] [stdout] test repl::input::tests::build_repl_ui_line_projector_falls_back_to_passthrough_on_parse_error_unit ... ok [INFO] [stdout] test repl::lifecycle::tests::build_cycle_chrome_output_includes_intro_help_and_pending_output ... ok [INFO] [stdout] test repl::lifecycle::tests::build_cycle_chrome_output_skips_intro_when_not_requested ... ok [INFO] [stdout] test repl::input::tests::project_repl_ui_line_hidden_suggestions_follow_help_verbosity_and_used_flags_unit ... ok [INFO] [stdout] test repl::menu::tests::accept_paths_apply_selected_completion ... ok [INFO] [stdout] test repl::menu::tests::config_scope_navigation_and_child_scope_commit_keep_expected_menu_state_unit ... ok [INFO] [stdout] test repl::menu::tests::contract_enter_accepts_esc_closes_and_typing_recomputes_the_same_slot_unit ... ok [INFO] [stdout] test repl::input::tests::project_repl_ui_line_masks_invocation_tokens_while_preserving_visible_targets_unit ... ok [INFO] [stdout] test repl::menu::tests::cycling_completion_keeps_menu_indent_anchored_to_original_span ... ok [INFO] [stdout] test repl::menu::tests::helper_edges_cover_invalid_spans_and_value_based_indent ... ok [INFO] [stdout] test repl::lifecycle::tests::apply_run_result_handles_exit_and_restart_modes ... ok [INFO] [stdout] test repl::menu::tests::second_tab_refreshes_root_and_committed_token_buffers_before_selection_unit ... ok [INFO] [stdout] test repl::menu::tests::contract_root_menu_refresh_keeps_the_inserted_command_visible_and_selected_unit ... ok [INFO] [stdout] test repl::menu::tests::tab_cycles_selection_replaces_buffer ... ok [INFO] [stdout] test repl::menu::tests::menu_state_and_builder_variants_cover_debug_partial_completion_and_reactivation_unit ... ok [INFO] [stdout] test repl::menu::tests::menu_rendering_variants_cover_display_description_selection_and_bounds_unit ... ok [INFO] [stdout] test repl::menu::tests::trace_paths_record_complete_cycle_and_accept_events ... ok [INFO] [stdout] test repl::menu_core::tests::debug_snapshot_scrolls_descriptions_and_hides_when_inactive ... ok [INFO] [stdout] test repl::menu_core::tests::event_state_machine_covers_reactivate_edit_and_deactivate ... ok [INFO] [stdout] test repl::menu_core::tests::navigation_wraps_and_clamps_on_sparse_last_row ... ok [INFO] [stdout] test repl::presentation::tests::full_intro_template_uses_semantic_osp_blocks_for_section_data_unit ... ok [INFO] [stdout] test repl::presentation::tests::intro_template_parser_expands_all_help_sections_and_merges_repeated_data_blocks ... ok [INFO] [stdout] test repl::menu_core::tests::helper_paths_cover_layout_render_and_style_utilities ... ok [INFO] [stdout] test repl::menu_core::tests::layout_and_render_helpers_cover_empty_narrow_and_ansi_paths ... ok [INFO] [stdout] test repl::presentation::tests::repl_appearance_variants_respect_color_overrides_and_theme_defaults ... ok [INFO] [stdout] test repl::presentation::tests::repl_intro_payload_overview_placeholders_preserve_sections_and_authored_order_unit ... ok [INFO] [stdout] test repl::presentation::tests::repl_intro_payload_uses_custom_full_section_templates ... ok [INFO] [stdout] test repl::presentation::tests::intro_template_expansion_handles_scalars_sensitive_keys_and_malformed_placeholders ... ok [INFO] [stdout] test repl::presentation::tests::repl_overview_lists_invocation_options_for_expressive_surface ... ok [INFO] [stdout] test repl::presentation::tests::repl_prompt_renders_custom_template_with_prompt_style ... ok [INFO] [stdout] test repl::presentation::tests::repl_intro_template_placeholder_rules_unit ... ok [INFO] [stdout] test repl::presentation::tests::repl_intro_round_trip_preserves_template_section_order_unit ... ok [INFO] [stdout] test repl::presentation::tests::repl_prompt_templates_decode_escaped_newlines_and_user_rhs_overrides_unit ... ok [INFO] [stdout] test repl::presentation::tests::repl_prompt_variants_render_scope_indicator_and_prompt_right_unit ... ok [INFO] [stdout] test repl::presentation::tests::theme_display_name_and_prompt_template_formatting_unit ... ok [INFO] [stdout] test services::tests::execute_command_requires_explicit_subject_when_defaults_are_missing ... ok [INFO] [stdout] test services::tests::parse_repl_command_rejects_empty_and_unknown_commands ... ok [INFO] [stdout] test services::tests::parse_repl_command_rejects_unknown_options_and_extra_positionals ... ok [INFO] [stdout] test services::tests::parse_repl_command_supports_netgroup_and_short_attribute_flag ... ok [INFO] [stdout] test services::tests::parses_repl_user_command_with_options ... ok [INFO] [stdout] test tests::stable_top_level_surface_exposes_primary_entrypoints_and_types_unit ... ok [INFO] [stdout] test ui::chrome::tests::footer_rule_requires_positive_width_and_explicit_profile_unit ... ok [INFO] [stdout] test ui::chrome::tests::guide_rule_titles_respect_target_width_unit ... ok [INFO] [stdout] test ui::chrome::tests::plain_section_titles_add_trailing_colon_unit ... ok [INFO] [stdout] test ui::clipboard::tests::base64_encoder_matches_known_values ... ok [INFO] [stdout] test ui::clipboard::tests::base64_length_and_env_helpers_behave_predictably ... ok [INFO] [stdout] test services::tests::execute_line_handles_blank_and_shell_parse_errors ... ok [INFO] [stdout] test services::tests::ldap_user_defaults_to_global_user ... ok [INFO] [stdout] test ui::clipboard::tests::clipboard_plan_prefers_osc52_only_when_tty_and_payload_fit_unit ... ok [INFO] [stdout] test ui::clipboard::tests::clipboard_service_builders_toggle_osc52_preference ... ok [INFO] [stdout] test repl::presentation::tests::shape_contracts::presentation_and_verbosity_matrix_select_expected_intro_shapes ... ok [INFO] [stdout] test ui::clipboard::tests::clipboard_error_display_covers_backend_spawn_and_status_cases ... ok [INFO] [stdout] test ui::clipboard::tests::command_backend_reports_spawn_failure_for_missing_binary ... ok [INFO] [stdout] test ui::clipboard::tests::command_failure_without_stderr_uses_short_display ... ok [INFO] [stdout] test ui::clipboard::tests::command_backend_reports_success_and_failure ... ok [INFO] [stdout] test ui::clipboard::tests::osc52_payload_wraps_encoded_text_without_touching_stdout_unit ... ok [INFO] [stdout] test ui::clipboard::tests::copy_without_osc52_reports_no_backend_when_path_is_empty ... ok [INFO] [stdout] test ui::clipboard::tests::osc52_helpers_respect_env_toggles_and_defaults ... ok [INFO] [stdout] test ui::clipboard::tests::platform_backends_prefers_wayland_when_present ... ok [INFO] [stdout] test ui::clipboard::tests::platform_backends_include_x11_fallbacks_without_wayland ... ok [INFO] [stdout] test ui::emit::grid::tests::grid_layout_prefers_balanced_columns_when_width_allows_unit ... ok [INFO] [stdout] test ui::emit::grid::tests::prepared_grid_list_crops_cells_to_available_width_unit ... ok [INFO] [stdout] test ui::emit::guide_entries::tests::prepared_direct_guide_entries_ignore_help_indent_defaults_unit ... ok [INFO] [stdout] test ui::emit::guide_entries::tests::prepared_guide_entries_can_override_default_gap_unit ... ok [INFO] [stdout] test ui::emit::guide_entries::tests::prepared_help_guide_entries_default_to_help_indent_unit ... ok [INFO] [stdout] test repl::lifecycle::tests::prepare_cycle_handles_reload_and_builds_surface_unit ... ok [INFO] [stdout] test ui::emit::json::tests::copy_safe_json_emitter_stays_plain_unit ... ok [INFO] [stdout] test ui::emit::markdown::tests::markdown_emitter_handles_empty_and_summary_tables_unit ... ok [INFO] [stdout] test ui::emit::json::tests::rich_json_emitter_styles_keys_punctuation_and_scalars_unit ... ok [INFO] [stdout] test ui::emit::key_value::tests::prepared_plain_rows_align_to_one_width_owner_unit ... ok [INFO] [stdout] test ui::emit::markdown::tests::markdown_emitter_renders_sections_with_suffixes_and_trailing_newline_unit ... ok [INFO] [stdout] test ui::emit::table::tests::prepared_table_captures_shared_width_and_markdown_shape_unit ... ok [INFO] [stdout] test ui::interact::tests::detect_and_default_are_callable_unit ... ok [INFO] [stdout] test ui::interact::tests::finish_with_message_alias_and_public_with_enabled_are_callable_unit ... ok [INFO] [stdout] test ui::interact::tests::hidden_spinner_supports_full_lifecycle_unit ... ok [INFO] [stdout] test ui::clipboard::tests::clipboard_command_loop_reports_success_and_real_failures_unit ... FAILED [INFO] [stdout] test ui::interact::tests::prompting_helpers_fail_fast_without_interactive_terminal_unit ... ok [INFO] [stdout] test ui::interact::tests::runtime_capability_matrix_covers_prompting_and_live_output_unit ... ok [INFO] [stdout] test ui::interact::tests::interact_runtime_accessor_and_spinner_follow_runtime_unit ... ok [INFO] [stdout] test ui::messages::render::tests::full_render_honors_top_bottom_shared_chrome_unit ... ok [INFO] [stdout] test ui::messages::render::tests::full_render_orders_sections_and_filters_levels ... ok [INFO] [stdout] test ui::messages::render::tests::full_render_supports_bottom_and_round_frames_unit ... ok [INFO] [stdout] test ui::messages::render::tests::plain_render_emits_bodies_without_titles_unit ... ok [INFO] [stdout] test ui::messages::render::tests::styled_austere_render_colors_prefix_without_recoloring_message_body_unit ... ok [INFO] [stdout] test ui::messages::sink::tests::sink_extension_methods_write_into_message_buffer ... ok [INFO] [stdout] test ui::section_chrome::tests::ruled_section_policy_parses_expected_names_unit ... ok [INFO] [stdout] test ui::section_chrome::tests::section_divider_can_style_border_and_title_separately ... ok [INFO] [stdout] test ui::section_chrome::tests::section_divider_ignores_columns_env_without_explicit_width ... ok [INFO] [stdout] test ui::section_chrome::tests::section_frame_style_parses_expected_names_unit ... ok [INFO] [stdout] test ui::section_chrome::tests::section_frame_styles_cover_none_bottom_and_round_unit ... ok [INFO] [stdout] test ui::messages::render::tests::compact_render_keeps_titles_without_rule_chrome_unit ... ok [INFO] [stdout] test ui::section_chrome::tests::square_section_frame_boxes_body_unit ... ok [INFO] [stdout] test ui::section_chrome::tests::top_bottom_section_frame_wraps_body_with_rules_unit ... ok [INFO] [stdout] test ui::messages::render::tests::config_driven_message_rendering_uses_layout_from_config_unit ... ok [INFO] [stdout] test ui::interact::tests::spinner_respects_runtime_policy_unit ... ok [INFO] [stdout] test ui::settings::tests::help_layout_from_config_owns_presentation_mapping_unit ... ok [INFO] [stdout] test ui::settings::tests::parser_aliases_and_presentation_effects_remain_canonical_unit ... ok [INFO] [stdout] test ui::settings::tests::render_settings_resolution_and_output_format_ownership_unit ... ok [INFO] [stdout] test ui::settings::tests::render_config_helpers_normalize_strings_blanks_and_integers_unit ... ok [INFO] [stdout] test ui::style::tests::style_helpers_cover_plain_and_colored_paths_unit ... ok [INFO] [stdout] test ui::style::tests::style_overrides_cover_value_painting_and_fallback_tokens_unit ... ok [INFO] [stdout] test ui::style::tests::style_tokens_follow_palette_defaults_and_overrides_unit ... ok [INFO] [stdout] test ui::style::tests::value_tokens_cover_booleans_null_numbers_and_text_unit ... ok [INFO] [stdout] test ui::tests::planner_prefers_semantic_guide_before_non_explicit_baseline_unit ... ok [INFO] [stdout] test ui::tests::ui2_copy_safe_json_output_keeps_trailing_newline_unit ... ok [INFO] [stdout] test ui::tests::ui2_full_help_layout_keeps_blank_between_paragraphs_and_data_unit ... ok [INFO] [stdout] test ui::settings::tests::render_config_overrides_use_presentation_defaults_and_explicit_overrides_unit ... ok [INFO] [stdout] test ui::tests::ui2_help_chrome_settings_override_indent_gap_and_spacing_unit ... ok [INFO] [stdout] test ui::emit::grid::tests::grid_layout_handles_single_items_and_forced_columns_unit ... ok [INFO] [stdout] test ui::tests::ui2_full_help_layout_titles_stay_flush_when_margin_is_set_unit ... ok [INFO] [stdout] test ui::tests::ui2_help_layout_lowering_makes_footer_a_real_block_unit ... ok [INFO] [stdout] test ui::tests::ui2_json_block_uses_row_payload_shape_even_with_semantic_document_unit ... ok [INFO] [stdout] test ui::tests::ui2_help_layout_lowering_uses_plain_sections_and_inline_usage_suffix_unit ... ok [INFO] [stdout] test ui::tests::ui2_lowering_carries_help_entry_defaults_in_ir_unit ... ok [INFO] [stdout] test ui::tests::ui2_resolves_theme_catalog_from_caller_theme_name_unit ... ok [INFO] [stdout] test ui::tests::ui2_lowering_stamps_direct_guide_render_behavior_into_ir_unit ... ok [INFO] [stdout] test ui::tests::ui2_structured_guide_options_are_owned_by_one_entrypoint_unit ... ok [INFO] [stdout] test ui::tests::ui2_structured_guide_output_prefers_source_guide_hints_unit ... ok [INFO] [stdout] test ui::tests::ui2_structured_guide_output_keeps_help_entry_indent_unit ... ok [INFO] [stdout] test ui::tests::ui2_table_output_switches_between_ascii_and_unicode_unit ... ok [INFO] [stdout] test ui::tests::ui_grouped_outputs_lower_and_render_with_one_group_owner_unit ... ok [INFO] [stdout] test ui::text::tests::visible_inline_text_preserves_unbalanced_markup_unit ... ok [INFO] [stdout] test ui::tests::ui_help_layout_lowers_mixed_structured_section_data_to_local_block_kinds_unit ... ok [INFO] [stdout] test ui::text::tests::visible_inline_text_unwraps_escaped_and_balanced_markup_unit ... ok [INFO] [stdout] test ui::theme::tests::display_name_and_lookup_helpers_cover_normalization_edges ... ok [INFO] [stdout] test ui::theme::tests::display_name_from_id_formats_title_case ... ok [INFO] [stdout] test ui::theme::tests::dracula_number_override_matches_python_theme_preset ... ok [INFO] [stdout] test ui::theme::tests::repl_completion_defaults_follow_python_late_defaults ... ok [INFO] [stdout] test ui::theme::tests::repl_completion_text_defaults_to_black_for_all_themes ... ok [INFO] [stdout] test ui::theme_catalog::tests::color_spec_validation_accepts_known_tokens ... ok [INFO] [stdout] test ui::theme_catalog::tests::color_spec_validation_rejects_unknown_tokens ... ok [INFO] [stdout] test ui::theme_catalog::tests::custom_theme_can_inherit_from_custom_base ... ok [INFO] [stdout] test ui::theme_catalog::tests::default_theme_paths_tracks_home_config_root_unit ... ok [INFO] [stdout] test ui::tests::ui2_renders_generic_rows_as_markdown_table_unit ... ok [INFO] [stdout] test ui::theme_catalog::tests::theme_catalog_resolve_normalizes_input_and_rejects_blank_unit ... ok [INFO] [stdout] test ui::tests::ui2_renders_single_row_output_as_aligned_key_value_unit ... ok [INFO] [stdout] test ui::tests::ui2_rich_table_output_styles_headers_and_numeric_values_unit ... ok [INFO] [stdout] test ui::theme_catalog::tests::theme_file_defaults_id_and_name_from_file_stem ... ok [INFO] [stdout] test ui::theme_catalog::tests::theme_file_inherits_from_base ... ok [INFO] [stdout] test ui::theme::tests::theme_catalog_helpers_expose_defaults_and_fallbacks ... ok [INFO] [stdout] test ui::theme_catalog::tests::theme_path_helpers_expand_home_and_drop_blank_entries_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.608038Z WARN osp_cli::ui::theme_catalog: theme path is not a directory path=/tmp/osp-theme-loader-catalogcb3j2X/missing [INFO] [stderr] 2026-03-31T18:26:13.608099Z WARN osp_cli::ui::theme_catalog: failed to parse toml: TOML parse error at line 1, column 8 [INFO] [stderr] | [INFO] [stderr] 1 | not = [valid [INFO] [stderr] | ^ [INFO] [stderr] invalid array [INFO] [stderr] expected `]` [INFO] [stderr] path=/tmp/osp-theme-loader-catalogcb3j2X/themes/broken.toml [INFO] [stderr] 2026-03-31T18:26:13.608115Z WARN osp_cli::ui::theme_catalog: invalid color spec for palette.text: bogus path=/tmp/osp-theme-loader-catalogcb3j2X/themes/dupe-a.toml [INFO] [stderr] 2026-03-31T18:26:13.608126Z WARN osp_cli::ui::theme_catalog: invalid color spec for overrides.value_number: broken path=/tmp/osp-theme-loader-catalogcb3j2X/themes/dupe-a.toml [INFO] [stderr] 2026-03-31T18:26:13.608137Z WARN osp_cli::ui::theme_catalog: invalid color spec for overrides.repl_completion_highlight: bad path=/tmp/osp-theme-loader-catalogcb3j2X/themes/dupe-a.toml [INFO] [stderr] 2026-03-31T18:26:13.608148Z WARN osp_cli::ui::theme_catalog: theme id collision: dupe overridden (previous: /tmp/osp-theme-loader-catalogcb3j2X/themes/dupe-a.toml) path=/tmp/osp-theme-loader-catalogcb3j2X/themes/dupe-b.toml [INFO] [stderr] 2026-03-31T18:26:13.608161Z WARN osp_cli::ui::theme_catalog: theme base cycle detected: cycle-a -> cycle-b -> cycle-a path=/tmp/osp-theme-loader-catalogcb3j2X/themes/cycle-a.toml [INFO] [stdout] test ui::theme_catalog::tests::theme_catalog_load_reports_invalid_specs_and_preserves_custom_origins_unit ... ok [INFO] [stderr] 2026-03-31T18:26:13.608173Z WARN osp_cli::ui::theme_catalog: theme base cycle detected: cycle-b -> cycle-a -> cycle-b path=/tmp/osp-theme-loader-catalogcb3j2X/themes/cycle-b.toml [INFO] [stderr] 2026-03-31T18:26:13.608201Z WARN osp_cli::ui::theme_catalog: custom theme overrides builtin: dracula path=/tmp/osp-theme-loader-catalogcb3j2X/themes/dracula.toml [INFO] [stdout] test plugin::tests::timeout_dispatch_covers_timeout_fields_and_process_cleanup_unit ... ok [INFO] [stdout] test repl::host::tests::repl_debug_commands_return_documents_unit ... ok [INFO] [stdout] test repl::dispatch::shell::tests::root_help_shortcut_supports_explicit_formats_with_pipeline_unit ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- ui::clipboard::tests::clipboard_command_loop_reports_success_and_real_failures_unit stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'ui::clipboard::tests::clipboard_command_loop_reports_success_and_real_failures_unit' (885) panicked at src/ui/clipboard/tests.rs:299:5: [INFO] [stdout] assertion failed: matches!(err, ClipboardError::CommandFailed { status: 7, ref stderr, .. } if [INFO] [stdout] stderr.contains("nope")) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5b07e136504a - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5b07e136504a - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5b07e136504a - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5b07e136504a - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5b07e138122a - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5b07e138122a - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x5b07e136c4b2 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5b07e136c4b2 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5b07e133edaf - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5b07e133edaf - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5b07e135b6a9 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5b07e06fdf1c - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5b07e06fdf1c - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5b07e135b922 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5b07e135b922 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5b07e133ee9a - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:691:13 [INFO] [stdout] 16: 0x5b07e1333649 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5b07e133fedd - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5b07e1381a9c - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5b07e1381a62 - core[fa0eadad68403074]::panicking::panic [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:150:5 [INFO] [stdout] 20: 0x5b07e05c4598 - osp_cli[ad8c84ebc6d7a975]::ui::clipboard::tests::clipboard_command_loop_reports_success_and_real_failures_unit [INFO] [stdout] at /opt/rustwide/workdir/src/ui/clipboard/tests.rs:299:5 [INFO] [stdout] 21: 0x5b07e0595223 - osp_cli[ad8c84ebc6d7a975]::ui::clipboard::tests::clipboard_command_loop_reports_success_and_real_failures_unit::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/ui/clipboard/tests.rs:275:67 [INFO] [stdout] 22: 0x5b07e04ea716 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5b07e06f1ffb - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5b07e06f1ffb - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5b07e06fe9eb - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5b07e06fe9eb - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 27: 0x5b07e06fe9eb - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5b07e06fe9eb - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5b07e06fe9eb - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5b07e06fe9eb - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5b07e06fe9eb - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5b07e06f8e44 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5b07e06f8e44 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5b07e07015f2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5b07e07015f2 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 36: 0x5b07e07015f2 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5b07e07015f2 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5b07e07015f2 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5b07e07015f2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5b07e07015f2 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5b07e1363cff - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 42: 0x5b07e1363cff - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 43: 0x71875d033aa4 - [INFO] [stdout] 44: 0x71875d0c0a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] ui::clipboard::tests::clipboard_command_loop_reports_success_and_real_failures_unit [INFO] [stdout] [INFO] [stdout] test result: FAILED. 719 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.64s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] running `Command { std: "docker" "inspect" "a80d247ec2cbf441e7a1c4bc36535f970fe1c3eb120dce9effff25e5185f1129", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a80d247ec2cbf441e7a1c4bc36535f970fe1c3eb120dce9effff25e5185f1129", kill_on_drop: false }` [INFO] [stdout] a80d247ec2cbf441e7a1c4bc36535f970fe1c3eb120dce9effff25e5185f1129