[INFO] cloning repository https://github.com/doubleailes/tpms-sniffer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/doubleailes/tpms-sniffer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoubleailes%2Ftpms-sniffer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoubleailes%2Ftpms-sniffer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 18a38b9ed0652fb2606f4cf72f58c50dedc21295 [INFO] testing doubleailes/tpms-sniffer against master#f9988fefd3add01f414f52b414308e7872622fee for pr-155114 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoubleailes%2Ftpms-sniffer" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/doubleailes/tpms-sniffer [INFO] finished tweaking git repo https://github.com/doubleailes/tpms-sniffer [INFO] tweaked toml for git repo https://github.com/doubleailes/tpms-sniffer written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/doubleailes/tpms-sniffer on toolchain f9988fefd3add01f414f52b414308e7872622fee [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/doubleailes/tpms-sniffer already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating git repository `https://github.com/mattdelashaw/rtlsdr-next` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.118 [INFO] [stderr] Downloaded wasm-bindgen v0.2.118 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.118 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.118 [INFO] [stderr] Downloaded transpose v0.2.3 [INFO] [stderr] Downloaded primal-check v0.3.4 [INFO] [stderr] Downloaded rolling-file v0.2.0 [INFO] [stderr] Downloaded hashlink v0.9.1 [INFO] [stderr] Downloaded env_filter v1.0.1 [INFO] [stderr] Downloaded env_logger v0.11.10 [INFO] [stderr] Downloaded data-encoding v2.10.0 [INFO] [stderr] Downloaded tokio-tungstenite v0.28.0 [INFO] [stderr] Downloaded portable-atomic-util v0.2.6 [INFO] [stderr] Downloaded fs-err v3.3.0 [INFO] [stderr] Downloaded uuid v1.23.0 [INFO] [stderr] Downloaded axum-server v0.7.3 [INFO] [stderr] Downloaded rustls-pki-types v1.14.0 [INFO] [stderr] Downloaded rusb v0.9.4 [INFO] [stderr] Downloaded jiff-static v0.2.23 [INFO] [stderr] Downloaded tungstenite v0.28.0 [INFO] [stderr] Downloaded fs_extra v1.3.0 [INFO] [stderr] Downloaded js-sys v0.3.95 [INFO] [stderr] Downloaded rand v0.9.3 [INFO] [stderr] Downloaded rustls-webpki v0.103.11 [INFO] [stderr] Downloaded arc-swap v1.9.1 [INFO] [stderr] Downloaded rusqlite v0.31.0 [INFO] [stderr] Downloaded hyper v1.9.0 [INFO] [stderr] Downloaded aws-lc-rs v1.16.2 [INFO] [stderr] Downloaded libusb1-sys v0.7.0 [INFO] [stderr] Downloaded rustfft v6.4.1 [INFO] [stderr] Downloaded rustls v0.23.38 [INFO] [stderr] Downloaded jiff v0.2.23 [INFO] [stderr] Downloaded tokio v1.51.1 [INFO] [stderr] Downloaded libsqlite3-sys v0.28.0 [INFO] [stderr] Downloaded aws-lc-sys v0.39.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d99968f079dc2e256f856aca8ed0c5fef97266a9845415b3f4101c67ba61d527 [INFO] running `Command { std: "docker" "start" "-a" "d99968f079dc2e256f856aca8ed0c5fef97266a9845415b3f4101c67ba61d527", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d99968f079dc2e256f856aca8ed0c5fef97266a9845415b3f4101c67ba61d527", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d99968f079dc2e256f856aca8ed0c5fef97266a9845415b3f4101c67ba61d527", kill_on_drop: false }` [INFO] [stdout] d99968f079dc2e256f856aca8ed0c5fef97266a9845415b3f4101c67ba61d527 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d0cbdb7df938f94e4f01c2af635a12970b6f70cc7254fb47682e700965748d14 [INFO] running `Command { std: "docker" "start" "-a" "d0cbdb7df938f94e4f01c2af635a12970b6f70cc7254fb47682e700965748d14", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.185 [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling itoa v1.0.18 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling zerocopy v0.8.48 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling pkg-config v0.3.33 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling hashbrown v0.17.0 [INFO] [stderr] Compiling aws-lc-rs v1.16.2 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling anstyle-parse v1.0.0 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling data-encoding v2.10.0 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling indexmap v2.14.0 [INFO] [stderr] Compiling rustls v0.23.38 [INFO] [stderr] Compiling untrusted v0.9.0 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling strength_reduce v0.2.4 [INFO] [stderr] Compiling primal-check v0.3.4 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling fs-err v3.3.0 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling transpose v0.2.3 [INFO] [stderr] Compiling jiff v0.2.23 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling cc v1.2.60 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling rustfft v6.4.1 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling rusb v0.9.4 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling arc-swap v1.9.1 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling rustls-pemfile v2.2.0 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling uuid v1.23.0 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling cmake v0.1.58 [INFO] [stderr] Compiling libusb1-sys v0.7.0 [INFO] [stderr] Compiling libsqlite3-sys v0.28.0 [INFO] [stderr] Compiling rtlsdr-next v1.0.5 (https://github.com/mattdelashaw/rtlsdr-next#a6101750) [INFO] [stderr] Compiling aws-lc-sys v0.39.1 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling zerocopy-derive v0.8.48 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling env_filter v1.0.1 [INFO] [stderr] Compiling clap_derive v4.6.0 [INFO] [stderr] Compiling env_logger v0.11.10 [INFO] [stderr] Compiling tokio v1.51.1 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling axum-core v0.5.6 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling clap v4.6.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling rolling-file v0.2.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.3 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling tungstenite v0.28.0 [INFO] [stderr] Compiling rusqlite v0.31.0 [INFO] [stderr] Compiling tokio-tungstenite v0.28.0 [INFO] [stderr] Compiling rustls-webpki v0.103.11 [INFO] [stderr] Compiling hyper v1.9.0 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling axum v0.8.8 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling axum-server v0.7.3 [INFO] [stderr] Compiling tpms-tracker v0.3.0 (/opt/rustwide/workdir/crates/tracker) [INFO] [stderr] Compiling tpms-sniffer v0.3.0 (/opt/rustwide/workdir/crates/sniffer) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 52s [INFO] running `Command { std: "docker" "inspect" "d0cbdb7df938f94e4f01c2af635a12970b6f70cc7254fb47682e700965748d14", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d0cbdb7df938f94e4f01c2af635a12970b6f70cc7254fb47682e700965748d14", kill_on_drop: false }` [INFO] [stdout] d0cbdb7df938f94e4f01c2af635a12970b6f70cc7254fb47682e700965748d14 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] aaa8df6afc86e754d8563df6cd4147d6da98de1f2d3a3e87d7d31c9d628cb7f2 [INFO] running `Command { std: "docker" "start" "-a" "aaa8df6afc86e754d8563df6cd4147d6da98de1f2d3a3e87d7d31c9d628cb7f2", kill_on_drop: false }` [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.4.1 [INFO] [stderr] Compiling tpms-sniffer v0.3.0 (/opt/rustwide/workdir/crates/sniffer) [INFO] [stderr] Compiling rusqlite v0.31.0 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling tpms-tracker v0.3.0 (/opt/rustwide/workdir/crates/tracker) [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 38.49s [INFO] running `Command { std: "docker" "inspect" "aaa8df6afc86e754d8563df6cd4147d6da98de1f2d3a3e87d7d31c9d628cb7f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aaa8df6afc86e754d8563df6cd4147d6da98de1f2d3a3e87d7d31c9d628cb7f2", kill_on_drop: false }` [INFO] [stdout] aaa8df6afc86e754d8563df6cd4147d6da98de1f2d3a3e87d7d31c9d628cb7f2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 068b9132806c15303a02bb14a3092084a2af901ce84fcb12acd872cfc7929e53 [INFO] running `Command { std: "docker" "start" "-a" "068b9132806c15303a02bb14a3092084a2af901ce84fcb12acd872cfc7929e53", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.46s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/tpms_sniffer-17afce3d294108ef) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test decoder::tests::jansite_pressure_0x78_gives_204_kpa ... ok [INFO] [stdout] test decoder::tests::jansite_pressure_0x96_gives_255_kpa ... ok [INFO] [stdout] test decoder::tests::eeztire_raw_255_gives_176_kpa ... ok [INFO] [stdout] test decoder::tests::eeztire_raw_511_gives_352_kpa ... ok [INFO] [stdout] test decoder::tests::jansite_sanity_rejects_below_50_kpa ... ok [INFO] [stdout] test decoder::tests::trw_ook_motion_other_is_moving ... ok [INFO] [stdout] test decoder::tests::eeztire_sanity_rejects_below_50_kpa ... ok [INFO] [stdout] test decoder::tests::trw_ook_flags_0x9_triggers_alarm ... ok [INFO] [stdout] test decoder::tests::trw_ook_pressure_0x50_gives_220_kpa ... ok [INFO] [stdout] test decoder::tests::trw_ook_flags_0x6_triggers_alarm ... ok [INFO] [stdout] test decoder::tests::trw_ook_flags_other_no_alarm ... ok [INFO] [stdout] test decoder::tests::trw_ook_temperature_offset_50 ... ok [INFO] [stdout] test decoder::tests::trw_ook_id_from_bytes_1_to_4 ... ok [INFO] [stdout] test decoder::tests::trw_ook_pressure_0x4a_gives_204_kpa ... ok [INFO] [stdout] test decoder::tests::eeztire_raw_495_gives_341_kpa ... ok [INFO] [stdout] test decoder::tests::trw_ook_motion_0x0e_is_parked ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 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/tpms_tracker-3b20ae9b6e499bf1) [INFO] [stdout] [INFO] [stdout] running 202 tests [INFO] [stdout] test analytics::tests::no_sudden_increase_below_threshold ... ok [INFO] [stdout] test analytics::tests::alarm_threshold_detected ... ok [INFO] [stdout] test analytics::tests::geojson_skips_single_point_car ... ok [INFO] [stdout] test analytics::tests::slow_decline_detected ... ok [INFO] [stdout] test analytics::tests::geojson_builds_valid_collection ... ok [INFO] [stdout] test classification::tests::boundary_200_kpa_no_count ... ok [INFO] [stdout] test classification::tests::boundary_290_kpa_no_count ... ok [INFO] [stdout] test classification::tests::boundary_260_kpa_no_count ... ok [INFO] [stdout] test classification::tests::boundary_340_kpa_no_count ... ok [INFO] [stdout] test classification::tests::boundary_550_kpa ... ok [INFO] [stdout] test classification::tests::compensate_at_higher_temp_reduces_pressure ... ok [INFO] [stdout] test classification::tests::compensate_at_lower_temp_increases_pressure ... ok [INFO] [stdout] test classification::tests::compensate_at_reference_temp_unchanged ... ok [INFO] [stdout] test classification::tests::compensate_negative_temp_no_change ... ok [INFO] [stdout] test classification::tests::compensate_sentinel_temp_no_change ... ok [INFO] [stdout] test classification::tests::compensate_none_temp_no_change ... ok [INFO] [stdout] test classification::tests::expected_sensor_count_values ... ok [INFO] [stdout] test classification::tests::heavy_truck_more_than_4_sensors ... ok [INFO] [stdout] test classification::tests::hyundai_elantra_254_kpa_is_passenger_car ... ok [INFO] [stdout] test classification::tests::motorcycle_2_sensors_at_250 ... ok [INFO] [stdout] test classification::tests::passenger_car_4_sensors_at_254 ... ok [INFO] [stdout] test classification::tests::pressure_tolerance_values ... ok [INFO] [stdout] test classification::tests::suv_4_sensors_at_300 ... ok [INFO] [stdout] test classification::tests::boundary_350_kpa ... ok [INFO] [stdout] test classification::tests::trw_ook_63_kpa_is_unknown ... ok [INFO] [stdout] test classification::tests::boundary_480_kpa ... ok [INFO] [stdout] test classification::tests::vehicle_class_round_trip ... ok [INFO] [stdout] test jaccard::tests::candidate_wheel_mates_filters_by_prefix ... ok [INFO] [stdout] test jaccard::tests::candidate_wheel_mates_skips_rolling_id ... ok [INFO] [stdout] test jaccard::tests::common_prefix_bytes_returns_0_for_first_byte_diff ... ok [INFO] [stdout] test classification::tests::ave_tpms_382_kpa_is_light_commercial_van ... ok [INFO] [stdout] test jaccard::tests::common_prefix_bytes_returns_2_for_third_byte_diff ... ok [INFO] [stdout] test jaccard::tests::common_prefix_bytes_returns_3_for_fourth_byte_diff ... ok [INFO] [stdout] test jaccard::tests::export_produces_valid_json ... ok [INFO] [stdout] test jaccard::tests::common_prefix_bytes_returns_4_for_identical ... ok [INFO] [stdout] test jaccard::tests::candidate_wheel_mates_different_protocol_not_matched ... ok [INFO] [stdout] test jaccard::tests::high_cooccurrence_vehicles_grouped_into_one_car ... ok [INFO] [stdout] test jaccard::tests::group_four_cooccurring_plus_one_outsider ... ok [INFO] [stdout] test jaccard::tests::common_prefix_bytes_returns_1_for_second_byte_diff ... ok [INFO] [stdout] test jaccard::tests::infer_wheel_positions_consecutive_trailing_bytes ... ok [INFO] [stdout] test jaccard::tests::infer_wheel_positions_non_consecutive_returns_none ... ok [INFO] [stdout] test jaccard::tests::infer_wheel_positions_shuffled_order ... ok [INFO] [stdout] test jaccard::tests::infer_wheel_positions_wrong_group_size_returns_none ... ok [INFO] [stdout] test jaccard::tests::inter_group_jaccard_empty_groups ... ok [INFO] [stdout] test jaccard::tests::inter_group_jaccard_high_cooccurrence ... ok [INFO] [stdout] test jaccard::tests::jaccard_no_overlap ... ok [INFO] [stdout] test jaccard::tests::jaccard_perfect_cooccurrence ... ok [INFO] [stdout] test jaccard::tests::jaccard_returns_zero_below_min_windows ... ok [INFO] [stdout] test jaccard::tests::inter_group_jaccard_low_cooccurrence ... ok [INFO] [stdout] test jaccard::tests::prefix_seeded_grouping_candidate_reduction ... ok [INFO] [stdout] test analytics::tests::routine_returns_none_below_min_days ... ok [INFO] [stdout] test jaccard::tests::jaccard_partial_overlap ... ok [INFO] [stdout] test jaccard::tests::low_cooccurrence_vehicles_not_grouped_together ... ok [INFO] [stdout] test jaccard::tests::window_eviction_removes_old_data ... ok [INFO] [stdout] test jaccard::tests::wheel_position_round_trip ... ok [INFO] [stdout] test jitter::tests::at_max_rejected ... ok [INFO] [stdout] test jitter::tests::alternating_long_short_negative_acf ... ok [INFO] [stdout] test jitter::tests::classify_burst_prone ... ok [INFO] [stdout] test jitter::tests::classify_corrected ... ok [INFO] [stdout] test jaccard::tests::prefix_seeded_grouping_groups_same_prefix_sensors ... ok [INFO] [stdout] test jitter::tests::classify_drifting ... ok [INFO] [stdout] test analytics::tests::sudden_increase_detected ... ok [INFO] [stdout] test jitter::tests::classify_irregular ... ok [INFO] [stdout] test jitter::tests::classify_stable_gaussian ... ok [INFO] [stdout] test jitter::tests::cross_session_gap_excluded ... ok [INFO] [stdout] test jitter::tests::insufficient_samples_returns_none ... ok [INFO] [stdout] test jitter::tests::gaussian_input_correct_sigma ... ok [INFO] [stdout] test jitter::tests::iqr_filter_preserves_clean_distribution ... ok [INFO] [stdout] test jitter::tests::bimodal_distribution_high_kurtosis ... ok [INFO] [stdout] test analytics::tests::routine_computed_with_sufficient_data ... ok [INFO] [stdout] test jitter::tests::iqr_filter_removes_extreme_outliers ... ok [INFO] [stdout] test jitter::tests::identical_profiles_similarity_one ... ok [INFO] [stdout] test jitter::tests::just_below_max_accepted ... ok [INFO] [stdout] test jitter::tests::burst_duplicate_excluded ... ok [INFO] [stdout] test jitter::tests::very_different_profiles_low_similarity ... ok [INFO] [stdout] test raw_interval::tests::buffer_evict_stale_removes_old_intervals ... ok [INFO] [stdout] test raw_interval::tests::buffer_drain_returns_buffered_intervals ... ok [INFO] [stdout] test raw_interval::tests::buffer_drain_isolates_keys ... ok [INFO] [stdout] test raw_interval::tests::buffer_evict_stale_drops_empty_keys ... ok [INFO] [stdout] test jitter::tests::min_boundary_accepted ... ok [INFO] [stdout] test jitter::tests::rolling_id_inter_match_gap_accepted ... ok [INFO] [stdout] test raw_interval::tests::burst_duplicate_below_min_rejected ... ok [INFO] [stdout] test raw_interval::tests::different_protocols_kept_separate ... ok [INFO] [stdout] test raw_interval::tests::cross_session_gap_above_max_rejected ... ok [INFO] [stdout] test raw_interval::tests::first_observation_returns_none ... ok [INFO] [stdout] test raw_interval::tests::evict_stale_removes_old_entries ... ok [INFO] [stdout] test raw_interval::tests::is_rolling_id_protocol_recognises_known_protocols ... ok [INFO] [stdout] test raw_interval::tests::evict_stale_keeps_recent_entries ... ok [INFO] [stdout] test raw_interval::tests::last_seen_advances_each_observation ... ok [INFO] [stdout] test jitter::tests::just_below_min_rejected ... ok [INFO] [stdout] test raw_interval::tests::min_boundary_accepted ... ok [INFO] [stdout] test raw_interval::tests::normal_gap_returns_interval ... ok [INFO] [stdout] test raw_interval::tests::rolling_above_hamming_threshold_returns_none ... ok [INFO] [stdout] test raw_interval::tests::rolling_burst_duplicate_below_min_rejected ... ok [INFO] [stdout] test raw_interval::tests::rolling_buffer_evicts_by_age_when_full ... ok [INFO] [stdout] test raw_interval::tests::rolling_dedup_suppresses_repeat_pair_within_window ... ok [INFO] [stdout] test raw_interval::tests::rolling_dedup_releases_pair_after_window ... ok [INFO] [stdout] test raw_interval::tests::rolling_evict_stale_removes_old_protocol_entries ... ok [INFO] [stdout] test raw_interval::tests::rolling_first_observation_returns_none ... ok [INFO] [stdout] test raw_interval::tests::rolling_cross_session_gap_above_max_rejected ... ok [INFO] [stdout] test raw_interval::tests::rolling_observe_with_pressure_accepts_close_pressure ... ok [INFO] [stdout] test raw_interval::tests::rolling_protocols_kept_separate ... ok [INFO] [stdout] test raw_interval::tests::rolling_observe_with_pressure_pressure_does_not_rescue_far_hamming ... ok [INFO] [stdout] test raw_interval::tests::rolling_same_sensor_within_hamming_threshold_returns_interval ... ok [INFO] [stdout] test raw_interval::tests::rolling_state_advances_even_on_rejected_match ... ok [INFO] [stdout] test raw_interval::tests::rolling_multi_slot_buffer_recovers_signal_in_dense_environment ... ok [INFO] [stdout] test raw_interval::tests::rolling_single_slot_regression_yields_no_signal_in_dense_environment ... ok [INFO] [stdout] test raw_interval::tests::rolling_observe_with_pressure_rejects_large_pressure_delta ... ok [INFO] [stdout] test raw_interval::tests::rolling_three_bit_flip_accepted ... ok [INFO] [stdout] test raw_interval::tests::rolling_synthetic_eeztire_stream_yields_per_transmission_intervals ... ok [INFO] [stdout] test raw_interval::tests::max_boundary_accepted ... ok [INFO] [stdout] test raw_interval::tests::rolling_buffer_skips_stale_entries_and_matches_recent ... ok [INFO] [stdout] test raw_interval::tests::rolling_evict_stale_clears_dedup_state ... ok [INFO] [stdout] test db::tests::backfill_presence_slots_populates_from_sightings ... ok [INFO] [stdout] test db::tests::schema_has_correct_indexes ... ok [INFO] [stdout] test db::tests::vehicle_fingerprint_id_column_migration ... ok [INFO] [stdout] test resolver::tests::compute_median_basic ... ok [INFO] [stdout] test db::tests::generate_car_report_with_no_data ... ok [INFO] [stdout] test db::tests::fingerprints_table_and_index_exist ... ok [INFO] [stdout] test db::tests::pressure_event_insert_and_query ... ok [INFO] [stdout] test db::tests::presence_slot_upsert_and_query ... ok [INFO] [stdout] test db::tests::jitter_pipeline_insert_samples_and_recompute ... ok [INFO] [stdout] test resolver::tests::ave_burst_after_expiry_creates_new_vehicle ... ok [INFO] [stdout] test db::tests::fingerprint_crud_operations ... ok [INFO] [stdout] test resolver::tests::ave_burst_within_expiry_reuses_vehicle ... ok [INFO] [stdout] test resolver::tests::ave_half_range_frame_does_not_split_vehicle ... ok [INFO] [stdout] test resolver::tests::ave_sequence_382_190_produces_one_vehicle_and_stable_average ... ok [INFO] [stdout] test resolver::tests::effective_expiry_battery_extension ... ok [INFO] [stdout] test resolver::tests::cross_receiver_duplicate_does_not_increment_tx_interval ... ok [INFO] [stdout] test resolver::tests::cross_receiver_duplicate_does_not_increment_sighting_count ... ok [INFO] [stdout] test resolver::tests::cross_receiver_outside_window_counts_normally ... ok [INFO] [stdout] test resolver::tests::eeztire_good_battery_expires_after_8_minutes ... ok [INFO] [stdout] test resolver::tests::db_integrity_no_vehicle_spans_multiple_rtl433_ids ... ok [INFO] [stdout] test resolver::tests::car_id_stable_across_repeated_sightings ... ok [INFO] [stdout] test resolver::tests::eeztire_low_battery_survives_9_minute_gap ... ok [INFO] [stdout] test resolver::tests::eeztire_packet_after_expiry_creates_new_vehicle ... ok [INFO] [stdout] test resolver::tests::different_pressures_produce_separate_fingerprints ... ok [INFO] [stdout] test resolver::tests::eeztire_rolling_id_burst_resolves_to_single_vehicle ... ok [INFO] [stdout] test resolver::tests::fingerprint_created_for_new_eeztire_vehicle ... ok [INFO] [stdout] test resolver::tests::eeztire_two_sensors_at_different_pressures_do_not_merge ... ok [INFO] [stdout] test resolver::tests::fingerprint_created_for_new_ave_burst ... ok [INFO] [stdout] test resolver::tests::fingerprint_store_schema_and_index_exist ... ok [INFO] [stdout] test resolver::tests::is_valid_sensor_id_issue27_boundary_values ... ok [INFO] [stdout] test resolver::tests::is_valid_sensor_id_popcount_boundary ... ok [INFO] [stdout] test resolver::tests::is_valid_sensor_id_unit ... ok [INFO] [stdout] test resolver::tests::fingerprint_path_cross_receiver_dedup ... ok [INFO] [stdout] test resolver::tests::fingerprint_links_across_sessions ... ok [INFO] [stdout] test resolver::tests::fixed_id_map_keyed_on_protocol_does_not_merge_across_decoders ... ok [INFO] [stdout] test resolver::tests::implausible_boundary_pressure_discarded_and_accepted ... ok [INFO] [stdout] test resolver::tests::four_vehicles_same_pressure_no_hint_matches_most_recent ... ok [INFO] [stdout] test resolver::tests::per_protocol_vehicle_expiry ... ok [INFO] [stdout] test resolver::tests::implausible_zero_pressure_discarded ... ok [INFO] [stdout] test resolver::tests::fingerprint_three_sessions_three_vehicles_one_fingerprint ... ok [INFO] [stdout] test resolver::tests::implausible_negative_pressure_discarded ... ok [INFO] [stdout] test resolver::tests::interval_check_skipped_when_insufficient_samples ... ok [INFO] [stdout] test resolver::tests::merge_is_idempotent_across_grouping_passes ... ok [INFO] [stdout] test resolver::tests::min_sightings_guard_prevents_premature_matching ... ok [INFO] [stdout] test resolver::tests::merge_updates_all_vehicle_to_car_entries ... ok [INFO] [stdout] test resolver::tests::raw_interval_buffer_flushes_after_first_resolution ... ok [INFO] [stdout] test resolver::tests::protocol_filter_is_first_in_fingerprint_correlator ... ok [INFO] [stdout] test resolver::tests::raw_interval_burst_duplicate_rejected ... ok [INFO] [stdout] test resolver::tests::car_id_survives_tracker_restart ... ok [INFO] [stdout] test resolver::tests::receiver_sightings_tracks_both_receivers ... ok [INFO] [stdout] test resolver::tests::receiver_id_populates_from_packet ... ok [INFO] [stdout] test resolver::tests::rolling_id_two_simultaneous_sensors_separated_by_pressure ... ok [INFO] [stdout] test resolver::tests::rolling_id_eeztire_stream_with_bit_flips_records_intervals ... ok [INFO] [stdout] test resolver::tests::implausible_high_pressure_discarded ... ok [INFO] [stdout] test resolver::tests::same_receiver_outside_window_still_counts ... ok [INFO] [stdout] test resolver::tests::run_grouping_merges_cars_when_vehicles_cooccur ... ok [INFO] [stdout] test resolver::tests::sentinel_0x00000000_not_created_via_fixed_id_path ... ok [INFO] [stdout] test resolver::tests::run_grouping_does_not_merge_low_cooccurrence ... ok [INFO] [stdout] test resolver::tests::sentinel_0xffffffff_not_created_via_fixed_id_path ... ok [INFO] [stdout] test resolver::tests::sentinel_different_protocols_do_not_merge ... ok [INFO] [stdout] test resolver::tests::sentinel_trw_ook_never_resolves_to_ave_vehicle ... ok [INFO] [stdout] test resolver::tests::interval_samples_populated_via_fingerprint_correlator_path ... ok [INFO] [stdout] test temporal::tests::autocorrelation_daily_commuter ... ok [INFO] [stdout] test temporal::tests::bimodal_gmm_from_commuter_sessions ... ok [INFO] [stdout] test temporal::tests::dwell_classification_drive_by ... ok [INFO] [stdout] test temporal::tests::dwell_classification_long_term_parked ... ok [INFO] [stdout] test temporal::tests::full_tbf_commuter ... ok [INFO] [stdout] test temporal::tests::full_tbf_stationary ... ok [INFO] [stdout] test temporal::tests::min_sessions_not_met ... ok [INFO] [stdout] test temporal::tests::presence_map_weekday_commuter ... ok [INFO] [stdout] test temporal::tests::session_extraction_multiple_sessions ... ok [INFO] [stdout] test temporal::tests::session_extraction_single_long_session ... ok [INFO] [stdout] test temporal::tests::tbf_similarity_different ... ok [INFO] [stdout] test temporal::tests::tbf_similarity_identical ... ok [INFO] [stdout] test resolver::tests::three_packet_trw_burst_regression ... ok [INFO] [stdout] test resolver::tests::single_vehicle_noisy_interval_does_not_split ... ok [INFO] [stdout] test resolver::tests::two_vehicles_same_pressure_hint_selects_closer_interval ... ok [INFO] [stdout] test resolver::tests::two_ave_same_pressure_different_intervals_separate ... ok [INFO] [stdout] test resolver::tests::test_no_cross_protocol_merge ... ok [INFO] [stdout] test resolver::tests::two_receiver_fixture_produces_one_vehicle ... ok [INFO] [stdout] test resolver::tests::tx_interval_accumulated_on_fingerprint_path ... ok [INFO] [stdout] test resolver::tests::sentinel_not_restored_to_fixed_map_from_db ... ok [INFO] [stdout] test resolver::tests::valid_fixed_id_still_works ... ok [INFO] [stdout] test resolver::tests::tx_interval_ring_buffer_capped ... ok [INFO] [stdout] test resolver::tests::two_sensors_same_pressure_different_tx_interval_two_fingerprints ... ok [INFO] [stdout] test resolver::tests::raw_interval_pipeline_yields_per_transmission_samples ... ok [INFO] [stdout] test replay::tests::consistency_no_cross_protocol_merges ... ok [INFO] [stdout] test replay::tests::replay_result_car_counts_are_consistent ... ok [INFO] [stdout] test replay::tests::replay_fixture_parses_all_packets ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 202 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.68s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/tpms_tracker-ca546c166c867df1) [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/rolling_log.rs (/opt/rustwide/target/debug/deps/rolling_log-ae7daac8ad9d1cdb) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test rolling_file_rotation_creates_rotated_files ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Doc-tests tpms_tracker [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" "068b9132806c15303a02bb14a3092084a2af901ce84fcb12acd872cfc7929e53", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "068b9132806c15303a02bb14a3092084a2af901ce84fcb12acd872cfc7929e53", kill_on_drop: false }` [INFO] [stdout] 068b9132806c15303a02bb14a3092084a2af901ce84fcb12acd872cfc7929e53