[INFO] cloning repository https://github.com/bradsjm/byteblaster-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bradsjm/byteblaster-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbradsjm%2Fbyteblaster-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbradsjm%2Fbyteblaster-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c03e0e0c8687fe3cefc1697e590c59d7e49cd7c5 [INFO] testing bradsjm/byteblaster-rs against beta-2026-04-21 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbradsjm%2Fbyteblaster-rs" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-7-tc2/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/bradsjm/byteblaster-rs [INFO] finished tweaking git repo https://github.com/bradsjm/byteblaster-rs [INFO] tweaked toml for git repo https://github.com/bradsjm/byteblaster-rs written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/bradsjm/byteblaster-rs on toolchain beta-2026-04-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/bradsjm/byteblaster-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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 263f9477ca351cc2d7aca7a3e612a2f3da2326d427a40fe98b45352456e4a71c [INFO] running `Command { std: "docker" "start" "-a" "263f9477ca351cc2d7aca7a3e612a2f3da2326d427a40fe98b45352456e4a71c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "263f9477ca351cc2d7aca7a3e612a2f3da2326d427a40fe98b45352456e4a71c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "263f9477ca351cc2d7aca7a3e612a2f3da2326d427a40fe98b45352456e4a71c", kill_on_drop: false }` [INFO] [stdout] 263f9477ca351cc2d7aca7a3e612a2f3da2326d427a40fe98b45352456e4a71c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b6216d8d6b2a3008ee326e5e91e8841ca7f49b3c34a86f343b2ea6b3d88a383b [INFO] running `Command { std: "docker" "start" "-a" "b6216d8d6b2a3008ee326e5e91e8841ca7f49b3c34a86f343b2ea6b3d88a383b", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling untrusted v0.9.0 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling cc v1.2.57 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling cmake v0.1.58 [INFO] [stderr] Compiling aws-lc-rs v1.16.3 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling aws-lc-sys v0.40.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling zerocopy v0.8.42 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling tinyvec_macros v0.1.1 [INFO] [stderr] Compiling tower-service v0.3.3 [INFO] [stderr] Compiling tinyvec v1.11.0 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling try-lock v0.2.5 [INFO] [stderr] Compiling want v0.3.1 [INFO] [stderr] Compiling unicode-normalization v0.1.25 [INFO] [stderr] Compiling compact_str v0.7.1 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling unicode-bidi v0.3.18 [INFO] [stderr] Compiling unicode-properties v0.1.4 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling tower-layer v0.3.3 [INFO] [stderr] Compiling httpdate v1.0.3 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling stringprep v0.1.5 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling openssl-probe v0.2.1 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling rustls-native-certs v0.8.3 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling rxml_validation v0.11.0 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling crc-catalog v2.4.0 [INFO] [stderr] Compiling rand_core v0.10.0 [INFO] [stderr] Compiling zlib-rs v0.6.3 [INFO] [stderr] Compiling parking v2.2.1 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling crc v3.4.0 [INFO] [stderr] Compiling webpki-roots v0.26.11 [INFO] [stderr] Compiling hashlink v0.10.0 [INFO] [stderr] Compiling crossbeam-queue v0.3.12 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rustls-webpki v0.103.10 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling rxml_proc v0.12.1 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling md-5 v0.10.6 [INFO] [stderr] Compiling iri-string v0.7.10 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling rxml v0.13.3 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling hkdf v0.12.4 [INFO] [stderr] Compiling futures-intrusive v0.5.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling atoi v2.0.0 [INFO] [stderr] Compiling bumpalo v3.20.2 [INFO] [stderr] Compiling dotenvy v0.15.7 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling whoami v1.6.1 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling minidom v0.18.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling quick-xml v0.39.2 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling jid v0.12.2 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling utoipa-gen v5.4.0 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling xso_proc v0.2.0 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling num-conv v0.2.0 [INFO] [stderr] Compiling keccak v0.1.6 [INFO] [stderr] Compiling sqlx-core v0.8.6 [INFO] [stderr] Compiling time-core v0.1.8 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling chacha20 v0.10.0 [INFO] [stderr] Compiling time-macros v0.2.27 [INFO] [stderr] Compiling xso v0.3.0 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling strum_macros v0.28.0 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling blake2 v0.10.6 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling xmpp-parsers v0.22.0 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Compiling sqlx-postgres v0.8.6 [INFO] [stderr] Compiling rand v0.10.0 [INFO] [stderr] Compiling strum v0.28.0 [INFO] [stderr] Compiling zopfli v0.8.3 [INFO] [stderr] Compiling emwin-parser v0.3.1 (/opt/rustwide/workdir/crates/emwin-parser) [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling unicase v2.9.0 [INFO] [stderr] Compiling humantime v2.3.0 [INFO] [stderr] Compiling utoipa v5.4.0 [INFO] [stderr] Compiling mime v0.3.17 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling zip v3.0.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rust-embed-utils v8.11.0 [INFO] [stderr] Compiling utoipa-swagger-ui-vendored v0.1.2 [INFO] [stderr] Compiling anstyle-parse v1.0.0 [INFO] [stderr] Compiling rust-embed-impl v8.11.0 [INFO] [stderr] Compiling retry-policies v0.5.1 [INFO] [stderr] Compiling utoipa-swagger-ui v9.0.2 [INFO] [stderr] Compiling axum-core v0.5.6 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling matchit v0.8.4 [INFO] [stderr] Compiling emwin-service v0.3.1 (/opt/rustwide/workdir/crates/emwin-service) [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling typed-path v0.12.3 [INFO] [stderr] Compiling sqlx-macros-core v0.8.6 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling memo-map v0.3.3 [INFO] [stderr] Compiling minijinja v2.19.0 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling zip v8.2.0 [INFO] [stderr] Compiling axum v0.8.8 [INFO] [stderr] Compiling sqlx-macros v0.8.6 [INFO] [stderr] Compiling rust-embed v8.11.0 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling clap_derive v4.6.0 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling clap v4.6.0 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling rustls-platform-verifier v0.6.2 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling emwin-protocol v0.3.1 (/opt/rustwide/workdir/crates/emwin-protocol) [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling reqwest v0.13.2 [INFO] [stderr] Compiling reqwest-middleware v0.5.1 [INFO] [stderr] Compiling object_store v0.13.2 [INFO] [stderr] Compiling reqwest-retry v0.9.1 [INFO] [stderr] Compiling sqlx v0.8.6 [INFO] [stderr] Compiling emwin-db v0.3.1 (/opt/rustwide/workdir/crates/emwin-db) [INFO] [stderr] Compiling emwin-alert v0.3.1 (/opt/rustwide/workdir/crates/emwin-alert) [INFO] [stderr] Compiling emwin-live v0.3.1 (/opt/rustwide/workdir/crates/emwin-live) [INFO] [stderr] Compiling emwin-api v0.3.1 (/opt/rustwide/workdir/crates/emwin-api) [INFO] [stderr] Compiling emwin-cli v0.3.1 (/opt/rustwide/workdir/crates/emwin-cli) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7m 32s [INFO] running `Command { std: "docker" "inspect" "b6216d8d6b2a3008ee326e5e91e8841ca7f49b3c34a86f343b2ea6b3d88a383b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b6216d8d6b2a3008ee326e5e91e8841ca7f49b3c34a86f343b2ea6b3d88a383b", kill_on_drop: false }` [INFO] [stdout] b6216d8d6b2a3008ee326e5e91e8841ca7f49b3c34a86f343b2ea6b3d88a383b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b0d4cd9e9cc870aa5ef1c457b29e3fe11d798b6956bfaa290aebca3e701422f0 [INFO] running `Command { std: "docker" "start" "-a" "b0d4cd9e9cc870aa5ef1c457b29e3fe11d798b6956bfaa290aebca3e701422f0", kill_on_drop: false }` [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling sqlx-postgres v0.8.6 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling deadpool-runtime v0.1.4 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling assert-json-diff v2.0.2 [INFO] [stderr] Compiling emwin-parser v0.3.1 (/opt/rustwide/workdir/crates/emwin-parser) [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling proptest v1.10.0 [INFO] [stderr] Compiling sqlx-macros-core v0.8.6 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling emwin-protocol v0.3.1 (/opt/rustwide/workdir/crates/emwin-protocol) [INFO] [stderr] Compiling sqlx-core v0.8.6 [INFO] [stderr] Compiling sqlx-macros v0.8.6 [INFO] [stderr] Compiling emwin-service v0.3.1 (/opt/rustwide/workdir/crates/emwin-service) [INFO] [stderr] Compiling deadpool v0.12.3 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling sqlx v0.8.6 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling axum v0.8.8 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling reqwest v0.13.2 [INFO] [stderr] Compiling wiremock v0.6.5 [INFO] [stderr] Compiling reqwest-middleware v0.5.1 [INFO] [stderr] Compiling object_store v0.13.2 [INFO] [stderr] Compiling reqwest-retry v0.9.1 [INFO] [stderr] Compiling utoipa-swagger-ui v9.0.2 [INFO] [stderr] Compiling emwin-db v0.3.1 (/opt/rustwide/workdir/crates/emwin-db) [INFO] [stderr] Compiling emwin-live v0.3.1 (/opt/rustwide/workdir/crates/emwin-live) [INFO] [stderr] Compiling emwin-alert v0.3.1 (/opt/rustwide/workdir/crates/emwin-alert) [INFO] [stderr] Compiling emwin-api v0.3.1 (/opt/rustwide/workdir/crates/emwin-api) [INFO] [stderr] Compiling emwin-cli v0.3.1 (/opt/rustwide/workdir/crates/emwin-cli) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 4m 01s [INFO] running `Command { std: "docker" "inspect" "b0d4cd9e9cc870aa5ef1c457b29e3fe11d798b6956bfaa290aebca3e701422f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b0d4cd9e9cc870aa5ef1c457b29e3fe11d798b6956bfaa290aebca3e701422f0", kill_on_drop: false }` [INFO] [stdout] b0d4cd9e9cc870aa5ef1c457b29e3fe11d798b6956bfaa290aebca3e701422f0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 32dc5be6f3cc3154cd2e3e9738e3eae5a653f161e2c56218d3cbf4c98d06e7c3 [INFO] running `Command { std: "docker" "start" "-a" "32dc5be6f3cc3154cd2e3e9738e3eae5a653f161e2c56218d3cbf4c98d06e7c3", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.85s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emwin_alert-f87010cfa2d05675) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test worker::tests::backoff_schedule_is_stable ... ok [INFO] [stdout] test worker::tests::delivery_key_keeps_product_identity_stable ... ok [INFO] [stdout] test worker::tests::delivery_key_includes_incident_source_event_id ... ok [INFO] [stdout] test worker::tests::payload_signature_is_hex_encoded ... ok [INFO] [stdout] test worker::tests::webhook_test_send_succeeds ... ok [INFO] [stdout] test worker::tests::default_http_timeout_bounds_webhook_test_send ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.23s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emwin_api-2f6aae152c2f7822) [INFO] [stdout] [INFO] [stdout] running 59 tests [INFO] [stdout] test server::server_http::tests::auth::auth_enabled_accepts_case_insensitive_bearer_scheme_and_ascii_whitespace ... ok [INFO] [stdout] test server::server_http::tests::auth::auth_enabled_rejects_missing_or_invalid_bearer_tokens ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_issue_endpoint_returns_service_unavailable_without_archive_database ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_issue_payload_serializes_related_urls ... ok [INFO] [stdout] test server::server_http::tests::docs::openapi_json_declares_bearer_security_when_auth_enabled ... ok [INFO] [stdout] test server::server_http::tests::auth::auth_enabled_allows_protected_routes_with_valid_bearer_token ... ok [INFO] [stdout] test server::server_http::tests::auth::cors_preflight_allows_authorization_header ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_product_and_issue_routes_return_success_when_test_database_is_configured ... ok [INFO] [stdout] test server::server_http::tests::docs::root_endpoint_serves_swagger_ui ... ok [INFO] [stdout] test server::server_http::tests::docs::openapi_json_omits_bearer_security_when_auth_disabled ... ok [INFO] [stdout] test server::server_http::tests::docs::auth_enabled_keeps_docs_routes_public ... ok [INFO] [stdout] test server::server_http::tests::docs::openapi_json_lists_versioned_routes ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_issues_endpoint_returns_service_unavailable_without_archive_database ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_product_raw_endpoint_returns_service_unavailable_without_archive_database ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_product_route_rejects_invalid_size_range ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::events_handler_releases_client_slot_when_stream_dropped ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::events_handler_invalid_query_does_not_leak_client_slot ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_routes_reject_nested_filter_forms ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::events_handler_rejects_when_client_limit_reached ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_routes_parse_flat_numeric_filters_before_validation ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::cell_aggregate_route_requires_bbox_and_capped_precision ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::incident_events_endpoint_returns_service_unavailable_without_archive_database ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::feature_and_aggregate_endpoints_return_service_unavailable_without_archive_database ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::incident_events_handler_streams_incident_change_payloads ... ok [INFO] [stdout] test server::server_http::tests::files::files_endpoint_serializes_enriched_metadata ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_routes_reject_invalid_enum_filters ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::archive_routes_reject_invalid_boolean_filters ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::incidents_endpoint_returns_service_unavailable_without_archive_database ... ok [INFO] [stdout] test server::types::tests::archive_filter_params_reject_invalid_boolean_literals ... ok [INFO] [stdout] test server::types::tests::archive_filter_params_preserve_artifact_kind ... ok [INFO] [stdout] test server::server_http::tests::events_and_incidents::feature_and_aggregate_endpoints_reject_invalid_bbox_queries ... ok [INFO] [stdout] test server::server_http::tests::files::files_download_accepts_url_encoded_nested_filename ... ok [INFO] [stdout] test server::server_http::tests::metrics::metrics_endpoint_flattens_qbt_active_servers ... ok [INFO] [stdout] test server::types::tests::events_filter_does_not_match_non_file_events_with_location_constraints ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_body_presence_for_wind_hail_product ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_issue_fields ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_geographic_codes ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_bbox_against_polygon_and_points ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_office_city_for_wmo_only_fallbacks ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_polygon_containment_without_point_distance ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_structured_metadata_fields ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_hvtec_gauge_points_within_radius ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_time_mot_loc_points_within_default_radius ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_hvtec_fields ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_ugc_representative_points_within_radius ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_body_presence_for_hvtec_product ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_vtec_codes ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_non_file_events_only_by_event_name ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_wind_hail_fields ... ok [INFO] [stdout] test server::types::tests::events_filter_matches_wmo_header_fallback_fields ... ok [INFO] [stdout] test server::types::tests::events_filter_rejects_products_without_spatial_data ... ok [INFO] [stdout] test server::types::tests::file_complete_event_includes_download_url ... ok [INFO] [stdout] test server::types::tests::events_filter_requires_matching_geographic_class ... ok [INFO] [stdout] test server::types::tests::events_filter_requires_matching_header_metadata ... ok [INFO] [stdout] test server::server_http::tests::metrics::health_endpoint_reports_archive_degraded_when_archive_error_present ... ok [INFO] [stdout] test server::types::tests::events_filter_only_allows_matching_filenames ... ok [INFO] [stdout] test server::types::tests::events_filter_rejects_non_matching_vtec_codes ... ok [INFO] [stdout] test server::types::tests::events_filter_rejects_products_outside_bbox ... ok [INFO] [stdout] test server::server_http::tests::metrics::metrics_endpoint_includes_persistence_fields_when_enabled ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 59 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.42s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/emwin_cli-c4564d80d3eea3a7) [INFO] [stdout] [INFO] [stdout] running 17 tests [INFO] [stdout] test cmd::query_output::tests::write_json_emits_compact_json_with_newline ... ok [INFO] [stdout] test cmd::query_output::tests::incident_and_product_responses_include_related_urls ... ok [INFO] [stdout] test cmd::query::tests::incident_key_normalizes_identity_parts ... ok [INFO] [stdout] test cmd::query::tests::normalize_helpers_trim_and_adjust_case ... ok [INFO] [stdout] test cmd::query_output::tests::incidents_response_matches_http_shape ... ok [INFO] [stdout] test relay::config::tests::defaults_to_workspace_server_list_when_no_server_is_provided ... ok [INFO] [stdout] test cmd::query_output::tests::archive_issue_responses_include_related_urls ... ok [INFO] [stdout] test relay::config::tests::rejects_invalid_metrics_bind_address ... ok [INFO] [stdout] test tests::alert_worker_allows_zero_stats_interval ... ok [INFO] [stdout] test tests::incidents_reject_invalid_rfc3339_timestamp ... ok [INFO] [stdout] test cmd::query::tests::parse_bool_flag_rejects_invalid_literal ... ok [INFO] [stdout] test tests::alert_worker_rejects_zero_lease_and_timeout_values ... ok [INFO] [stdout] test cmd::query::tests::parse_rfc3339_normalizes_to_utc ... ok [INFO] [stdout] test tests::invalid_subcommand_is_rejected ... ok [INFO] [stdout] test tests::server_defaults_and_validates_max_db_connections ... ok [INFO] [stdout] test tests::product_raw_requires_exactly_one_output_sink ... ok [INFO] [stdout] test tests::cli_parses_representative_commands ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/cli_contract.rs (/opt/rustwide/target/debug/deps/cli_contract-8fa5dac09d9c494d) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test invalid_archive_product_size_range_keeps_stdout_clean_without_database_connection ... ok [INFO] [stdout] test invalid_feature_kind_keeps_stdout_clean_without_database_connection ... ok [INFO] [stdout] test product_raw_requires_exactly_one_sink_on_stderr ... ok [INFO] [stdout] test invalid_issue_id_keeps_stdout_clean ... ok [INFO] [stdout] test invalid_query_timestamp_writes_only_to_stderr ... ok [INFO] [stdout] test invalid_timeseries_measure_keeps_stdout_clean_without_database_connection ... ok [INFO] [stdout] test invalid_archive_boolean_filter_keeps_stdout_clean ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emwin_db-4f3f641a9beabf2b) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 29 tests [INFO] [stdout] test error::tests::object_store_retryability_can_be_non_retryable ... ok [INFO] [stdout] test error::tests::object_store_retryability_can_be_retryable ... ok [INFO] [stdout] test postgres::query::validation::tests::validate_point_distance_rejects_distance_without_coordinates ... ok [INFO] [stdout] test postgres::query::validation::tests::validate_bbox_rejects_partial_input ... ok [INFO] [stdout] test metadata::tests::serialization_preserves_existing_sidecar_shape ... ok [INFO] [stdout] test postgres::query::validation::tests::invalid_cursor_is_rejected ... ok [INFO] [stdout] test postgres::query::validation::tests::split_csv_values_trims_and_ignores_empty_segments ... ok [INFO] [stdout] test postgres::query::validation::tests::feature_cursor_round_trip_preserves_feature_kind ... ok [INFO] [stdout] test postgres::query::validation::tests::cursor_round_trip_preserves_payload ... ok [INFO] [stdout] test postgres::query::validation::tests::split_csv_i64_rejects_invalid_values ... ok [INFO] [stdout] test postgres::tests::ensure_pool_single_flights_concurrent_initialization ... ok [INFO] [stdout] test runtime::tests::shutdown_drops_queued_requests ... ok [INFO] [stdout] test runtime::tests::queue_evicts_oldest_request_when_full ... ok [INFO] [stdout] test runtime::tests::stats_snapshot_reports_live_queue_state ... ok [INFO] [stdout] test runtime::tests::final_failure_logs_include_database_context ... ok [INFO] [stdout] test runtime::tests::sink_failure_keeps_written_blobs ... ok [INFO] [stdout] test writer::tests::object_key_joining_normalizes_prefix_and_relative_path ... ok [INFO] [stdout] test writer::tests::object_store_location_rejects_other_roots ... ok [INFO] [stdout] test writer::tests::object_store_locations_round_trip_with_root_prefix ... ok [INFO] [stdout] test writer::tests::object_store_root_normalizes_trailing_slashes ... ok [INFO] [stdout] test runtime::tests::writer_failure_does_not_persist_metadata ... ok [INFO] [stdout] test runtime::tests::filesystem_writer_keeps_blobs_when_sink_fails ... ok [INFO] [stdout] test runtime::tests::filesystem_writer_persists_blobs ... ok [INFO] [stdout] test runtime::tests::retryable_sink_failure_reuses_written_blobs_until_recovered ... ok [INFO] [stdout] test writer::tests::file_writer_persists_file_urls ... ok [INFO] [stdout] test runtime::tests::retryable_writer_failure_recovers_without_dropping_request ... ok [INFO] [stdout] test writer::tests::object_store_writer_rejects_query_and_fragment_components ... ok [INFO] [stdout] test runtime::tests::retry_logs_include_object_store_backend_context ... ok [INFO] [stderr] Running tests/postgres_sink_incidents.rs (/opt/rustwide/target/debug/deps/postgres_sink_incidents-a0491b7177c228b7) [INFO] [stderr] Running tests/postgres_sink_issues.rs (/opt/rustwide/target/debug/deps/postgres_sink_issues-e72af0b0c2a266de) [INFO] [stdout] test writer::tests::object_store_writer_uses_parsed_prefix_for_target_description ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.46s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test incident_cleanup_expires_active_rows_with_past_end_utc ... ok [INFO] [stdout] test incident_changes_emit_created_and_updated_notifications ... ok [INFO] [stdout] test incident_cleanup_skips_non_active_rows ... ok [INFO] [stdout] test incident_projection_collapses_duplicate_keys_within_one_product ... ok [INFO] [stdout] test incident_cleanup_emits_update_notifications ... ok [INFO] [stdout] test incident_cleanup_skips_future_end_utc_and_null_end_utc ... ok [INFO] [stdout] test incident_projection_ignores_non_operational_vtec ... ok [INFO] [stdout] test incident_cleanup_preserves_latest_product_timestamp_and_latest_vtec_action ... ok [INFO] [stdout] test incident_projection_rejects_stale_updates ... ok [INFO] [stdout] test stale_incident_updates_do_not_emit_notifications ... ok [INFO] [stdout] test incident_projection_tracks_lifecycle_and_lineage ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test archived_issue_queries_return_list_and_detail ... ok [INFO] [stdout] test archived_issue_queries_support_filters_and_cursor_pagination ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/postgres_sink_queries.rs (/opt/rustwide/target/debug/deps/postgres_sink_queries-be101080b87f774e) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test archive_read_queries_return_incident_and_product_views ... ok [INFO] [stdout] test archived_product_list_matches_office_city_case_insensitively ... ok [INFO] [stdout] test archived_cell_aggregate_counts_only_matching_geometries ... ok [INFO] [stdout] test archived_product_list_supports_bounding_box_filters ... ok [INFO] [stdout] test archived_cell_aggregate_counts_polygon_and_path_products ... ok [INFO] [stdout] test archived_aggregates_apply_issue_and_vtec_row_filters ... ok [INFO] [stdout] test archived_features_point_radius_requires_polygon_containment ... ok [INFO] [stdout] test archived_features_bbox_filters_only_return_matching_geometries ... ok [INFO] [stdout] test archived_product_list_supports_filters_and_cursor_pagination ... ok [INFO] [stdout] test archived_timeseries_rejects_oversized_bucket_count ... ok [INFO] [stdout] test archived_queries_reject_invalid_cursor_and_spatial_inputs ... ok [INFO] [stdout] test archived_features_support_pagination_and_kind_filtering ... ok [INFO] [stdout] test incident_list_pagination_uses_last_returned_item_for_cursor ... ok [INFO] [stdout] test incident_products_pagination_uses_last_returned_item_for_cursor ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stderr] Running tests/postgres_sink_roundtrip.rs (/opt/rustwide/target/debug/deps/postgres_sink_roundtrip-871367d0fe65bf80) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test postgres_migration_versions_are_unique ... ok [INFO] [stdout] test postgres_sink_persists_object_store_blob_locations ... ok [INFO] [stdout] test postgres_sink_bootstraps_and_persists_rows ... ok [INFO] [stdout] test delivery_claims_use_in_progress_leases_and_claim_tokens ... ok [INFO] [stdout] test alert_source_event_claims_are_recoverable_after_lease_expiry ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/postgres_sink_storage.rs (/opt/rustwide/target/debug/deps/postgres_sink_storage-182d43d3b962a3c1) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test archive_payload_reads_file_url_backed_bytes ... ok [INFO] [stdout] test archive_payload_reads_filesystem_backed_bytes ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emwin_live-1c2b64c4f029aa41) [INFO] [stdout] [INFO] [stdout] running 33 tests [INFO] [stdout] test archive_postprocess::tests::non_archive_filename_passes_through ... ok [INFO] [stdout] test archive_postprocess::tests::disabling_post_processing_preserves_raw_archive ... ok [INFO] [stdout] test archive_postprocess::tests::rejects_empty_archive ... ok [INFO] [stdout] test archive_postprocess::tests::rejects_invalid_zip_bytes ... ok [INFO] [stdout] test archive_postprocess::tests::rejects_directory_first_entry ... ok [INFO] [stdout] test archive_postprocess::tests::extracts_first_entry_only ... ok [INFO] [stdout] test archive_postprocess::tests::archive_detection_is_case_insensitive_for_zip_and_zis ... ok [INFO] [stdout] test archive_postprocess::tests::accepts_safe_nested_path ... ok [INFO] [stdout] test archive_postprocess::tests::rejects_unsafe_first_entry_path ... ok [INFO] [stdout] test config::tests::qbt_pinned_servers_reject_server_list_path ... ok [INFO] [stdout] test config::tests::qbt_default_servers_keep_automatic_server_list_mode ... ok [INFO] [stdout] test config::tests::qbt_pinned_servers_disable_automatic_server_list_behavior ... ok [INFO] [stdout] test archive_postprocess::tests::declared_oversize_entry_is_rejected ... ok [INFO] [stdout] test file_pipeline::tests::completed_metadata_parses_extracted_archive_content_like_plain_text ... ok [INFO] [stdout] test file_pipeline::tests::completed_metadata_surfaces_text_parse_warnings ... ok [INFO] [stdout] test file_pipeline::tests::completed_metadata_treats_zip_framed_txt_payload_as_unknown_zip ... ok [INFO] [stdout] test file_pipeline::tests::completed_metadata_uses_header_enrichment_for_valid_text_products ... ok [INFO] [stdout] test file_pipeline::tests::metadata_sidecar_paths_use_json_suffix ... ok [INFO] [stdout] test file_pipeline::tests::persist_completed_record_uses_extracted_filename_and_bytes ... ok [INFO] [stdout] test file_pipeline::tests::persist_completed_record_writes_payload_and_metadata_sidecar ... ok [INFO] [stdout] test ingest::tests::normalized_server_count_matches_round_robin_dedup ... ok [INFO] [stdout] test file_pipeline::tests::metadata_json_round_trips ... ok [INFO] [stdout] test file_pipeline::tests::archive_storage_plan_flattens_nested_filename_to_basename ... ok [INFO] [stdout] test file_pipeline::tests::build_persist_request_uses_partitioned_archival_paths ... ok [INFO] [stdout] test archive_postprocess::tests::streamed_oversize_entry_is_rejected ... ok [INFO] [stdout] test ingest::tests::completed_product_is_retained_and_published ... ok [INFO] [stdout] test persistence::tests::file_url_targets_are_required_for_local_filesystem ... ok [INFO] [stdout] test retained::tests::retained_files_evict_by_capacity_and_ttl ... ok [INFO] [stdout] test persistence::tests::storage_target_rejects_invalid_uris ... ok [INFO] [stdout] test ingest::tests::archive_products_are_post_processed_before_persistence ... ok [INFO] [stdout] test retained::tests::retained_files_replaces_duplicate_without_duplicate_listing ... ok [INFO] [stdout] test file_pipeline::tests::archive_storage_plan_uses_fallback_segments_when_metadata_is_missing ... ok [INFO] [stdout] test persistence::tests::object_store_targets_accept_supported_urls ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.57s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emwin_parser-6d408c982ea7547c) [INFO] [stdout] [INFO] [stdout] running 367 tests [INFO] [stdout] test body::enrich::tests::body_extraction_plan_maps_known_extractor_sets_to_expected_extractors ... ok [INFO] [stdout] test body::enrich::tests::enrich_body_from_plan_preserves_current_extractor_order ... ok [INFO] [stdout] test body::cap::tests::invalid_event_motion_reports_issue ... ok [INFO] [stdout] test body::hvtec::tests::candidate_scan_ignores_malformed_slash_blocks ... ok [INFO] [stdout] test body::hvtec::tests::malformed_field_count_reports_invalid_format ... ok [INFO] [stdout] test body::enrich::tests::enrich_body_wrapper_matches_plan_based_engine ... ok [INFO] [stdout] test body::hvtec::tests::parse_hvtec_enriches_known_nwslid ... ok [INFO] [stdout] test body::hvtec::tests::parse_hvtec_invalid_reports_issue ... ok [INFO] [stdout] test body::hvtec::tests::parse_hvtec_supports_none_severity_and_zero_times ... ok [INFO] [stdout] test body::hvtec::tests::multiple_hvtec_codes_in_one_body ... ok [INFO] [stdout] test body::hvtec::tests::parse_single_hvtec ... ok [INFO] [stdout] test body::hvtec::tests::unknown_record_maps_to_unknown ... ok [INFO] [stdout] test body::hvtec::tests::url_like_slash_block_is_ignored ... ok [INFO] [stdout] test body::latlon::tests::parse_candidate_terminated_by_unrelated_section_header ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_case_insensitive ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_odd_coordinates ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_packed_pair_token_emits_no_repair_issue ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_rejects_self_intersecting_polygon ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_invalid_skipped ... ok [INFO] [stdout] test body::hvtec::tests::invalid_nwslid_still_parses_without_enrichment ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_ignores_inline_terminators ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_repairs_fused_middle_token ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_svsgrrmi_polygon ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_with_packed_wrapped_tail ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_with_split_coordinate_token ... ok [INFO] [stdout] test body::latlon::tests::parse_multiple_polygons ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_wrapped_across_lines ... ok [INFO] [stdout] test body::latlon::tests::parse_packed_wrapped_and_fused_tokens_in_same_block ... ok [INFO] [stdout] test body::latlon::tests::parse_multiple_latlon_blocks_in_multiline_product ... ok [INFO] [stdout] test body::latlon::tests::parse_latlon_invalid_reports_issue ... ok [INFO] [stdout] test body::latlon::tests::parse_polygon_8digit ... ok [INFO] [stdout] test body::latlon::tests::parse_polygon_4digit_hundredths ... ok [INFO] [stdout] test body::latlon::tests::polygon_auto_closes ... ok [INFO] [stdout] test body::latlon::tests::parse_polygon_6digit ... ok [INFO] [stdout] test body::latlon::tests::parse_simple_polygon_4digit ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_coordinates_spanning_many_lines_parse ... ok [INFO] [stdout] test body::latlon::tests::serializes_points_without_float_artifacts ... ok [INFO] [stdout] test body::latlon::tests::polygon_wkt_output_is_stable ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_invalid_reports_issue ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_invalid_motion_tokens_report_invalid_format ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_linestring ... ok [INFO] [stdout] test body::enrich::tests::enrich_body_with_vtec_event_plan ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_marker_with_mixed_case_parses ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_point ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_reports_non_line_aligned_marker ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_rolls_to_previous_day_when_closest ... ok [INFO] [stdout] test body::cap::tests::cap_warning_projects_to_vtec_body ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_reports_dangling_coordinate_repair ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_with_split_coordinate_token ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_with_packed_coordinate_pair_token ... ok [INFO] [stdout] test body::cap::tests::cap_keepalive_projects_to_generic_body ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_with_trailing_unrelated_text_stops_cleanly ... ok [INFO] [stdout] test body::ugc::tests::block_terminated_by_next_section_after_expiration_still_parses ... ok [INFO] [stdout] test body::ugc::tests::invalid_expiration_fragment_is_ignored_without_full_block ... ok [INFO] [stdout] test body::ugc::tests::mixed_comma_and_hyphen_shorthand_segments_parse ... ok [INFO] [stdout] test body::ugc::tests::candidate_spanning_more_than_eight_lines_is_supported ... ok [INFO] [stdout] test body::time_mot_loc::tests::parse_time_mot_loc_wrapped_across_lines ... ok [INFO] [stdout] test body::ugc::tests::parse_single_ugc ... ok [INFO] [stdout] test body::time_mot_loc::tests::serializes_points_without_float_artifacts ... ok [INFO] [stdout] test body::ugc::tests::parse_ugc_multiple ... ok [INFO] [stdout] test body::ugc::tests::block_terminated_by_blank_line_is_ignored ... ok [INFO] [stdout] test body::ugc::tests::dotted_advisory_lines_do_not_start_ugc_capture ... ok [INFO] [stdout] test body::ugc::tests::parse_pyiem_nm_county_sample_keeps_dense_county_expansion ... ok [INFO] [stdout] test body::ugc::tests::parse_ugc_range ... ok [INFO] [stdout] test body::vtec::tests::candidate_scan_ignores_malformed_slash_blocks ... ok [INFO] [stdout] test body::vtec::tests::invalid_etn_reports_issue ... ok [INFO] [stdout] test body::vtec::tests::multiple_vtec_codes_in_one_line_parse ... ok [INFO] [stdout] test body::vtec::tests::parse_multiple_vtec ... ok [INFO] [stdout] test body::vtec::tests::malformed_begin_end_split_reports_invalid_format ... ok [INFO] [stdout] test body::vtec::tests::parse_single_vtec ... ok [INFO] [stdout] test body::vtec::tests::parse_vtec_supports_experimental_vtec_status ... ok [INFO] [stdout] test body::vtec::tests::parse_vtec_unknown_phenomena_has_no_description ... ok [INFO] [stdout] test body::vtec::tests::parse_vtec_with_unspecified_times ... ok [INFO] [stdout] test body::vtec::tests::unknown_status_action_and_phenomena_still_parse ... ok [INFO] [stdout] test body::vtec_events::tests::missing_reference_time_still_keeps_vtec_segment ... ok [INFO] [stdout] test body::vtec_events::tests::duplicate_ugc_across_two_sections_in_same_segment_emits_duplicate_issue ... ok [INFO] [stdout] test body::vtec_events::tests::missing_reference_time_with_ugc_does_not_emit_missing_ugc_qc ... ok [INFO] [stdout] test body::vtec_events::tests::missing_reference_time_without_ugc_candidate_emits_missing_ugc_qc ... ok [INFO] [stdout] test body::vtec_events::tests::missing_ugc_issue_is_emitted ... ok [INFO] [stdout] test body::vtec_events::tests::multi_segment_flood_product_yields_multiple_segments ... ok [INFO] [stdout] test body::vtec_events::tests::segment_with_multiple_vtec_codes_keeps_both_vtec_entries ... ok [INFO] [stdout] test body::vtec_events::tests::single_segment_warning_yields_one_segment ... ok [INFO] [stdout] test body::vtec_events::tests::watch_only_segments_skip_missing_polygon_issue ... ok [INFO] [stdout] test body::wind_hail::tests::compact_hail_value_parses ... ok [INFO] [stdout] test body::wind_hail::tests::compact_wind_value_parses ... ok [INFO] [stdout] test body::wind_hail::tests::invalid_units_keep_existing_issue_code ... ok [INFO] [stdout] test body::vtec_events::tests::new_vtec_after_geography_starts_new_segment ... ok [INFO] [stdout] test body::wind_hail::tests::legacy_embedded_in_longer_sentence_still_parses ... ok [INFO] [stdout] test body::wind_hail::tests::lowercase_modern_labels_parse ... ok [INFO] [stdout] test body::wind_hail::tests::parse_invalid_modern_wind_hail_reports_issue ... ok [INFO] [stdout] test body::wind_hail::tests::mixed_modern_and_legacy_tags_parse ... ok [INFO] [stdout] test body::wind_hail::tests::parse_legacy_wind_hail_tags ... ok [INFO] [stdout] test body::wind_hail::tests::parse_modern_hail_with_leading_dot_decimal ... ok [INFO] [stdout] test body::wind_hail::tests::parse_modern_wind_hail_tags ... ok [INFO] [stdout] test body::wind_hail::tests::spaced_modern_labels_parse ... ok [INFO] [stdout] test body::wind_hail::tests::trailing_bulletin_terminator_is_ignored ... ok [INFO] [stdout] test data::tests::description_lookup_is_case_insensitive ... ok [INFO] [stdout] test data::tests::detects_prefixed_filename ... ok [INFO] [stdout] test data::tests::fd_entry_exposes_specialized_routing_and_never_body_behavior ... ok [INFO] [stdout] test body::ugc::tests::incomplete_ugc_candidates_without_expiration_are_ignored ... ok [INFO] [stdout] test data::tests::detects_radar_graphic_family ... ok [INFO] [stdout] test data::tests::lookup_rejects_invalid_pil_length ... ok [INFO] [stdout] test data::tests::generated_catalog_contains_known_entry ... ok [INFO] [stdout] test data::tests::generated_catalog_exposes_ordered_extractors ... ok [INFO] [stdout] test data::tests::new_specialized_entries_expose_specialized_routing_and_never_body_behavior ... ok [INFO] [stdout] test data::tests::noisy_generic_ugc_families_can_disable_body_extraction ... ok [INFO] [stdout] test data::tests::nwslid_lookup_is_case_insensitive ... ok [INFO] [stdout] test data::tests::pirep_entry_exposes_specialized_routing_and_never_body_behavior ... ok [INFO] [stdout] test data::tests::resolved_policy_defaults_to_base_catalog_entry ... ok [INFO] [stdout] test data::tests::nwslid_lookup_rejects_invalid_codes ... ok [INFO] [stdout] test data::tests::sigmet_entry_exposes_specialized_routing_and_never_body_behavior ... ok [INFO] [stdout] test data::tests::satellite_precipitation_estimates_keep_only_latlon_extraction ... ok [INFO] [stdout] test data::tests::resolved_policy_applies_exact_afos_routing_overrides ... ok [INFO] [stdout] test data::tests::text_product_catalog_entry_returns_routing_and_body_behavior ... ok [INFO] [stdout] test data::tests::ugc_county_lookup_is_case_insensitive ... ok [INFO] [stdout] test data::tests::wmo_office_lookup_rejects_invalid_codes ... ok [INFO] [stdout] test data::tests::ugc_lookup_rejects_wrong_class ... ok [INFO] [stdout] test data::tests::wmo_office_lookup_supports_three_and_four_letter_codes ... ok [INFO] [stdout] test enrichment::tests::afos_international_pirep_bulletins_use_explicit_family ... ok [INFO] [stdout] test enrichment::tests::canadian_surface_observation_bulletins_route_to_metar ... ok [INFO] [stdout] test enrichment::tests::corrected_metar_bulletins_use_wmo_fallback_without_afos ... ok [INFO] [stdout] test body::ugc::tests::parse_ugc_abbreviated_range_end ... ok [INFO] [stdout] test body::vtec_events::tests::contiguous_vtec_lines_after_single_ugc_stay_in_same_segment ... ok [INFO] [stdout] test body::ugc::tests::parse_ugc_combines_abbreviated_and_standard_ranges ... ok [INFO] [stdout] test body::ugc::tests::parse_ugc_multiple_range_pairs_in_single_segment ... ok [INFO] [stdout] test body::vtec_events::tests::marine_only_ugc_skips_missing_polygon_issue ... ok [INFO] [stdout] test enrichment::tests::international_pirep_bulletins_use_wmo_unsupported_source ... ok [INFO] [stdout] test enrichment::tests::dcp_bulletins_use_wmo_fallback_without_afos ... ok [INFO] [stdout] test enrichment::tests::duplicated_amended_taf_bulletins_use_wmo_fallback_without_afos ... ok [INFO] [stdout] test enrichment::tests::multipart_taf_bulletins_use_explicit_family ... ok [INFO] [stdout] test enrichment::tests::metar_collectives_use_wmo_fallback_without_afos ... ok [INFO] [stdout] test enrichment::tests::body_enrichment_uses_body_text_not_afos_line ... ok [INFO] [stdout] test data::tests::ugc_zone_lookup_is_case_insensitive ... ok [INFO] [stdout] test enrichment::tests::international_sigmet_bulletins_use_wmo_fallback_without_afos ... ok [INFO] [stdout] test enrichment::tests::marker_line_then_corrected_taf_bulletins_use_wmo_fallback_without_afos ... ok [INFO] [stdout] test enrichment::tests::taf_bulletins_use_wmo_fallback_without_afos ... ok [INFO] [stdout] test enrichment::tests::non_text_products_use_filename_classification ... ok [INFO] [stdout] test enrichment::tests::text_products_do_not_fall_back_to_filename_heuristics ... ok [INFO] [stdout] test enrichment::tests::taf_bulletins_with_marker_line_before_report_use_wmo_fallback ... ok [INFO] [stdout] test enrichment::tests::rbg94e_products_route_to_structured_ero_enrichment ... ok [INFO] [stdout] test enrichment::tests::unsupported_canadian_warning_bulletins_use_explicit_family ... ok [INFO] [stdout] test enrichment::tests::unsupported_airmet_bulletins_use_wmo_unsupported_source ... ok [INFO] [stdout] test enrichment::tests::zip_framed_txt_payload_is_treated_as_unknown_zip ... ok [INFO] [stdout] test enrichment::tests::unknown_non_text_products_are_marked_unknown ... ok [INFO] [stdout] test enrichment::tests::text_products_use_header_enrichment ... ok [INFO] [stdout] test enrichment::tests::unsupported_canadian_bulletins_preserve_explicit_family ... ok [INFO] [stdout] test enrichment::tests::wallops_telemetry_variants_with_symbol_noise_use_wmo_dcp_fallback ... ok [INFO] [stdout] test enrichment::tests::ptsdy1_products_route_to_structured_spc_outlook_enrichment ... ok [INFO] [stdout] test geo::tests::haversine_distance_matches_known_city_pair ... ok [INFO] [stdout] test header::enrich::tests::enriches_known_pil ... ok [INFO] [stdout] test geo::tests::polygon_bounds_cover_vertices ... ok [INFO] [stdout] test header::enrich::tests::bbb_kind_is_classified ... ok [INFO] [stdout] test header::parser::tests::afos_and_wmo_parse_success ... ok [INFO] [stdout] test header::parser::tests::afos_with_trailing_tab_is_valid ... ok [INFO] [stdout] test header::parser::tests::body_after_lines_returns_borrowed_body_slice ... ok [INFO] [stdout] test header::parser::tests::borrowed_header_refs_convert_to_owned_headers ... ok [INFO] [stdout] test header::parser::tests::condition_text_strips_controls_and_inserts_ldm ... ok [INFO] [stdout] test header::parser::tests::conditioned_ref_parsers_preserve_error_shapes ... ok [INFO] [stdout] test header::parser::tests::borrowed_timestamp_resolution_matches_owned_behavior ... ok [INFO] [stdout] test header::parser::tests::correction_flag_in_wmo_does_not_break_parse ... ok [INFO] [stdout] test header::parser::tests::four_character_ttaaii_is_normalized ... ok [INFO] [stdout] test header::parser::tests::malformed_wmo_is_strict_error ... ok [INFO] [stdout] test geo::tests::point_in_polygon_handles_inside_outside_and_edges ... ok [INFO] [stdout] test header::parser::tests::afos_with_numeric_prefix_is_valid ... ok [INFO] [stdout] test header::parser::tests::null_bytes_are_removed_before_parse ... ok [INFO] [stdout] test geo::tests::haversine_distance_is_zero_for_same_point ... ok [INFO] [stdout] test header::parser::tests::missing_ldm_sequence_is_inserted ... ok [INFO] [stdout] test header::parser::tests::missing_afos_returns_error ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_cf6_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_cwa_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_dcp_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_dsm_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_explicit_unsupported_wmo_family_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_fd_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_hml_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_lsr_candidate_shape ... ok [INFO] [stdout] test enrichment::tests::swomcd_products_route_to_structured_mcd_enrichment ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_malformed_wmo_cwa_with_synthetic_pil_and_prefix ... ok [INFO] [stdout] test header::parser::tests::strips_soh_and_etx_before_parse ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_metar_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_mos_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_sel_candidate_with_body_shape ... ok [INFO] [stdout] test header::parser::tests::timestamp_uses_current_month_when_closest ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_sigmet_candidate_shape ... ok [INFO] [stdout] test header::parser::tests::wmo_header_variations_parse ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_taf_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_text_parse_failure_issue_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_text_generic_product_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_unsupported_wmo_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::body_request_issues_are_appended_to_text_generic_output ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_wwp_candidate_shape ... ok [INFO] [stdout] test pipeline::assemble::tests::specialized_candidate_with_body_request_assembles_both_artifact_and_body ... ok [INFO] [stdout] test pipeline::assemble::tests::specialized_candidates_without_body_request_remain_bodyless ... ok [INFO] [stdout] test pipeline::assemble::tests::text_generic_candidate_assembles_body_from_plan ... ok [INFO] [stdout] test pipeline::classify::tests::afos_strategies::afos_fd_strategy_returns_fd_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::afos_strategies::afos_generic_fallback_returns_text_generic_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::afos_strategies::afos_international_pirep_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_pirep_candidate_shape ... ok [INFO] [stdout] test pipeline::classify::tests::afos_strategies::afos_pirep_strategy_returns_pirep_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::afos_strategies::afos_multipart_taf_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_saw_candidate_with_body_shape ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::cf6_classifier_carries_body_request_when_plan_is_enabled ... ok [INFO] [stdout] test pipeline::classify::tests::afos_strategies::afos_strategy_precedence_prefers_pirep_when_catalog_routing_matches ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::cf6_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::cwa_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::cwa_classifier_carries_body_request_when_plan_is_enabled ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::dsm_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::dsm_classifier_carries_body_request_when_plan_is_enabled ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::fd_candidate_has_no_body_request_by_default ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::hml_classifier_carries_body_request_when_plan_is_enabled ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::lsr_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::hml_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::mos_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::assemble::tests::assembles_unknown_non_text_shape ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::lsr_classifier_carries_body_request_when_plan_is_enabled ... ok [INFO] [stdout] test pipeline::classify::tests::afos_strategies::afos_sigmet_strategy_returns_sigmet_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::specialized_candidate_can_carry_body_request_when_metadata_enables_catalog_body_behavior ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::text_generic_candidate_omits_body_request_when_catalog_body_behavior_is_never ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::text_generic_candidate_uses_catalog_body_behavior ... ok [INFO] [stdout] test header::parser::tests::timestamp_rolls_back_to_previous_month_when_closest ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_cwa_active_sample_returns_wmo_only_cwa_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_cwa_cancel_sample_returns_wmo_only_cwa_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_cf6_sample_returns_cf6_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::pirep_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::sigmet_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_dsm_sample_returns_dsm_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::mos_classifier_carries_body_request_when_plan_is_enabled ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_hml_sample_returns_hml_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_met_sample_returns_mos_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_lsr_sample_returns_lsr_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::failed_fd_parse_stays_with_fd_family ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_cf6_stays_in_family_with_issue ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_sel_sample_returns_sel_candidate_with_body_request ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::wwp_candidate_body_request_follows_catalog_policy ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_lsr_stays_in_family_with_issue ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_hml_stays_in_family_with_issue ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_wmo_cwa_stays_in_family_with_issue ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_standard_mos_stays_in_family_with_issue ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_wmo_metar_stays_in_family_with_issue ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::cf6_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::dsm_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_wwp_stays_in_family_with_issue ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::lsr_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::invalid_wmo_only_non_cwa_does_not_hit_cwa_strategy ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::mos_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::pirep_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::saw_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::sel_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::specialized_strategy_requires_matching_catalog_routing ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::unrouted_cf6_like_afos_falls_back_to_generic ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::unrouted_dsm_like_afos_falls_back_to_generic ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::unrouted_lsr_like_afos_falls_back_to_generic ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::unrouted_mos_like_afos_falls_back_to_generic ... ok [INFO] [stdout] test pipeline::classify::tests::routing_guards::unrouted_pirep_like_afos_falls_back_to_generic ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_wwp_sample_returns_wwp_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::unknown_valid_wmo_returns_generic_unsupported_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_airmet_returns_unsupported_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_severe_thunderstorm_warning_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_special_weather_statement_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_storm_summary_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_surface_observation_routes_to_metar_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_tornado_warning_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_tropical_cyclone_public_information_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_tropical_cyclone_technical_discussion_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_tropical_cyclone_watch_warning_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_volcanic_ash_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_dcp_strategy_returns_dcp_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_international_pirep_returns_unsupported_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_metar_strategy_returns_metar_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_multipart_taf_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_sigmet_strategy_returns_sigmet_candidate ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_taf_strategy_returns_taf_candidate ... ok [INFO] [stdout] test pipeline::envelope::tests::afos_text_builds_text_afos_envelope ... ok [INFO] [stdout] test pipeline::envelope::tests::invalid_text_parse_is_preserved_as_unknown ... ok [INFO] [stdout] test pipeline::envelope::tests::known_non_text_file_builds_non_text_envelope ... ok [INFO] [stdout] test pipeline::envelope::tests::missing_afos_builds_text_wmo_only_envelope ... ok [INFO] [stdout] test pipeline::envelope::tests::wmo_only_envelope_tracks_body_range ... ok [INFO] [stdout] test pipeline::envelope::tests::zip_framed_text_stays_unknown ... ok [INFO] [stdout] test pipeline::normalize::tests::non_text_filename_is_not_recognized_as_text ... ok [INFO] [stdout] test pipeline::normalize::tests::text_filename_is_recognized ... ok [INFO] [stdout] test pipeline::normalize::tests::text_range_uses_normalized_bytes ... ok [INFO] [stdout] test pipeline::normalize::tests::zip_payload_with_text_filename_stays_opaque ... ok [INFO] [stdout] test projection::tests::summary_uses_discriminated_header_and_compact_issues ... ok [INFO] [stdout] test pipeline::classify::tests::wmo::wmo_canadian_text_returns_unsupported_candidate ... ok [INFO] [stdout] test projection::tests::detail_strips_raw_fields_from_artifact_payloads ... ok [INFO] [stdout] test specialized::cf6::tests::parses_local_cf6_rows ... ok [INFO] [stdout] test specialized::cf6::tests::preserves_trace_values_without_issue ... ok [INFO] [stdout] test specialized::cwa::tests::parses_local_active_cwa ... ok [INFO] [stdout] test specialized::cwa::tests::parses_local_cancel_cwa ... ok [INFO] [stdout] test specialized::dcp::tests::ignores_non_dcp_filename ... ok [INFO] [stdout] test specialized::dcp::tests::parses_misa_bulletin_with_control_character_prefix ... ok [INFO] [stdout] test specialized::dcp::tests::parses_misdcp_bulletin ... ok [INFO] [stdout] test specialized::dcp::tests::parses_single_line_misa_with_tilde_and_backslash_noise ... ok [INFO] [stdout] test specialized::dcp::tests::parses_single_line_misdcp_bulletin_with_inline_telemetry_noise ... ok [INFO] [stdout] test specialized::dcp::tests::parses_single_line_misdcp_with_quoted_inline_values ... ok [INFO] [stdout] test specialized::dcp::tests::parses_single_line_misdcp_with_underscores_and_question_marks ... ok [INFO] [stdout] test specialized::dsm::tests::parses_all_missing_dsm_summary ... ok [INFO] [stdout] test specialized::dsm::tests::parses_dsm_fixture ... ok [INFO] [stdout] test specialized::dsm::tests::preserves_partial_success_with_invalid_summary_issue ... ok [INFO] [stdout] test specialized::fd::tests::decodes_calm_and_high_speed_groups ... ok [INFO] [stdout] test specialized::fd::tests::ignores_extra_blank_lines ... ok [INFO] [stdout] test specialized::fd::tests::parses_fd_bulletin ... ok [INFO] [stdout] test specialized::fd::tests::rejects_invalid_timestamp_distance ... ok [INFO] [stdout] test specialized::fd::tests::rejects_missing_header_fields ... ok [INFO] [stdout] test specialized::hml::tests::parses_local_hml_document ... ok [INFO] [stdout] test specialized::lsr::tests::malformed_lsr_block_reports_issue_but_keeps_valid_report ... ok [INFO] [stdout] test specialized::ero::tests::parses_day_and_location_tokens ... ok [INFO] [stdout] test specialized::lsr::tests::parses_city_field_that_begins_with_digit ... ok [INFO] [stdout] test specialized::lsr::tests::parses_local_lsr_report ... ok [INFO] [stdout] test specialized::lsr::tests::parses_mixed_case_units_without_losing_value_or_qualifier ... ok [INFO] [stdout] test specialized::mcd::tests::parses_swomcd_bulletin ... ok [INFO] [stdout] test specialized::metar::tests::invalid_metar_token_emits_issue ... ok [INFO] [stdout] test specialized::metar::tests::parses_collective_with_single_metar ... ok [INFO] [stdout] test specialized::metar::tests::parses_compact_metar_prefix ... ok [INFO] [stdout] test specialized::metar::tests::parses_corrected_metar_report ... ok [INFO] [stdout] test specialized::metar::tests::parses_corrected_speci_report ... ok [INFO] [stdout] test specialized::metar::tests::parses_fused_observation_suffix_token ... ok [INFO] [stdout] test specialized::metar::tests::parses_multiple_reports_in_bulletin ... ok [INFO] [stdout] test specialized::metar::tests::parses_nil_metar_report ... ok [INFO] [stdout] test specialized::metar::tests::parses_station_led_corrected_metar_report ... ok [INFO] [stdout] test specialized::metar::tests::raw_report_uses_compacted_whitespace ... ok [INFO] [stdout] test specialized::metar::tests::rejects_non_metar_body ... ok [INFO] [stdout] test specialized::metar::tests::skips_nil_only_station_tokens_inside_collective ... ok [INFO] [stdout] test specialized::cli::tests::parses_basic_cli_section ... ok [INFO] [stdout] test specialized::mcd::tests::parses_most_probable_tags ... ok [INFO] [stdout] test specialized::mos::tests::parses_local_standard_mos_section ... ok [INFO] [stdout] test specialized::mos::tests::parses_mexafg_fixture ... ok [INFO] [stdout] test specialized::mos::tests::preserves_nbx_model_identity ... ok [INFO] [stdout] test specialized::pirep::tests::invalid_header_is_rejected ... ok [INFO] [stdout] test specialized::pirep::tests::keeps_station_relative_location_as_raw_text ... ok [INFO] [stdout] test specialized::pirep::tests::parses_arp_style_wmo_pirep_fixture ... ok [INFO] [stdout] test specialized::pirep::tests::parses_multiple_pireps ... ok [INFO] [stdout] test specialized::pirep::tests::rejects_non_pirep_text ... ok [INFO] [stdout] test specialized::pirep::tests::parses_direct_latlon_location_without_lookup ... ok [INFO] [stdout] test specialized::pirep::tests::wrapped_report_lines_are_normalized ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_ftp_sample_returns_mos_candidate ... ok [INFO] [stdout] test specialized::mos::tests::parses_local_ftp_mos_section ... ok [INFO] [stdout] test pipeline::classify::tests::malformed::malformed_ftp_stays_in_family_with_issue ... ok [INFO] [stdout] test specialized::sel::tests::detects_test_marker ... ok [INFO] [stdout] test specialized::sel::tests::detects_watch_number_test_threshold ... ok [INFO] [stdout] test enrichment::tests::current_specialized_afos_products_remain_bodyless ... ok [INFO] [stdout] test pipeline::classify::tests::body_request::wwp_classifier_carries_body_request_when_plan_is_enabled ... ok [INFO] [stdout] test specialized::sel::tests::parses_severe_thunderstorm_watch ... ok [INFO] [stdout] test specialized::saw::tests::detects_test_product ... ok [INFO] [stdout] test specialized::saw::tests::parses_issuance_with_polygon ... ok [INFO] [stdout] test specialized::sel::tests::parses_tornado_watch ... ok [INFO] [stdout] test specialized::saw::tests::parses_replacement_watch_number ... ok [INFO] [stdout] test pipeline::classify::tests::local_samples::local_saw_sample_returns_saw_candidate_with_body_request ... ok [INFO] [stdout] test specialized::saw::tests::parses_cancellation_without_polygon ... ok [INFO] [stdout] test specialized::sel::tests::parses_mesonet_test_issuance_line ... ok [INFO] [stdout] test specialized::sigmet::tests::keeps_cancellation_sections ... ok [INFO] [stdout] test specialized::sigmet::tests::parses_convective_sigmet_sections ... ok [INFO] [stdout] test specialized::sigmet::tests::parses_international_sigmet_sections ... ok [INFO] [stdout] test specialized::taf::tests::ignores_non_taf_body ... ok [INFO] [stdout] test specialized::taf::tests::parses_bulletin_with_marker_line_before_taf_report ... ok [INFO] [stdout] test specialized::taf::tests::parses_amended_taf_bulletin ... ok [INFO] [stdout] test specialized::taf::tests::parses_inter_group_and_trailing_probability_tempo ... ok [INFO] [stdout] test specialized::taf::tests::parses_corrected_taf_bulletin ... ok [INFO] [stdout] test specialized::spc_outlook::tests::parses_areal_outline_without_point_geometry ... ok [INFO] [stdout] test specialized::spc_outlook::tests::parses_convective_points_product ... ok [INFO] [stdout] test specialized::taf::tests::parses_duplicated_amended_taf_prefix ... ok [INFO] [stdout] test specialized::taf::tests::parses_probability_group ... ok [INFO] [stdout] test specialized::spc_outlook::tests::parses_multi_day_product_ids ... ok [INFO] [stdout] test specialized::taf::tests::parses_station_led_taf_without_explicit_taf_prefix ... ok [INFO] [stdout] test specialized::wwp::tests::parses_local_wwp_bulletin ... ok [INFO] [stdout] test specialized::taf::tests::parses_probability_prefixed_tempo_group ... ok [INFO] [stdout] test specialized::wwp::tests::parses_watch_probabilities_with_ws_header ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 367 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.40s [INFO] [stdout] [INFO] [stderr] Running tests/body_parser_integration.rs (/opt/rustwide/target/debug/deps/body_parser_integration-f9cc7fb4fa2797f1) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test integration_no_matches_returns_empty ... ok [INFO] [stderr] Running tests/corpus_generic_cap.rs (/opt/rustwide/target/debug/deps/corpus_generic_cap-d06ef31cb6177d49) [INFO] [stdout] test integration_parse_all_types ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test cap_xml_corpus_projects_expected_spot_checks ... ok [INFO] [stdout] test cap_xml_corpus_preserves_text_identity_and_projects_body ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s [INFO] [stdout] [INFO] [stderr] Running tests/corpus_generic_convective.rs (/opt/rustwide/target/debug/deps/corpus_generic_convective-673a60b4a74b7a21) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test severe_weather_statement_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test tornado_emergency_statement_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test severe_thunderstorm_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test tornado_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/corpus_generic_flood.rs (/opt/rustwide/target/debug/deps/corpus_generic_flood-06e097ae4fbc377c) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test flood_watch_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test flash_flood_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test flood_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test flood_statement_corpus_uses_vtec_event_body ... ok [INFO] [stderr] Running tests/corpus_generic_marine.rs (/opt/rustwide/target/debug/deps/corpus_generic_marine-a817064cf7fd9370) [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.27s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test special_marine_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test marine_weather_message_corpus_uses_vtec_event_body ... ok [INFO] [stderr] Running tests/corpus_generic_misc.rs (/opt/rustwide/target/debug/deps/corpus_generic_misc-a796eb0c1a86c2c2) [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.28s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test gateway_observations_corpus_uses_generic_body ... ok [INFO] [stdout] test tabular_state_forecast_corpus_uses_generic_body ... ok [INFO] [stdout] test regional_weather_roundup_corpus_uses_generic_body ... ok [INFO] [stdout] test airport_weather_warning_corpus_uses_generic_body ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/corpus_generic_non_precip.rs (/opt/rustwide/target/debug/deps/corpus_generic_non_precip-e6a89681d6f9257a) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test red_flag_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test non_precipitation_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test winter_weather_message_corpus_uses_vtec_event_body ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.38s [INFO] [stdout] [INFO] [stderr] Running tests/corpus_generic_public_alerts.rs (/opt/rustwide/target/debug/deps/corpus_generic_public_alerts-92fc6b3fb0ab9fec) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test snow_squall_warning_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test watch_county_notification_corpus_uses_vtec_event_body ... ok [INFO] [stdout] test special_weather_statement_corpus_preserves_generic_text_body ... ok [INFO] [stdout] test vtec_regression_corpus_keeps_text_products_classified ... ok [INFO] [stderr] Running tests/corpus_specialized_advisories.rs (/opt/rustwide/target/debug/deps/corpus_specialized_advisories-9162812fad342ddd) [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test cwa_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test saw_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test mcd_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test sel_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test wwp_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s [INFO] [stdout] [INFO] [stderr] Running tests/corpus_specialized_reports.rs (/opt/rustwide/target/debug/deps/corpus_specialized_reports-8697ef7dddb0613c) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test pirep_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test lsr_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test mos_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test cli_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.33s [INFO] [stdout] [INFO] [stderr] Running tests/corpus_specialized_structured.rs (/opt/rustwide/target/debug/deps/corpus_specialized_structured-d4703e07470d9966) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test dsm_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test cf6_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test ero_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] test hml_corpus_routes_to_structured_bulletins ... ok [INFO] [stderr] Running tests/corpus_wmo.rs (/opt/rustwide/target/debug/deps/corpus_wmo-d0b1c2c788d93204) [INFO] [stdout] test spc_outlook_corpus_routes_to_structured_bulletins ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.26s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test canadian_tornado_warning_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test canadian_tropical_cyclone_watch_warning_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test canadian_tropical_cyclone_public_information_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test canadian_storm_summary_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test canadian_severe_thunderstorm_warning_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test canadian_special_weather_statement_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test dcp_corpus_routes_to_wmo_bulletins ... ok [INFO] [stdout] test canadian_volcanic_ash_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] test sigmet_corpus_routes_to_wmo_bulletins ... ok [INFO] [stdout] test taf_corpus_routes_to_wmo_bulletins ... ok [INFO] [stdout] test fd_corpus_routes_to_wmo_bulletins ... ok [INFO] [stdout] test metar_corpus_routes_to_wmo_bulletins ... ok [INFO] [stderr] Running tests/vtec_hvtec_regressions.rs (/opt/rustwide/target/debug/deps/vtec_hvtec_regressions-fece0a8d5f63aa70) [INFO] [stdout] test canadian_tropical_cyclone_technical_discussion_corpus_routes_to_explicit_unsupported_family ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test parses_multi_segment_mwwajk_excerpt ... ok [INFO] [stdout] test parses_flsbou_sample_with_named_none_severity_and_rs_cause ... ok [INFO] [stdout] test parses_ffa_sample_with_experimental_vtec_and_zeroed_hvtec ... ok [INFO] [stdout] test parses_vtec_1970_sample_as_unspecified_begin ... ok [INFO] [stdout] test parses_flwlzk_sample_with_open_ended_vtec_and_hvtec ... ok [INFO] [stdout] test parses_cross_year_flslbf_sample ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emwin_protocol-2407fa5880543e0d) [INFO] [stdout] [INFO] [stdout] running 77 tests [INFO] [stdout] test ingest::model::tests::wxwire_file_converts_to_received_product ... ok [INFO] [stdout] test ingest::model::tests::qbt_completed_file_converts_to_received_product ... ok [INFO] [stdout] test qbt_receiver::client::runtime::runtime_tests::failed_pass_requires_trying_every_endpoint ... ok [INFO] [stdout] test ingest::wxwire_adapter::tests::adapter_maps_warning_events ... ok [INFO] [stdout] test ingest::wxwire_adapter::tests::adapter_maps_file_events_to_products ... ok [INFO] [stdout] test qbt_receiver::client::server_list_manager::tests::apply_server_list_rejects_empty_updates ... ok [INFO] [stdout] test qbt_receiver::client::runtime::runtime_tests::sync_active_servers_uses_normalized_endpoint_count ... ok [INFO] [stdout] test qbt_receiver::client::server_list_manager::tests::rotates_servers_in_sorted_deduplicated_order ... ok [INFO] [stdout] test qbt_receiver::client::server_list_manager::tests::endpoint_count_tracks_active_servers ... ok [INFO] [stdout] test qbt_receiver::client::tests::backpressure_drop_warning_reports_and_resets_window ... ok [INFO] [stdout] test qbt_receiver::client::tests::backpressure_drop_emits_warning_with_counters ... ok [INFO] [stdout] test qbt_receiver::client::tests::handler_error_isolated ... ok [INFO] [stdout] test ingest::qbt_adapter::tests::emits_warning_events ... ok [INFO] [stdout] test qbt_receiver::file::assembler::tests::inflight_entries_are_bounded ... ok [INFO] [stdout] test qbt_receiver::client::runtime::runtime_tests::successful_server_list_update_logs_and_updates_active_servers ... ok [INFO] [stdout] test qbt_receiver::client::watchdog::tests::watchdog_exception_limit ... ok [INFO] [stdout] test qbt_receiver::client::watchdog::tests::watchdog_timeout_and_data_reset ... ok [INFO] [stdout] test ingest::qbt_adapter::tests::emits_product_only_when_file_assembly_completes ... ok [INFO] [stdout] test qbt_receiver::file::assembler::tests::suppresses_duplicate_completed_files ... ok [INFO] [stdout] test qbt_receiver::file::assembler::tests::reconstructs_when_all_blocks_arrive ... ok [INFO] [stdout] test qbt_receiver::protocol::auth::tests::parse_logon_message_extracts_email ... ok [INFO] [stdout] test qbt_receiver::file::assembler::tests::skips_fillfile ... ok [INFO] [stdout] test qbt_receiver::protocol::auth::tests::parse_logon_message_rejects_invalid_shapes ... ok [INFO] [stdout] test qbt_receiver::protocol::checksum::tests::checksum_matches_reference ... ok [INFO] [stdout] test qbt_receiver::protocol::checksum::tests::checksum_negative_expected_is_invalid ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::fd_parse_failure_emits_warning_and_uses_fallback ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::checksum_strict_drop ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::fillfile_filtered ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::frame_type_waits_for_partial_prefix ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::invalid_server_list_utf8_recovers_and_decodes_next_frame ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::find_sync_recovers_after_garbage ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::oversized_server_list_recovers_and_decodes_next_frame ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::unknown_frame_resync ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::trim_padding_text_wmo ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::v1_checksum_masking ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::v2_header_gate ... ok [INFO] [stdout] test qbt_receiver::protocol::server_list::tests::server_list_simple_parse ... ok [INFO] [stdout] test qbt_receiver::protocol::server_list::tests::server_list_full_parse_ignores_satellite_entries ... ok [INFO] [stdout] test qbt_receiver::protocol::server_list_wire::tests::scanner_extracts_latest_complete_server_list_frame ... ok [INFO] [stdout] test qbt_receiver::protocol::server_list_wire::tests::build_server_list_wire_formats_expected_payload ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::v2_compressed_roundtrip ... ok [INFO] [stdout] test qbt_receiver::protocol::codec::tests::v2_decompress_failure_drops_segment_and_emits_warning ... ok [INFO] [stdout] test qbt_receiver::relay::state::tests::new_initializes_server_list_wire_and_quality_window_from_config ... ok [INFO] [stdout] test qbt_receiver::relay::tests::relay_config_normalization_applies_runtime_bounds ... ok [INFO] [stdout] test wxwire_receiver::client::tests::failed_backpressure_warning_send_counts_as_drop ... ok [INFO] [stdout] test qbt_receiver::file::assembler::tests::inflight_entries_expire_by_ttl ... ok [INFO] [stdout] test wxwire_receiver::client::tests::client_emits_file_frame_for_valid_message ... ok [INFO] [stdout] test wxwire_receiver::client::tests::handler_error_isolated ... ok [INFO] [stdout] test ingest::qbt_adapter::tests::adapter_filters_server_list_updates ... ok [INFO] [stdout] test wxwire_receiver::client::tests::unstable_raw_ingress_works ... ok [INFO] [stdout] test wxwire_receiver::codec::tests::decode_valid_stanza_to_file_event ... ok [INFO] [stdout] test wxwire_receiver::codec::tests::invalid_issue_timestamp_emits_fallback_warning ... ok [INFO] [stdout] test wxwire_receiver::codec::tests::trims_metadata_attributes_before_filename_build ... ok [INFO] [stdout] test wxwire_receiver::codec::tests::missing_nwws_payload_emits_warning ... ok [INFO] [stdout] test wxwire_receiver::config::tests::debug_redacts_password ... ok [INFO] [stdout] test wxwire_receiver::config::tests::validate_accepts_valid_config ... ok [INFO] [stdout] test wxwire_receiver::config::tests::validate_rejects_missing_credentials ... ok [INFO] [stdout] test wxwire_receiver::config::tests::validate_rejects_zero_write_timeout ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::add_default_client_ns_inserts_namespace_once ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::add_default_client_ns_keeps_child_namespace_and_adds_root_namespace ... ok [INFO] [stdout] test qbt_receiver::client::connection::tests::write_all_with_timeout_returns_timeout_error ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::append_with_read_limit_rejects_oversized_chunk ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::pop_next_top_level_element_handles_nested_self_closing_tag ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::pop_next_top_level_element_returns_features_from_same_buffer_as_stream_open ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::pop_next_top_level_element_returns_first_complete_match ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::pop_next_top_level_element_skips_stream_open_tag ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::room_join_presence_requires_room_and_nick_match ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::room_join_presence_without_xmlns_is_accepted ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::stanza_root_tag_name_recognizes_message_root ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::stanza_root_tag_name_recognizes_prefixed_features_without_local_xmlns ... ok [INFO] [stdout] test wxwire_receiver::transport::stanza::tests::supported_top_level_stanza_accepts_xmpp_roots_only ... ok [INFO] [stdout] test wxwire_receiver::codec::tests::decode_message_without_root_namespace ... ok [INFO] [stdout] test wxwire_receiver::client::tests::initial_connect_failure_retries_and_recovers ... ok [INFO] [stdout] test wxwire_receiver::client::tests::transport_error_emits_disconnected_and_reconnects ... ok [INFO] [stdout] test wxwire_receiver::transport::session::tests::write_all_with_timeout_returns_timeout_error ... ok [INFO] [stdout] test qbt_receiver::client::tests::stop_returns_shutdown_timeout_when_runtime_hangs ... ok [INFO] [stdout] test wxwire_receiver::client::tests::stop_returns_shutdown_timeout_when_transport_hangs ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 77 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s [INFO] [stdout] [INFO] [stderr] Running tests/qbt_receiver.rs (/opt/rustwide/target/debug/deps/qbt_receiver-e295701c29b31464) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test protocol_parity::checksum_mismatch_drops_invalid_frame_and_preserves_later_valid_frame ... ok [INFO] [stdout] test protocol_parity::corrupted_stream_recovers_and_keeps_following_valid_frame ... ok [INFO] [stdout] test protocol_parity::full_server_list_frame_ignores_satellite_entries ... ok [INFO] [stdout] test reconnect_failover::failed_endpoint_rotates_to_next_server_without_waiting_for_full_delay ... ok [INFO] [stdout] test reconnect_failover::watchdog_timeout_reconnects_without_termination ... ok [INFO] [stdout] test relay_contract::over_capacity_client_gets_server_list_then_disconnects ... ok [INFO] [stdout] test relay_contract::health_snapshot_reports_status_and_active_clients ... ok [INFO] [stdout] test relay_contract::slow_client_is_disconnected_when_buffer_budget_is_exceeded ... ok [INFO] [stdout] test protocol_prop::chunked_vs_single_feed_equivalence ... ok [INFO] [stdout] test protocol_prop::random_wire_input_never_panics ... ok [INFO] [stdout] test relay_contract::health_snapshot_reports_forwarding_paused_when_quality_drops ... ok [INFO] [stdout] test relay_contract::disconnects_client_without_periodic_reauth ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.05s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emwin_service-3c7bb9f71542df75) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test filter::shared::tests::input_validation_rejects_distance_without_coords ... ok [INFO] [stdout] test filter::shared::tests::input_validation_rejects_partial_bbox ... ok [INFO] [stderr] Doc-tests emwin_alert [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests emwin_api [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests emwin_db [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/emwin-db/src/lib.rs - (line 16) - compile ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] all doctests ran in 2.14s; merged doctests compilation took 2.14s [INFO] [stderr] Doc-tests emwin_live [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests emwin_parser [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/emwin-parser/src/lib.rs - (line 18) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.99s; merged doctests compilation took 0.95s [INFO] [stderr] Doc-tests emwin_protocol [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/emwin-protocol/src/lib.rs - (line 17) - compile ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] all doctests ran in 1.34s; merged doctests compilation took 1.33s [INFO] [stderr] Doc-tests emwin_service [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "32dc5be6f3cc3154cd2e3e9738e3eae5a653f161e2c56218d3cbf4c98d06e7c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32dc5be6f3cc3154cd2e3e9738e3eae5a653f161e2c56218d3cbf4c98d06e7c3", kill_on_drop: false }` [INFO] [stdout] 32dc5be6f3cc3154cd2e3e9738e3eae5a653f161e2c56218d3cbf4c98d06e7c3