[INFO] cloning repository https://github.com/JoeldelPilar/ritcher
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/JoeldelPilar/ritcher" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJoeldelPilar%2Fritcher", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJoeldelPilar%2Fritcher'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 529c606582476c74235dbc53b949b264495e03b6
[INFO] testing JoeldelPilar/ritcher against beta-2026-04-21 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJoeldelPilar%2Fritcher" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-2-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/JoeldelPilar/ritcher
[INFO] finished tweaking git repo https://github.com/JoeldelPilar/ritcher
[INFO] tweaked toml for git repo https://github.com/JoeldelPilar/ritcher written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/JoeldelPilar/ritcher 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/JoeldelPilar/ritcher 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-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bbf2d1145208ed63d9956985b51efb768321790e09b8f44f672e05a2963565b2
[INFO] running `Command { std: "docker" "start" "-a" "bbf2d1145208ed63d9956985b51efb768321790e09b8f44f672e05a2963565b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bbf2d1145208ed63d9956985b51efb768321790e09b8f44f672e05a2963565b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bbf2d1145208ed63d9956985b51efb768321790e09b8f44f672e05a2963565b2", kill_on_drop: false }`
[INFO] [stdout] bbf2d1145208ed63d9956985b51efb768321790e09b8f44f672e05a2963565b2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 87a745fe152933d661b38f4d78fb23603ebe812364215582a32c065773acb422
[INFO] running `Command { std: "docker" "start" "-a" "87a745fe152933d661b38f4d78fb23603ebe812364215582a32c065773acb422", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.5
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling slab v0.4.11
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling tracing-core v0.1.34
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling mio v1.1.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling cc v1.2.46
[INFO] [stderr]    Compiling http v1.3.1
[INFO] [stderr]    Compiling writeable v0.6.2
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling litemap v0.8.1
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling icu_properties_data v2.1.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling aws-lc-sys v0.37.1
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling indexmap v2.12.0
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling ipnet v2.11.0
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling rustls-pki-types v1.13.0
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling foreign-types v0.3.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling ebml-iterable-specification v0.4.0
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling openssl-probe v0.1.6
[INFO] [stderr]    Compiling fs-err v3.3.0
[INFO] [stderr]    Compiling raw-cpuid v11.6.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling ebml-iterable-specification-derive v0.4.0
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.1
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling tinyvec v1.10.0
[INFO] [stderr]    Compiling enum-as-inner v0.6.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling ebml-iterable v0.6.3
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tokio-util v0.7.17
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling metrics v0.24.3
[INFO] [stderr]    Compiling serde_with_macros v3.16.1
[INFO] [stderr]    Compiling quanta v0.12.6
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling uuid v1.21.0
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling rand_xoshiro v0.7.0
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling iri-string v0.7.9
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling tagptr v0.2.0
[INFO] [stderr]    Compiling data-encoding v2.10.0
[INFO] [stderr]    Compiling sketches-ddsketch v0.3.0
[INFO] [stderr]    Compiling moka v0.12.14
[INFO] [stderr]    Compiling metrics-util v0.19.1
[INFO] [stderr]    Compiling hickory-proto v0.25.2
[INFO] [stderr]    Compiling hyper v1.8.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling serde_with v3.16.1
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling webm-iterable v0.6.4
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling iso8601 v0.6.3
[INFO] [stderr]    Compiling axum-core v0.5.5
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling base64-serde v0.8.0
[INFO] [stderr]    Compiling matchit v0.8.4
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling hxdmp v0.2.1
[INFO] [stderr]    Compiling resolv-conf v0.7.6
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling dash-mpd v0.17.4
[INFO] [stderr]    Compiling tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling hickory-resolver v0.25.2
[INFO] [stderr]    Compiling reqwest v0.12.24
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling axum v0.8.6
[INFO] [stderr]    Compiling m3u8-rs v6.0.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.8
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling metrics-exporter-prometheus v0.16.2
[INFO] [stderr]    Compiling ritcher v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 08s
[INFO] running `Command { std: "docker" "inspect" "87a745fe152933d661b38f4d78fb23603ebe812364215582a32c065773acb422", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "87a745fe152933d661b38f4d78fb23603ebe812364215582a32c065773acb422", kill_on_drop: false }`
[INFO] [stdout] 87a745fe152933d661b38f4d78fb23603ebe812364215582a32c065773acb422
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d2b6d658cb3002d5a2f28284a3bbb4b4ee09fa570e54f8af36771e0c71846364
[INFO] running `Command { std: "docker" "start" "-a" "d2b6d658cb3002d5a2f28284a3bbb4b4ee09fa570e54f8af36771e0c71846364", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling zerocopy-derive v0.8.39
[INFO] [stderr]    Compiling hyper v1.8.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling clap_builder v4.5.58
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling m3u8-rs v6.0.0
[INFO] [stderr]    Compiling dash-mpd v0.17.4
[INFO] [stderr]    Compiling clap v4.5.58
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling axum v0.8.6
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling reqwest v0.12.24
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling metrics v0.24.3
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling hickory-proto v0.25.2
[INFO] [stderr]    Compiling metrics-util v0.19.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling metrics-exporter-prometheus v0.16.2
[INFO] [stderr]    Compiling hickory-resolver v0.25.2
[INFO] [stderr]    Compiling ritcher v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 11s
[INFO] running `Command { std: "docker" "inspect" "d2b6d658cb3002d5a2f28284a3bbb4b4ee09fa570e54f8af36771e0c71846364", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2b6d658cb3002d5a2f28284a3bbb4b4ee09fa570e54f8af36771e0c71846364", kill_on_drop: false }`
[INFO] [stdout] d2b6d658cb3002d5a2f28284a3bbb4b4ee09fa570e54f8af36771e0c71846364
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 751305a1f9f1c859efafd11110d9f0f6a32a6ec8ad788e19d6cb014de894b153
[INFO] running `Command { std: "docker" "start" "-a" "751305a1f9f1c859efafd11110d9f0f6a32a6ec8ad788e19d6cb014de894b153", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.52s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ritcher-9de790ca95a9d17d)
[INFO] [stdout] 
[INFO] [stdout] running 328 tests
[INFO] [stdout] test ad::conditioning::tests::test_check_creative_hls_no_warnings ... ok
[INFO] [stdout] test ad::conditioning::tests::test_hls_mime_detection ... ok
[INFO] [stdout] test ad::conditioning::tests::test_progressive_mime_detection ... ok
[INFO] [stdout] test ad::interleaver::tests::test_interleave_single_ad_break ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_cycling ... ok
[INFO] [stdout] test ad::interleaver::tests::test_interleave_no_ad_breaks ... ok
[INFO] [stdout] test ad::conditioning::tests::test_check_creative_progressive_warns ... ok
[INFO] [stdout] test ad::interleaver::tests::test_interleave_multiple_ad_breaks ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_dash_audio_segment ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_dash_audio_init ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_dash_different_breaks_use_different_segments ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_dash_video_audio_init_differ ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_dash_video_init ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_dash_video_segment ... ok
[INFO] [stdout] test ad::conditioning::tests::test_check_creative_nonstandard_resolution ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_get_segments ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_per_break_routing ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_parse_dash_init ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_parse_hls_name ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_parse_dash_segment ... ok
[INFO] [stdout] test ad::provider::tests::test_demo_ad_provider_segment_cycling ... ok
[INFO] [stdout] test ad::provider::tests::test_resolve_segment_url ... ok
[INFO] [stdout] test ad::provider::tests::test_static_ad_provider_exact_duration ... ok
[INFO] [stdout] test ad::provider::tests::test_parse_segment_index ... ok
[INFO] [stdout] test ad::provider::tests::test_static_ad_provider_partial_duration ... ok
[INFO] [stdout] test ad::provider::tests::test_static_ad_provider_min_one_segment ... ok
[INFO] [stdout] test ad::slate::tests::test_fill_duration_partial ... ok
[INFO] [stdout] test ad::slate::tests::test_resolve_segment_url ... ok
[INFO] [stdout] test ad::slate::tests::test_resolve_segment_url_invalid ... ok
[INFO] [stdout] test ad::provider::tests::test_static_ad_provider_zero_duration ... ok
[INFO] [stdout] test ad::tracking::tests::test_complete_on_last_segment ... ok
[INFO] [stdout] test ad::tracking::tests::test_first_quartile ... ok
[INFO] [stdout] test ad::slate::tests::test_fill_duration_exact ... ok
[INFO] [stdout] test ad::tracking::tests::test_midpoint ... ok
[INFO] [stdout] test ad::slate::tests::test_fill_duration_minimum_one ... ok
[INFO] [stdout] test ad::tracking::tests::test_no_events_for_empty_tracking ... ok
[INFO] [stdout] test ad::slate::tests::test_ad_provider_trait ... ok
[INFO] [stdout] test ad::tracking::tests::test_single_segment_fires_all_events ... ok
[INFO] [stdout] test ad::tracking::tests::test_start_event_on_first_segment ... ok
[INFO] [stdout] test ad::tracking::tests::test_third_quartile ... ok
[INFO] [stdout] test ad::tracking::tests::test_three_segments_fires_all_quartiles ... ok
[INFO] [stdout] test ad::tracking::tests::test_two_segments_fires_all_quartiles ... ok
[INFO] [stdout] test ad::vast::helpers::tests::select_best_media_file_highest_bitrate_fallback ... ok
[INFO] [stdout] test ad::tracking::tests::test_zero_total_segments ... ok
[INFO] [stdout] test ad::vast::helpers::tests::invalid_duration_formats ... ok
[INFO] [stdout] test ad::vast::helpers::tests::select_best_media_file_empty_list ... ok
[INFO] [stdout] test ad::vast::helpers::tests::test_select_best_media_file_fallback_mp4 ... ok
[INFO] [stdout] test ad::vast::helpers::tests::test_parse_duration ... ok
[INFO] [stdout] test ad::vast::helpers::tests::test_select_best_media_file_prefers_hls ... ok
[INFO] [stdout] test ad::vast::parser::tests::cdata_in_vast_ad_tag_uri ... ok
[INFO] [stdout] test ad::vast::parser::tests::empty_vast_body ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_empty_ad_verifications ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_empty_vast ... ok
[INFO] [stdout] test ad::vast::parser::tests::ad_without_inline_or_wrapper_skipped ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_inline_ad ... ok
[INFO] [stdout] test ad::vast::parser::tests::malformed_xml_returns_error ... ok
[INFO] [stdout] test ad::vast::parser::tests::missing_media_files_produces_empty_creative ... ok
[INFO] [stdout] test ad::vast::parser::tests::multiple_ads_all_parsed ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_verification_without_optional_fields ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_inline_with_ad_verifications ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_inline_without_verifications ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_verification_cdata_in_parameters ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_verification_multiple_tracking_events ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_wrapper_ad ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_wrapper_with_verifications ... ok
[INFO] [stdout] test ad::vast::parser::tests::whitespace_around_urls_trimmed ... ok
[INFO] [stdout] test ad::vast::parser::tests::xxe_entity_expansion_ignored ... ok
[INFO] [stdout] test ad::vast::parser::tests::test_parse_wrapper_without_verifications ... ok
[INFO] [stdout] test ad::vast_provider::fetch::tests::test_wrapper_verification_accumulation ... ok
[INFO] [stdout] test ad::vast_provider::fetch::tests::test_wrapper_tracking_merge ... ok
[INFO] [stdout] test ad::vast_provider::fetch::tests::test_multi_level_wrapper_verification_accumulation ... ok
[INFO] [stdout] test ad::conditioning::tests::test_check_creatives_counts_warnings ... ok
[INFO] [stdout] test ad::vast_provider::tests::get_ad_segments_fetches_vast_and_caches ... ok
[INFO] [stdout] test ad::vast_provider::tests::get_ad_segments_multi_break_uses_unique_indices ... ok
[INFO] [stdout] test ad::vast_provider::cache::tests::cleanup_cache_evicts_old_entries ... ok
[INFO] [stdout] test ad::vast_provider::tests::get_ad_creatives_without_verifications ... ok
[INFO] [stdout] test ad::vast_provider::tests::test_cache_key ... ok
[INFO] [stdout] test ad::vast_provider::cache::tests::cache_insert_succeeds_under_capacity ... ok
[INFO] [stdout] test ad::vast_provider::cache::tests::cleanup_cache_also_removes_stale_break_counters ... ok
[INFO] [stdout] test ad::vast_provider::tests::get_ad_creatives_includes_verifications ... ok
[INFO] [stdout] test cache::tests::cache_hit_within_ttl ... ok
[INFO] [stdout] test cache::tests::cache_miss_for_unknown_url ... ok
[INFO] [stdout] test cache::tests::cache_overwrite_refreshes_entry ... ok
[INFO] [stdout] test cache::tests::custom_ttl_via_with_ttl ... ok
[INFO] [stdout] test cache::tests::len_and_is_empty ... ok
[INFO] [stdout] test config::tests::ad_segment_duration_parsed ... ok
[INFO] [stdout] test config::tests::dev_mode_uses_defaults ... ok
[INFO] [stdout] test config::tests::explicit_static_overrides_vast_endpoint ... ok
[INFO] [stdout] test config::tests::manifest_cache_ttl_custom_value ... ok
[INFO] [stdout] test config::tests::manifest_cache_ttl_defaults_to_2000 ... ok
[INFO] [stdout] test config::tests::prod_mode_requires_base_url ... ok
[INFO] [stdout] test config::tests::prod_mode_requires_origin_url ... ok
[INFO] [stdout] test config::tests::prod_mode_requires_port ... ok
[INFO] [stdout] test config::tests::rate_limit_disabled_defaults_to_zero ... ok
[INFO] [stdout] test config::tests::session_store_defaults_to_memory ... ok
[INFO] [stdout] test config::tests::session_store_redis_alias ... ok
[INFO] [stdout] test config::tests::session_store_valkey ... ok
[INFO] [stdout] test config::tests::session_ttl_parsed ... ok
[INFO] [stdout] test config::tests::stitching_mode_defaults_to_ssai ... ok
[INFO] [stdout] test config::tests::stitching_mode_sgai ... ok
[INFO] [stdout] test config::tests::vast_auto_detect_from_endpoint ... ok
[INFO] [stdout] test config::tests::vast_explicit_without_endpoint_still_selects_vast ... ok
[INFO] [stdout] test config::tests::vast_fallback_to_static_when_no_endpoint ... ok
[INFO] [stdout] test dash::cue::tests::test_accept_max_valid_duration ... ok
[INFO] [stdout] test cache::tests::cache_miss_after_ttl ... ok
[INFO] [stdout] test dash::cue::tests::test_detect_ad_breaks_multiperiod ... ok
[INFO] [stdout] test dash::cue::tests::test_is_scte35_scheme ... ok
[INFO] [stdout] test dash::cue::tests::test_detect_ad_breaks_eventstream ... ok
[INFO] [stdout] test dash::cue::tests::test_skip_excessive_duration ... ok
[INFO] [stdout] test dash::cue::tests::test_skip_negative_presentation_time_via_overflow ... ok
[INFO] [stdout] test dash::cue::tests::test_skip_zero_duration ... ok
[INFO] [stdout] test dash::cue::tests::test_timescale_conversion ... ok
[INFO] [stdout] test dash::cue::tests::test_no_ad_breaks_in_segmenttemplate ... ok
[INFO] [stdout] test dash::interleaver::tests::test_ad_period_fallback_when_no_content_adaptations ... ok
[INFO] [stdout] test dash::interleaver::tests::test_ad_period_has_initialization_and_timing ... ok
[INFO] [stdout] test dash::interleaver::tests::test_ad_period_mirrors_video_and_audio_adaptation_sets ... ok
[INFO] [stdout] test dash::interleaver::tests::test_ad_period_preserves_lang_attribute ... ok
[INFO] [stdout] test dash::interleaver::tests::test_ad_period_segment_urls ... ok
[INFO] [stdout] test dash::interleaver::tests::test_ad_period_track_specific_urls ... ok
[INFO] [stdout] test dash::interleaver::tests::test_interleave_empty_ad_segments ... ok
[INFO] [stdout] test dash::interleaver::tests::test_interleave_multiple_ad_breaks ... ok
[INFO] [stdout] test dash::interleaver::tests::test_interleave_no_ad_breaks ... ok
[INFO] [stdout] test dash::interleaver::tests::test_interleave_preserves_content_periods ... ok
[INFO] [stdout] test dash::interleaver::tests::test_interleave_single_ad_break ... ok
[INFO] [stdout] test dash::parser::tests::test_adaptation_set_template_rewritten_once_with_multi_repr ... ok
[INFO] [stdout] test dash::parser::tests::test_compose_url_no_double_slashes ... ok
[INFO] [stdout] test dash::parser::tests::test_hierarchical_base_url_resolution ... ok
[INFO] [stdout] test dash::interleaver::tests::test_ad_period_copies_codec_info ... ok
[INFO] [stdout] test ad::vast_provider::cache::tests::cache_insert_rejected_at_capacity ... ok
[INFO] [stdout] test dash::parser::tests::test_parse_invalid_mpd ... ok
[INFO] [stdout] test dash::parser::tests::test_parse_eventstream_mpd ... ok
[INFO] [stdout] test dash::parser::tests::test_rewrite_multiple_adaptation_sets ... ok
[INFO] [stdout] test ad::vast_provider::tests::resolve_segment_url_finds_cached_entry ... ok
[INFO] [stdout] test dash::sgai::tests::test_callback_url_format ... ok
[INFO] [stdout] test dash::sgai::tests::test_empty_ad_breaks_noop ... ok
[INFO] [stdout] test ad::vast_provider::tests::resolve_segment_url_returns_none_for_unknown ... ok
[INFO] [stdout] test dash::sgai::tests::test_inject_multiple_breaks_same_period ... ok
[INFO] [stdout] test dash::parser::tests::test_rewrite_segment_template_urls ... ok
[INFO] [stdout] test dash::sgai::tests::test_inject_single_callback ... ok
[INFO] [stdout] test ad::vast_provider::tests::with_slate_configures_slate_provider ... ok
[INFO] [stdout] test dash::sgai::tests::test_strip_preserves_callback_eventstream ... ok
[INFO] [stdout] test dash::sgai::tests::test_strip_scte35_event_streams ... ok
[INFO] [stdout] test dash::sgai::tests::test_no_ad_periods_inserted ... ok
[INFO] [stdout] test error::tests::internal_error_returns_500_generic ... ok
[INFO] [stdout] test error::tests::invalid_origin_returns_400 ... ok
[INFO] [stdout] test error::tests::invalid_session_id_does_not_leak_user_input ... ok
[INFO] [stdout] test error::tests::invalid_session_returns_400 ... ok
[INFO] [stdout] test error::tests::mpd_parse_error_returns_422 ... ok
[INFO] [stdout] test error::tests::origin_fetch_error_display_not_sent_to_client ... ok
[INFO] [stdout] test error::tests::playlist_parse_error_returns_422 ... ok
[INFO] [stdout] test error::tests::response_too_large_does_not_leak_details ... ok
[INFO] [stdout] test error::tests::response_too_large_returns_502 ... ok
[INFO] [stdout] test dash::parser::tests::test_parse_and_serialize_roundtrip ... ok
[INFO] [stdout] test hls::cue::tests::test_detect_ad_breaks_simple ... ok
[INFO] [stdout] test hls::cue::tests::test_detect_multiple_ad_breaks ... ok
[INFO] [stdout] test hls::cue::tests::test_detect_with_cue_out_cont ... ok
[INFO] [stdout] test hls::cue::tests::test_detect_unclosed_ad_break ... ok
[INFO] [stdout] test hls::cue::tests::test_is_cue_in ... ok
[INFO] [stdout] test hls::cue::tests::test_is_in_ad_break ... ok
[INFO] [stdout] test hls::cue::tests::test_parse_cue_out_invalid ... ok
[INFO] [stdout] test hls::cue::tests::test_parse_cue_out_legacy ... ok
[INFO] [stdout] test hls::cue::tests::test_parse_cue_out_simple ... ok
[INFO] [stdout] test hls::cue::tests::test_parse_cue_out_with_duration_key ... ok
[INFO] [stdout] test hls::interstitial::tests::asset_list_url_format ... ok
[INFO] [stdout] test hls::interstitial::tests::compute_pdt_at_accumulates_correctly ... ok
[INFO] [stdout] test dash::sgai::tests::test_inject_multiple_callbacks_different_periods ... ok
[INFO] [stdout] test hls::interstitial::tests::ensure_pdt_synthesizes_when_missing ... ok
[INFO] [stdout] test hls::interstitial::tests::daterange_has_correct_x_attributes ... ok
[INFO] [stdout] test hls::interstitial::tests::inject_multiple_interstitials ... ok
[INFO] [stdout] test hls::interstitial::tests::inject_removes_cue_tags ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_extract_all_tags ... ok
[INFO] [stdout] test hls::interstitial::tests::ensure_pdt_preserves_existing ... ok
[INFO] [stdout] test hls::interstitial::tests::inject_single_interstitial ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_extract_quoted_uri_basic ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_extract_preserves_full_line ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_extract_quoted_uri_with_attributes_after ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_extract_with_skip ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_full_roundtrip ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_inject_after_targetduration ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_inject_empty_tags_noop ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_is_ll_hls_regular_hls ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_is_ll_hls_with_part_tag ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_is_ll_hls_with_server_control ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_rewrite_preload_hint ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_rewrite_rendition_report ... ok
[INFO] [stdout] test hls::parser::tests::test_parse_and_serialize_roundtrip ... ok
[INFO] [stdout] test hls::parser::tests::test_rewrite_master_urls_absolute ... ok
[INFO] [stdout] test hls::parser::tests::test_rewrite_master_urls_adds_track_param_for_subtitles ... ok
[INFO] [stdout] test hls::parser::tests::test_rewrite_master_urls_no_track_param_for_video_variants ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_passthrough_non_ll_hls_lines ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_rewrite_part_uris ... ok
[INFO] [stdout] test hls::parser::tests::test_rewrite_master_urls_with_alternatives ... ok
[INFO] [stdout] test http_retry::tests::max_attempts_zero_treated_as_one ... ok
[INFO] [stdout] test http_retry::tests::retry_config_custom ... ok
[INFO] [stdout] test http_retry::tests::retry_config_defaults ... ok
[INFO] [stdout] test http_retry::tests::retry_config_is_clone ... ok
[INFO] [stdout] test http_retry::tests::retry_config_is_debug ... ok
[INFO] [stdout] test hls::ll_hls::tests::test_rewrite_absolute_uri ... ok
[INFO] [stdout] test hls::parser::tests::test_rewrite_master_urls_relative ... ok
[INFO] [stdout] test dash::parser::tests::test_parse_multiperiod_mpd ... ok
[INFO] [stdout] test server::dns_resolver::tests::allows_ipv4_mapped_public ... ok
[INFO] [stdout] test server::dns_resolver::tests::allows_public_ipv4 ... ok
[INFO] [stdout] test server::dns_resolver::tests::allows_public_ipv6 ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_cloud_metadata_endpoint ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_ipv4_mapped_loopback ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_ipv4_mapped_private ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_ipv6_link_local ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_ipv6_loopback ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_ipv6_unique_local ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_loopback_ipv4 ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_rfc1918_10 ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_rfc1918_172 ... ok
[INFO] [stdout] test server::dns_resolver::tests::blocks_rfc1918_192_168 ... ok
[INFO] [stdout] test server::dns_resolver::tests::resolver_allows_public_domain ... ignored
[INFO] [stdout] test server::dns_resolver::tests::resolver_handles_nonexistent_domain ... ignored
[INFO] [stdout] test server::handlers::asset_list::tests::test_asset_list_json_verification_skips_none_fields ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_asset_list_json_with_verifications ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_asset_list_json_without_verifications ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_dur_rejects_exceeding_max ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_dur_rejects_infinity ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_dur_rejects_nan ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_dur_rejects_negative ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_dur_rejects_non_numeric ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_dur_valid_values ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_verification_dedup_by_equality ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_verification_output_from_minimal_verification ... ok
[INFO] [stdout] test server::handlers::asset_list::tests::test_verification_output_from_verification ... ok
[INFO] [stdout] test server::handlers::demo::dash::tests::test_build_demo_mpd_five_breaks ... ok
[INFO] [stdout] test server::handlers::demo::dash::tests::test_build_demo_mpd_has_init_segments ... ok
[INFO] [stdout] test server::handlers::demo::dash::tests::test_build_demo_mpd_segment_start_numbers_increment ... ok
[INFO] [stdout] test server::handlers::demo::dash::tests::test_build_demo_mpd_segment_urls_are_fmp4 ... ok
[INFO] [stdout] test server::handlers::demo::dash::tests::test_build_demo_mpd_single_break ... ok
[INFO] [stdout] test server::handlers::demo::hls::tests::test_build_demo_hls_five_breaks_30s ... ok
[INFO] [stdout] test server::handlers::demo::hls::tests::test_build_demo_hls_segment_urls_are_valid ... ok
[INFO] [stdout] test server::handlers::demo::hls::tests::test_build_demo_hls_single_break ... ok
[INFO] [stdout] test server::handlers::demo::hls::tests::test_build_demo_ll_hls_has_ll_hls_tags ... ok
[INFO] [stdout] test server::handlers::demo::hls::tests::test_build_demo_ll_hls_multiple_breaks ... ok
[INFO] [stdout] test server::handlers::demo::hls::tests::test_build_demo_ll_hls_no_endlist ... ok
[INFO] [stdout] test server::handlers::demo::hls::tests::test_build_demo_ll_hls_partial_segment_structure ... ok
[INFO] [stdout] test server::handlers::demo::tests::test_demo_params_clamping ... ok
[INFO] [stdout] test server::handlers::demo::tests::test_demo_params_defaults ... ok
[INFO] [stdout] test server::handlers::playlist::tests::append_ll_hls_params_existing_query ... ok
[INFO] [stdout] test server::handlers::playlist::tests::append_ll_hls_params_ignores_non_hls ... ok
[INFO] [stdout] test server::handlers::playlist::tests::append_ll_hls_params_no_params ... ok
[INFO] [stdout] test server::handlers::playlist::tests::append_ll_hls_params_with_msn ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_accepts_max_value ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_accepts_valid_values ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_accepts_zero ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_empty_is_ok ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_ignores_other_params ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_rejects_exceeding_max ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_rejects_negative_values ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_rejects_non_numeric_msn ... ok
[INFO] [stdout] test server::handlers::playlist::tests::validate_ll_hls_params_rejects_non_numeric_part ... ok
[INFO] [stdout] test server::handlers::segment::tests::allows_dot_dot_in_filename ... ok
[INFO] [stdout] test server::handlers::segment::tests::allows_normal_segment_paths ... ok
[INFO] [stdout] test server::handlers::segment::tests::allows_single_dot_in_path ... ok
[INFO] [stdout] test server::handlers::segment::tests::hex_val_digits ... ok
[INFO] [stdout] test server::handlers::segment::tests::percent_decode_basic ... ok
[INFO] [stdout] test server::handlers::segment::tests::percent_decode_invalid_sequence ... ok
[INFO] [stdout] test server::handlers::segment::tests::percent_decode_passthrough ... ok
[INFO] [stdout] test server::handlers::segment::tests::rejects_double_percent_encoded_dot_dot ... ok
[INFO] [stdout] test server::handlers::segment::tests::rejects_encoded_dot_dot ... ok
[INFO] [stdout] test server::handlers::segment::tests::rejects_literal_dot_dot ... ok
[INFO] [stdout] test server::handlers::segment::tests::rejects_single_percent_encoded_dot_dot ... ok
[INFO] [stdout] test server::handlers::segment::tests::rejects_triple_percent_encoded_dot_dot ... ok
[INFO] [stdout] test server::rate_limit::tests::allows_requests_under_limit ... ok
[INFO] [stdout] test server::rate_limit::tests::blocks_requests_over_limit ... ok
[INFO] [stdout] test server::rate_limit::tests::cleanup_removes_stale_entries ... ok
[INFO] [stdout] test server::rate_limit::tests::different_ips_have_separate_limits ... ok
[INFO] [stdout] test server::rate_limit::tests::window_resets_after_expiry ... ok
[INFO] [stdout] test server::url_validation::tests::test_allows_https_with_path_and_query ... ok
[INFO] [stdout] test server::url_validation::tests::test_allows_ipv4_mapped_public ... ok
[INFO] [stdout] test server::url_validation::tests::test_allows_public_hostname ... ok
[INFO] [stdout] test server::url_validation::tests::test_allows_public_ipv4 ... ok
[INFO] [stdout] test server::url_validation::tests::test_boundary_172_15_not_blocked ... ok
[INFO] [stdout] test server::url_validation::tests::test_boundary_172_32_not_blocked ... ok
[INFO] [stdout] test server::url_validation::tests::test_boundary_cgnat_100_128_allowed ... ok
[INFO] [stdout] test server::url_validation::tests::test_boundary_cgnat_100_63_allowed ... ok
[INFO] [stdout] test server::url_validation::tests::test_error_message_does_not_leak_ip ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_benchmarking_198_18 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_cgnat_100_64 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_class_e_240 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_empty_url ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_file_scheme ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ftp_scheme ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_garbage ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_gopher_scheme ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ietf_192_0_0 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv4_mapped_loopback ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv4_mapped_metadata ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv4_mapped_private ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv6_documentation ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv6_link_local ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv6_loopback ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv6_unique_local ... ok
[INFO] [stdout] test ad::vast_provider::tests::resolve_segment_with_tracking_dedup ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_link_local_metadata ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_localhost_127 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_no_scheme ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_rfc1918_10 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_ipv6_unspecified ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_rfc1918_172 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_rfc1918_192_168 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_test_net_1 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_test_net_2 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_zero_network ... ok
[INFO] [stdout] test server::url_validation::tests::test_session_id_empty ... ok
[INFO] [stdout] test server::url_validation::tests::test_session_id_exact_boundary_64 ... ok
[INFO] [stdout] test server::url_validation::tests::test_rejects_test_net_3 ... ok
[INFO] [stdout] test server::url_validation::tests::test_session_id_special_chars ... ok
[INFO] [stdout] test server::url_validation::tests::test_session_id_too_long_65 ... ok
[INFO] [stdout] test server::url_validation::tests::test_session_id_unicode ... ok
[INFO] [stdout] test server::url_validation::tests::test_valid_session_id ... ok
[INFO] [stdout] test session::manager::tests::get_nonexistent_returns_none ... ok
[INFO] [stdout] test session::manager::tests::get_or_create_returns_existing_session ... ok
[INFO] [stdout] test session::manager::tests::remove_nonexistent_returns_none ... ok
[INFO] [stdout] test session::manager::tests::session_count_empty ... ok
[INFO] [stdout] test session::manager::tests::test_session_creation ... ok
[INFO] [stdout] test session::manager::tests::test_session_removal ... ok
[INFO] [stdout] test session::manager::tests::test_session_touch ... ok
[INFO] [stdout] test session::manager::tests::cleanup_expired_removes_stale_sessions ... ok
[INFO] [stdout] test http_retry::tests::retries_on_server_error_then_succeeds ... ok
[INFO] [stdout] test http_retry::tests::returns_error_after_all_retries_exhausted ... ok
[INFO] [stdout] test ad::vast_provider::tests::test_resolve_endpoint_macros ... ok
[INFO] [stdout] test http_retry::tests::single_attempt_no_retry ... ok
[INFO] [stdout] test error::tests::origin_fetch_error_returns_502 ... ok
[INFO] [stdout] test http_retry::tests::succeeds_on_first_attempt ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 326 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 1.74s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ritcher-2062f1db01d6106b)
[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]      Running tests/e2e.rs (/opt/rustwide/target/debug/deps/e2e-ef8511a45061c97b)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test dash_stitch_pipeline ... ok
[INFO] [stdout] test hls_stitch_pipeline ... ok
[INFO] [stdout] test demo_ll_hls_playlist ... ok
[INFO] [stdout] test demo_hls_playlist ... ok
[INFO] [stdout] test demo_dash_manifest ... ok
[INFO] [stdout] test dash_sgai_callback_eventstream ... ok
[INFO] [stdout] test dash_ssai_mode_unchanged ... ok
[INFO] [stdout] test health_check ... ok
[INFO] [stdout] test rate_limiting_blocks_excessive_requests ... ok
[INFO] [stdout] test invalid_session_id_no_xss_reflection ... ok
[INFO] [stdout] test ll_hls_sgai_rewrites_uris ... ok
[INFO] [stdout] test origin_5xx_returns_502 ... ok
[INFO] [stdout] test ll_hls_sgai_preserves_playlist_tags ... ok
[INFO] [stdout] test sgai_asset_list_endpoint ... ok
[INFO] [stdout] test regular_hls_unaffected_by_ll_hls ... ok
[INFO] [stdout] test ssai_mode_unchanged ... ok
[INFO] [stdout] test sgai_hls_interstitials ... ok
[INFO] [stdout] test origin_timeout_returns_502 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.14s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/handlers.rs (/opt/rustwide/target/debug/deps/handlers-70a6b04bf2bde534)
[INFO] [stdout] 
[INFO] [stdout] running 43 tests
[INFO] [stdout] test asset_list_no_verifications_field_when_empty ... ok
[INFO] [stdout] test ad_handler_invalid_session_id_returns_400 ... ok
[INFO] [stdout] test demo_dash_returns_valid_mpd ... ok
[INFO] [stdout] test asset_list_invalid_session_id_returns_400 ... ok
[INFO] [stdout] test asset_list_missing_dur_defaults_to_30s ... ok
[INFO] [stdout] test ad_handler_unknown_ad_name_returns_500 ... ok
[INFO] [stdout] test asset_list_valid_session_returns_200_with_json ... ok
[INFO] [stdout] test all_responses_include_version_header ... ok
[INFO] [stdout] test demo_hls_returns_valid_m3u8 ... ok
[INFO] [stdout] test health_returns_200_with_json ... ok
[INFO] [stdout] test manifest_origin_404_returns_502 ... ok
[INFO] [stdout] test manifest_invalid_session_id_returns_400 ... ok
[INFO] [stdout] test manifest_origin_500_returns_502 ... ok
[INFO] [stdout] test manifest_oversized_chunked_body_returns_502 ... ok
[INFO] [stdout] test manifest_session_id_too_long_returns_400 ... ok
[INFO] [stdout] test manifest_invalid_mpd_body_returns_422 ... ok
[INFO] [stdout] test manifest_ssai_mode_inserts_ad_periods ... ok
[INFO] [stdout] test manifest_sgai_mode_injects_callback_eventstream ... ok
[INFO] [stdout] test playlist_invalid_session_id_returns_400 ... ok
[INFO] [stdout] test playlist_empty_session_id_not_routed ... ok
[INFO] [stdout] test manifest_oversized_content_length_returns_502 ... ok
[INFO] [stdout] test origin_error_body_does_not_leak_origin_url ... ok
[INFO] [stdout] test playlist_body_under_limit_is_accepted ... ok
[INFO] [stdout] test manifest_valid_origin_returns_200_with_dash_content_type ... ok
[INFO] [stdout] test playlist_invalid_m3u8_body_returns_422 ... ok
[INFO] [stdout] test playlist_origin_500_returns_502 ... ok
[INFO] [stdout] test playlist_non_utf8_body_returns_422 ... ok
[INFO] [stdout] test playlist_oversized_chunked_body_returns_502 ... ok
[INFO] [stdout] test playlist_session_id_too_long_returns_400 ... ok
[INFO] [stdout] test playlist_origin_404_returns_502 ... ok
[INFO] [stdout] test playlist_session_id_with_slash_returns_404_not_matched ... ok
[INFO] [stdout] test playlist_origin_502_returns_502 ... ok
[INFO] [stdout] test root_path_returns_health ... ok
[INFO] [stdout] test playlist_sgai_mode_injects_daterange_tags ... ok
[INFO] [stdout] test playlist_ssai_mode_interleaves_ad_segments ... ok
[INFO] [stdout] test rate_limiter_blocks_after_limit ... ok
[INFO] [stdout] test segment_invalid_session_id_returns_400 ... ok
[INFO] [stdout] test playlist_oversized_content_length_returns_502 ... ok
[INFO] [stdout] test segment_literal_dot_dot_returns_non_200 ... ok
[INFO] [stdout] test playlist_valid_origin_returns_200_with_hls_content_type ... ok
[INFO] [stdout] test segment_path_traversal_returns_400 ... ok
[INFO] [stdout] test unknown_route_returns_404 ... ok
[INFO] [stdout] test segment_origin_404_returns_502 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 43 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.80s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests ritcher
[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" "751305a1f9f1c859efafd11110d9f0f6a32a6ec8ad788e19d6cb014de894b153", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "751305a1f9f1c859efafd11110d9f0f6a32a6ec8ad788e19d6cb014de894b153", kill_on_drop: false }`
[INFO] [stdout] 751305a1f9f1c859efafd11110d9f0f6a32a6ec8ad788e19d6cb014de894b153
