[INFO] fetching crate rusty-haystack-core 0.8.1...
[INFO] testing rusty-haystack-core-0.8.1 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate rusty-haystack-core 0.8.1 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate rusty-haystack-core 0.8.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate rusty-haystack-core 0.8.1
[INFO] tweaked toml for crates.io crate rusty-haystack-core 0.8.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rusty-haystack-core 0.8.1 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 crates.io crate rusty-haystack-core 0.8.1 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-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 03e956573af6046797ce1d1dd2b29408bde87182f5f71c8f14dd92a0e431a8ad
[INFO] running `Command { std: "docker" "start" "-a" "03e956573af6046797ce1d1dd2b29408bde87182f5f71c8f14dd92a0e431a8ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "03e956573af6046797ce1d1dd2b29408bde87182f5f71c8f14dd92a0e431a8ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "03e956573af6046797ce1d1dd2b29408bde87182f5f71c8f14dd92a0e431a8ad", kill_on_drop: false }`
[INFO] [stdout] 03e956573af6046797ce1d1dd2b29408bde87182f5f71c8f14dd92a0e431a8ad
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] bee7a9044cb592fce95ad150343f02104c9e5d692f3997e84a26203105c058eb
[INFO] running `Command { std: "docker" "start" "-a" "bee7a9044cb592fce95ad150343f02104c9e5d692f3997e84a26203105c058eb", kill_on_drop: false }`
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling rand_core v0.10.0
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling base64ct v1.8.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling rustc-hash v2.1.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling chacha20 v0.10.0
[INFO] [stderr]    Compiling roaring v0.11.3
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling rand v0.10.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling pbkdf2 v0.12.2
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rusty-haystack-core v0.8.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.76s
[INFO] running `Command { std: "docker" "inspect" "bee7a9044cb592fce95ad150343f02104c9e5d692f3997e84a26203105c058eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bee7a9044cb592fce95ad150343f02104c9e5d692f3997e84a26203105c058eb", kill_on_drop: false }`
[INFO] [stdout] bee7a9044cb592fce95ad150343f02104c9e5d692f3997e84a26203105c058eb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 69848d98291889e2594d939653b7bbad229e9170fe6fc64605c57be1bbffed22
[INFO] running `Command { std: "docker" "start" "-a" "69848d98291889e2594d939653b7bbad229e9170fe6fc64605c57be1bbffed22", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling cc v1.2.57
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling page_size v0.6.0
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling criterion-plot v0.8.2
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling test-case-core v3.3.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.47
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling test-case-macros v3.3.1
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling test-case v3.3.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zerocopy v0.8.47
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rusty-haystack-core v0.8.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling proptest v1.10.0
[INFO] [stderr]    Compiling criterion v0.8.2
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 41.24s
[INFO] running `Command { std: "docker" "inspect" "69848d98291889e2594d939653b7bbad229e9170fe6fc64605c57be1bbffed22", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "69848d98291889e2594d939653b7bbad229e9170fe6fc64605c57be1bbffed22", kill_on_drop: false }`
[INFO] [stdout] 69848d98291889e2594d939653b7bbad229e9170fe6fc64605c57be1bbffed22
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] d96d1da67076396d6f4040aa103d7e6bdbf89cb644c57211c4995767c17c0869
[INFO] running `Command { std: "docker" "start" "-a" "d96d1da67076396d6f4040aa103d7e6bdbf89cb644c57211c4995767c17c0869", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/haystack_core-d1b95706b26e7ef6)
[INFO] [stdout] 
[INFO] [stdout] running 823 tests
[INFO] [stdout] test auth::tests::test_generate_nonce ... ok
[INFO] [stdout] test auth::tests::test_parse_auth_header_hello ... ok
[INFO] [stdout] test auth::tests::test_format_www_authenticate ... ok
[INFO] [stdout] test auth::tests::test_format_auth_info ... ok
[INFO] [stdout] test codecs::csv::tests::csv_quote_escapes_double_quotes ... ok
[INFO] [stdout] test codecs::csv::tests::encode_grid_with_commas_and_quotes_in_strings ... ok
[INFO] [stdout] test auth::tests::test_parse_auth_header_bearer ... ok
[INFO] [stdout] test codecs::json::v3::tests::bool_true_roundtrip ... ok
[INFO] [stdout] test auth::tests::test_parse_auth_header_invalid ... ok
[INFO] [stdout] test codecs::json::v3::tests::coord_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::bool_encodes_to_json_bool ... ok
[INFO] [stdout] test auth::tests::test_parse_auth_header_scram ... ok
[INFO] [stdout] test codecs::csv::tests::decode_grid_not_supported ... ok
[INFO] [stdout] test codecs::csv::tests::encode_grid_mixed_types ... ok
[INFO] [stdout] test codecs::csv::tests::encode_empty_grid ... ok
[INFO] [stdout] test codecs::json::v3::tests::bool_false_roundtrip ... ok
[INFO] [stdout] test codecs::csv::tests::mime_type ... ok
[INFO] [stdout] test codecs::json::v3::tests::date_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::date_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::datetime_encoding_format ... ok
[INFO] [stdout] test codecs::csv::tests::encode_grid_cols_no_rows ... ok
[INFO] [stdout] test codecs::json::v3::tests::datetime_utc_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::disambiguation_str_with_colon ... ok
[INFO] [stdout] test codecs::json::v3::tests::dict_with_values_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::disambiguation_str_vs_marker ... ok
[INFO] [stdout] test codecs::json::v3::tests::grid_empty_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::grid_encoding_has_ver ... ok
[INFO] [stdout] test codecs::json::v3::tests::coord_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::datetime_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::dict_empty_roundtrip ... ok
[INFO] [stdout] test codecs::csv::tests::scalar_delegates_to_zinc ... ok
[INFO] [stdout] test codecs::json::v3::tests::grid_missing_cells ... ok
[INFO] [stdout] test codecs::json::v3::tests::grid_with_col_meta_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::grid_with_data_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::list_empty_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::marker_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::grid_nested_in_scalar ... ok
[INFO] [stdout] test codecs::json::v3::tests::list_nested_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::nested_dict_with_typed_values ... ok
[INFO] [stdout] test codecs::json::v3::tests::na_encodes_as_prefix ... ok
[INFO] [stdout] test codecs::json::v3::tests::null_encodes_to_json_null ... ok
[INFO] [stdout] test codecs::json::v3::tests::list_with_all_types ... ok
[INFO] [stdout] test codecs::json::v3::tests::na_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::null_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::grid_with_meta_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::list_mixed_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_inf_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_integer_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_neg_inf_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_nan_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_negative_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_unitless_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_unitless_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::plain_json_number_decodes_as_number ... ok
[INFO] [stdout] test codecs::json::v3::tests::ref_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::ref_simple_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::marker_encodes_as_prefix ... ok
[INFO] [stdout] test codecs::json::v3::tests::ref_with_dis_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::remove_encodes_as_prefix ... ok
[INFO] [stdout] test codecs::json::v3::tests::remove_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::string_empty_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::string_empty_encodes_with_s_prefix ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_inf_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::time_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::string_that_looks_like_prefix ... ok
[INFO] [stdout] test codecs::json::v3::tests::string_encodes_with_s_prefix ... ok
[INFO] [stdout] test codecs::json::v3::tests::string_with_special_chars_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::uri_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::string_simple_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::symbol_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::symbol_encoding_format ... ok
[INFO] [stdout] test codecs::json::v3::tests::time_with_frac_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::xstr_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::bool_encodes_to_json_bool ... ok
[INFO] [stdout] test codecs::json::v4::tests::bool_true_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::coord_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::date_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::dict_empty_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_with_unit_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::datetime_utc_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::number_zero_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::dict_no_kind_key ... ok
[INFO] [stdout] test codecs::json::v3::tests::uri_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::decode_plain_object_as_dict ... ok
[INFO] [stdout] test codecs::json::v4::tests::dict_with_values_roundtrip ... ok
[INFO] [stdout] test codecs::json::v3::tests::xstr_encoding_format ... ok
[INFO] [stdout] test codecs::json::v4::tests::grid_empty_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::datetime_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::grid_nested_in_scalar ... ok
[INFO] [stdout] test codecs::json::v4::tests::grid_with_missing_cells ... ok
[INFO] [stdout] test codecs::json::v4::tests::list_mixed_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::list_nested_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::grid_with_meta_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::na_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::null_encodes_to_json_null ... ok
[INFO] [stdout] test codecs::json::v4::tests::marker_encodes_with_kind ... ok
[INFO] [stdout] test codecs::json::v4::tests::grid_with_data_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::grid_with_col_meta_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::bool_false_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_inf_encoding_format ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_negative_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_unitless_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_with_unit_encoding_format ... ok
[INFO] [stdout] test codecs::json::v4::tests::list_with_all_types ... ok
[INFO] [stdout] test codecs::json::v4::tests::marker_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::nested_dict_with_typed_values ... ok
[INFO] [stdout] test codecs::json::v4::tests::null_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_inf_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_integer_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_nan_encoding_format ... ok
[INFO] [stdout] test codecs::json::v4::tests::list_empty_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::plain_json_number_decodes_as_number ... ok
[INFO] [stdout] test codecs::json::v4::tests::plain_json_string_decodes_as_str ... ok
[INFO] [stdout] test codecs::json::v4::tests::ref_simple_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::remove_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::string_empty_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_with_unit_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::string_with_special_chars_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_zero_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::string_encodes_as_plain_json_string ... ok
[INFO] [stdout] test codecs::json::v4::tests::plain_json_integer_decodes_as_number ... ok
[INFO] [stdout] test codecs::json::v4::tests::string_simple_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::ref_with_dis_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_nan_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::number_neg_inf_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::xstr_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::time_roundtrip ... ok
[INFO] [stdout] test codecs::json::v4::tests::symbol_roundtrip ... ok
[INFO] [stdout] test codecs::shared::tests::format_frac_seconds_with_nanos ... ok
[INFO] [stdout] test codecs::shared::tests::format_number_val_inf ... ok
[INFO] [stdout] test codecs::shared::tests::format_number_val_integer ... ok
[INFO] [stdout] test codecs::shared::tests::format_number_val_nan ... ok
[INFO] [stdout] test codecs::json::v4::tests::time_with_frac_roundtrip ... ok
[INFO] [stdout] test codecs::shared::tests::format_frac_seconds_zero ... ok
[INFO] [stdout] test codecs::shared::tests::format_number_val_negative ... ok
[INFO] [stdout] test codecs::shared::tests::format_number_val_float ... ok
[INFO] [stdout] test codecs::shared::tests::format_number_val_neg_inf ... ok
[INFO] [stdout] test codecs::shared::tests::format_frac_seconds_fine_precision ... ok
[INFO] [stdout] test codecs::shared::tests::format_number_val_zero ... ok
[INFO] [stdout] test codecs::shared::tests::format_time_no_frac ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_empty_grid ... ok
[INFO] [stdout] test codecs::shared::tests::format_time_with_millis ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_number_with_unit ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_multiple_records ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_ref_value ... ok
[INFO] [stdout] test codecs::json::v4::tests::uri_roundtrip ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_bool_values ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_single_record_with_marker ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_single_record_with_values ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_blank_lines_between_tags ... ok
[INFO] [stdout] test codecs::trio::parser::tests::codec_for_registry ... ok
[INFO] [stdout] test codecs::trio::encoder::tests::encode_multiline_string ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_comments_skipped ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_columns_derived_from_all_records ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_complex_trio_file ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_coord_value ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_empty_input ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_markers_alone ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_multiline_between_records ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_multiline_string ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_multiline_string_at_end_of_input ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_multiline_string_with_tab_indent ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_multiple_records ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_number_with_unit ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_ref_values ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_separator_with_more_dashes ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_single_record_with_markers_and_values ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_whitespace_only ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_uri_value ... ok
[INFO] [stdout] test codecs::trio::parser::tests::roundtrip_encode_decode ... ok
[INFO] [stdout] test codecs::trio::parser::tests::roundtrip_multiline_string ... ok
[INFO] [stdout] test codecs::trio::parser::tests::trio_codec_trait_impl ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_bool_values ... ok
[INFO] [stdout] test codecs::trio::parser::tests::parse_date_value ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_coord ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_bool_false ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_date ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_datetime ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_bool_true ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_datetime_utc ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_dict_empty ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_dict_with_values ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_escape_str ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_marker ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_na ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_null ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_float ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_inf ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_integer ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_nan ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_grid_error ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_neg_inf ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_negative ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_with_unit ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_number_zero ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_grid_with_col_meta ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_ref_simple ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_grid_with_data ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_grid_with_meta ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_list_empty ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_list_mixed ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_grid_empty ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_remove ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_string_empty ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_string_escapes ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_ref_with_dis ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_symbol ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_time_no_frac ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_string_simple ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_time_with_frac ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_uri ... ok
[INFO] [stdout] test codecs::zinc::encoder::tests::encode_xstr ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::decode_grid_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::decode_grid_simple ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::decode_grid_with_col_meta ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::decode_grid_with_comments ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::decode_grid_with_meta ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::decode_grid_with_null_cells ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::grid_roundtrip_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::grid_roundtrip_error_grid ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::grid_roundtrip_with_data ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::grid_roundtrip_with_meta ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_coord ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_coord_negative ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_date ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_datetime ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_datetime_utc ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_datetime_z ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_dict_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_dict_mixed ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_dict_with_marker ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_dict_with_values ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_false ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_list_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_list_mixed ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_list_nested ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_marker ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_na ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_neg_inf_standalone ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_null ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_float ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_inf ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_integer ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_nan ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_neg_inf ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_negative ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_scientific ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_with_unit ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_number_zero ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_ref_simple ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_ref_with_dis ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_remove ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_scalar_allows_trailing_whitespace ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_scalar_rejects_trailing_input ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_string_accepts_valid_escapes ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_string_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_string_escapes ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_string_rejects_unknown_escapes ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_string_simple ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_string_unicode_escape ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_symbol_compound ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_symbol_simple ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_time ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_time_with_frac ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_true ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_uri_simple ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_uri_with_special ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::parse_xstr ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_bool_false ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_bool_true ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_coord ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_date ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_datetime_utc ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_datetime ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_dict_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_dict_with_values ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_inf ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_list_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_list_mixed ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_marker ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_na ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_nan ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_neg_inf ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_null ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_number_float ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_number_integer ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_number_negative ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_number_with_unit ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_ref_simple ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_remove ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_string_escapes ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_time_frac ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_uri ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::split_csv_with_nested ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_xstr ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::split_csv_simple ... ok
[INFO] [stdout] test data::dict::tests::default_is_empty ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::split_csv_with_quotes ... ok
[INFO] [stdout] test data::dict::tests::dis_from_dis_tag ... ok
[INFO] [stdout] test data::dict::tests::dis_from_ref_fallback ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_ref_with_dis ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_time ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_number_zero ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_string_empty ... ok
[INFO] [stdout] test data::dict::tests::dis_from_ref_without_dis ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::roundtrip_symbol ... ok
[INFO] [stdout] test data::dict::tests::dis_missing_entirely ... ok
[INFO] [stdout] test data::dict::tests::dis_non_str_dis_tag ... ok
[INFO] [stdout] test codecs::zinc::parser::tests::zinc_codec_trait ... ok
[INFO] [stdout] test data::dict::tests::equality ... ok
[INFO] [stdout] test data::dict::tests::from_tags ... ok
[INFO] [stdout] test data::dict::tests::id_with_ref ... ok
[INFO] [stdout] test data::dict::tests::display_empty ... ok
[INFO] [stdout] test data::dict::tests::display_with_tags ... ok
[INFO] [stdout] test data::dict::tests::inequality_different_values ... ok
[INFO] [stdout] test data::dict::tests::merge_updates_and_adds ... ok
[INFO] [stdout] test data::dict::tests::empty_dict ... ok
[INFO] [stdout] test data::dict::tests::id_missing ... ok
[INFO] [stdout] test data::dict::tests::inequality_different_keys ... ok
[INFO] [stdout] test data::dict::tests::merge_with_remove ... ok
[INFO] [stdout] test data::dict::tests::id_with_non_ref ... ok
[INFO] [stdout] test data::dict::tests::overwrite_existing_tag ... ok
[INFO] [stdout] test data::dict::tests::tag_name_set ... ok
[INFO] [stdout] test data::grid::tests::empty_grid ... ok
[INFO] [stdout] test data::dict::tests::remove_tag ... ok
[INFO] [stdout] test data::grid::tests::from_parts ... ok
[INFO] [stdout] test data::grid::tests::grid_with_data ... ok
[INFO] [stdout] test data::grid::tests::is_err_false_for_normal_grid ... ok
[INFO] [stdout] test data::grid::tests::display ... ok
[INFO] [stdout] test data::grid::tests::equality ... ok
[INFO] [stdout] test data::dict::tests::set_get_has_missing ... ok
[INFO] [stdout] test data::list::tests::default_is_empty ... ok
[INFO] [stdout] test data::grid::tests::row_access ... ok
[INFO] [stdout] test data::list::tests::display_empty ... ok
[INFO] [stdout] test data::grid::tests::iteration ... ok
[INFO] [stdout] test data::list::tests::empty_list ... ok
[INFO] [stdout] test data::list::tests::equality ... ok
[INFO] [stdout] test data::list::tests::display_with_items ... ok
[INFO] [stdout] test data::grid::tests::is_err_true_with_err_marker ... ok
[INFO] [stdout] test data::dict::tests::tag_iteration ... ok
[INFO] [stdout] test data::dict::tests::tags_returns_inner_map ... ok
[INFO] [stdout] test data::grid::tests::col_lookup ... ok
[INFO] [stdout] test data::grid::tests::col_names ... ok
[INFO] [stdout] test data::list::tests::iteration ... ok
[INFO] [stdout] test data::grid::tests::col_with_meta ... ok
[INFO] [stdout] test data::grid::tests::default_is_empty ... ok
[INFO] [stdout] test filter::eval::tests::and_one_false ... ok
[INFO] [stdout] test data::list::tests::inequality ... ok
[INFO] [stdout] test filter::eval::tests::and_both_true ... ok
[INFO] [stdout] test filter::eval::tests::cmp_datetime_lt ... ok
[INFO] [stdout] test filter::eval::tests::cmp_eq_ref ... ok
[INFO] [stdout] test filter::eval::tests::cmp_eq_ref_no_match ... ok
[INFO] [stdout] test filter::eval::tests::cmp_ge_number ... ok
[INFO] [stdout] test data::list::tests::push_and_get ... ok
[INFO] [stdout] test filter::eval::tests::cmp_date_gt ... ok
[INFO] [stdout] test filter::eval::tests::cmp_gt_number_same_unit ... ok
[INFO] [stdout] test filter::eval::tests::cmp_gt_number_same_unit_no_match ... ok
[INFO] [stdout] test filter::eval::tests::cmp_incompatible_types ... ok
[INFO] [stdout] test filter::eval::tests::cmp_lt_number ... ok
[INFO] [stdout] test filter::eval::tests::cmp_missing_tag ... ok
[INFO] [stdout] test filter::eval::tests::cmp_le_number ... ok
[INFO] [stdout] test data::list::tests::from_vec ... ok
[INFO] [stdout] test filter::eval::tests::cmp_number_different_units ... ok
[INFO] [stdout] test filter::eval::tests::cmp_ne_string ... ok
[INFO] [stdout] test filter::eval::tests::cmp_date_lt ... ok
[INFO] [stdout] test filter::eval::tests::cmp_unitless_numbers ... ok
[INFO] [stdout] test filter::eval::tests::complex_and_or ... ok
[INFO] [stdout] test filter::eval::tests::has_absent_tag ... ok
[INFO] [stdout] test filter::eval::tests::missing_absent_tag ... ok
[INFO] [stdout] test filter::eval::tests::missing_present_tag ... ok
[INFO] [stdout] test filter::eval::tests::eq_marker ... ok
[INFO] [stdout] test filter::eval::tests::cmp_marker_not_orderable ... ok
[INFO] [stdout] test filter::eval::tests::cmp_datetime_gt ... ok
[INFO] [stdout] test filter::eval::tests::cmp_eq_string ... ok
[INFO] [stdout] test filter::eval::tests::has_present_tag ... ok
[INFO] [stdout] test filter::eval::tests::cmp_eq_string_no_match ... ok
[INFO] [stdout] test filter::eval::tests::or_one_true ... ok
[INFO] [stdout] test filter::eval::tests::multi_segment_path_has ... ok
[INFO] [stdout] test filter::eval::tests::or_both_false ... ok
[INFO] [stdout] test filter::eval::tests::multi_segment_path_not_a_ref ... ok
[INFO] [stdout] test filter::eval::tests::multi_segment_path_no_resolver ... ok
[INFO] [stdout] test filter::eval::tests::cmp_string_ordering ... ok
[INFO] [stdout] test filter::eval::tests::multi_segment_path_with_resolver ... ok
[INFO] [stdout] test filter::eval::tests::single_segment_path ... ok
[INFO] [stdout] test filter::eval::tests::multi_segment_path_missing_intermediate ... ok
[INFO] [stdout] test filter::eval::tests::three_segment_path ... ok
[INFO] [stdout] test filter::eval::tests::spec_match_without_namespace_returns_false ... ok
[INFO] [stdout] test filter::parser::tests::error_unclosed_paren ... ok
[INFO] [stdout] test filter::parser::tests::parse_and ... ok
[INFO] [stdout] test filter::parser::tests::error_empty_string ... ok
[INFO] [stdout] test filter::parser::tests::error_invalid_syntax ... ok
[INFO] [stdout] test filter::parser::tests::error_trailing_input ... ok
[INFO] [stdout] test filter::parser::tests::parse_and_or_precedence ... ok
[INFO] [stdout] test filter::parser::tests::parse_bool_comparison ... ok
[INFO] [stdout] test filter::parser::tests::parse_cmp_eq_number_with_unit ... ok
[INFO] [stdout] test filter::parser::tests::parse_date_comparison ... ok
[INFO] [stdout] test filter::parser::tests::parse_ge_operator ... ok
[INFO] [stdout] test filter::parser::tests::parse_missing ... ok
[INFO] [stdout] test filter::parser::tests::parse_has_simple ... ok
[INFO] [stdout] test filter::parser::tests::parse_le_operator ... ok
[INFO] [stdout] test filter::parser::tests::parse_multi_segment_path_has ... ok
[INFO] [stdout] test filter::parser::tests::parse_ne_operator ... ok
[INFO] [stdout] test filter::parser::tests::parse_multi_segment_path_with_cmp ... ok
[INFO] [stdout] test filter::parser::tests::parse_nested_parens ... ok
[INFO] [stdout] test filter::parser::tests::parse_not_with_path ... ok
[INFO] [stdout] test filter::parser::tests::parse_or ... ok
[INFO] [stdout] test filter::parser::tests::parse_ref_comparison ... ok
[INFO] [stdout] test filter::parser::tests::parse_spec_match ... ok
[INFO] [stdout] test filter::parser::tests::parse_spec_match_dotted ... ok
[INFO] [stdout] test filter::parser::tests::parse_string_comparison ... ok
[INFO] [stdout] test filter::parser::tests::parse_chained_and ... ok
[INFO] [stdout] test filter::parser::tests::parse_tag_name_starting_with_and ... ok
[INFO] [stdout] test filter::parser::tests::parse_tag_name_starting_with_not ... ok
[INFO] [stdout] test filter::parser::tests::parse_complex_expression ... ok
[INFO] [stdout] test filter::parser::tests::parse_chained_or ... ok
[INFO] [stdout] test filter::parser::tests::parse_cmp_gt_number ... ok
[INFO] [stdout] test graph::adjacency::tests::remove_entity_edges ... ok
[INFO] [stdout] test filter::parser::tests::parse_lt_operator ... ok
[INFO] [stdout] test filter::parser::tests::parse_has_with_spaces ... ok
[INFO] [stdout] test graph::adjacency::tests::remove_nonexistent_entity_is_noop ... ok
[INFO] [stdout] test graph::adjacency::tests::remove_cleans_up_reverse_entry ... ok
[INFO] [stdout] test graph::adjacency::tests::add_forward_and_reverse_edges ... ok
[INFO] [stdout] test filter::parser::tests::parse_tag_name_starting_with_or ... ok
[INFO] [stdout] test graph::bitmap::tests::count_ones_popcount ... ok
[INFO] [stdout] test graph::adjacency::tests::sources_to_nonexistent_target ... ok
[INFO] [stdout] test graph::bitmap::tests::empty_bitmap_operations ... ok
[INFO] [stdout] test graph::bitmap::tests::intersect_multiple_bitmaps ... ok
[INFO] [stdout] test graph::adjacency::tests::sources_to_without_type_filter ... ok
[INFO] [stdout] test graph::adjacency::tests::targets_from_nonexistent_entity ... ok
[INFO] [stdout] test graph::adjacency::tests::targets_from_without_type_filter ... ok
[INFO] [stdout] test graph::bitmap::tests::add_remove_tag_tracking ... ok
[INFO] [stdout] test graph::bitmap::tests::auto_grow_capacity ... ok
[INFO] [stdout] test graph::adjacency::tests::sources_to_with_type_filter ... ok
[INFO] [stdout] test graph::adjacency::tests::targets_from_with_type_filter ... ok
[INFO] [stdout] test graph::bitmap::tests::intersect_single_bitmap ... ok
[INFO] [stdout] test graph::bitmap::tests::iterate_set_bits ... ok
[INFO] [stdout] test graph::bitmap::tests::negate_bitmap ... ok
[INFO] [stdout] test graph::bitmap::tests::remove_nonexistent_entity_is_noop ... ok
[INFO] [stdout] test graph::bitmap::tests::union_multiple_bitmaps ... ok
[INFO] [stdout] test graph::changelog::tests::changelog_gap_equality ... ok
[INFO] [stdout] test graph::changelog::tests::changelog_gap_display ... ok
[INFO] [stdout] test graph::bitmap::tests::negate_exact_word_boundary ... ok
[INFO] [stdout] test graph::bitmap::tests::set_and_check_individual_bits ... ok
[INFO] [stdout] test graph::entity_graph::tests::add_entity_missing_id_fails ... ok
[INFO] [stdout] test graph::entity_graph::tests::add_entity_with_valid_id ... ok
[INFO] [stdout] test graph::changelog::tests::diff_op_clone ... ok
[INFO] [stdout] test graph::changelog::tests::diff_op_equality ... ok
[INFO] [stdout] test graph::changelog::tests::graph_diff_clone ... ok
[INFO] [stdout] test graph::changelog::tests::graph_diff_construction ... ok
[INFO] [stdout] test graph::changelog::tests::now_nanos_returns_positive ... ok
[INFO] [stdout] test graph::entity_graph::tests::changelog_entries_have_timestamps ... ok
[INFO] [stdout] test graph::bitmap::tests::unknown_tag_returns_none ... ok
[INFO] [stdout] test graph::entity_graph::tests::changelog_bounded_to_max_size ... ok
[INFO] [stdout] test graph::entity_graph::tests::add_duplicate_ref_fails ... ok
[INFO] [stdout] test graph::entity_graph::tests::changes_since_returns_subset ... ok
[INFO] [stdout] test graph::entity_graph::tests::children_returns_direct_refs ... ok
[INFO] [stdout] test graph::entity_graph::tests::classify_equip ... ok
[INFO] [stdout] test graph::entity_graph::tests::classify_point ... ok
[INFO] [stdout] test graph::entity_graph::tests::classify_site ... ok
[INFO] [stdout] test graph::entity_graph::tests::classify_unknown ... ok
[INFO] [stdout] test graph::entity_graph::tests::configurable_changelog_capacity ... ok
[INFO] [stdout] test graph::entity_graph::tests::contains_check ... ok
[INFO] [stdout] test graph::entity_graph::tests::add_entity_non_ref_id_fails ... ok
[INFO] [stdout] test graph::entity_graph::tests::equip_points_returns_points_only ... ok
[INFO] [stdout] test graph::entity_graph::tests::equip_points_with_filter ... ok
[INFO] [stdout] test graph::entity_graph::tests::changes_since_binary_search_equivalence ... ok
[INFO] [stdout] test codecs::json::v3::tests::time_encoding_format ... ok
[INFO] [stdout] test graph::entity_graph::tests::from_grid_skips_rows_without_id ... ok
[INFO] [stdout] test graph::entity_graph::tests::from_grid_round_trip ... ok
[INFO] [stdout] test graph::entity_graph::tests::get_missing_entity_returns_none ... ok
[INFO] [stdout] test graph::entity_graph::tests::len_and_is_empty ... ok
[INFO] [stdout] test graph::entity_graph::tests::changelog_gap_on_version_zero_after_eviction ... ok
[INFO] [stdout] test graph::entity_graph::tests::hierarchy_tree_from_site ... ok
[INFO] [stdout] test graph::entity_graph::tests::id_freelist_recycles_removed_ids ... ok
[INFO] [stdout] test graph::entity_graph::tests::hierarchy_tree_max_depth ... ok
[INFO] [stdout] test graph::entity_graph::tests::get_existing_entity ... ok
[INFO] [stdout] test graph::entity_graph::tests::query_cache_invalidated_by_mutation ... ok
[INFO] [stdout] test graph::entity_graph::tests::no_gap_when_capacity_sufficient ... ok
[INFO] [stdout] test graph::entity_graph::tests::query_cache_returns_same_results ... ok
[INFO] [stdout] test graph::entity_graph::tests::read_invalid_filter ... ok
[INFO] [stdout] test graph::entity_graph::tests::read_limit_parameter_works ... ok
[INFO] [stdout] test graph::entity_graph::tests::read_with_and_filter ... ok
[INFO] [stdout] test graph::entity_graph::tests::read_with_comparison_filter ... ok
[INFO] [stdout] test graph::entity_graph::tests::changelog_records_add_update_remove ... ok
[INFO] [stdout] test graph::entity_graph::tests::read_returns_grid ... ok
[INFO] [stdout] test graph::entity_graph::tests::read_with_or_filter ... ok
[INFO] [stdout] test graph::entity_graph::tests::read_with_simple_has_filter ... ok
[INFO] [stdout] test graph::entity_graph::tests::ref_chain_empty_for_nonexistent ... ok
[INFO] [stdout] test graph::entity_graph::tests::refs_from_returns_targets ... ok
[INFO] [stdout] test graph::entity_graph::tests::remove_entity ... ok
[INFO] [stdout] test graph::entity_graph::tests::remove_missing_entity_fails ... ok
[INFO] [stdout] test graph::entity_graph::tests::ref_chain_walks_equip_to_site ... ok
[INFO] [stdout] test graph::entity_graph::tests::site_for_returns_site_itself ... ok
[INFO] [stdout] test graph::entity_graph::tests::site_for_walks_from_equip ... ok
[INFO] [stdout] test graph::entity_graph::tests::refs_from_nonexistent_entity ... ok
[INFO] [stdout] test graph::entity_graph::tests::to_grid_empty_result ... ok
[INFO] [stdout] test graph::entity_graph::tests::refs_to_returns_sources ... ok
[INFO] [stdout] test graph::entity_graph::tests::site_for_walks_from_point ... ok
[INFO] [stdout] test graph::entity_graph::tests::hierarchy_tree_missing_root ... ok
[INFO] [stdout] test graph::entity_graph::tests::type_filtered_ref_queries ... ok
[INFO] [stdout] test graph::entity_graph::tests::ref_chain_stops_on_missing_tag ... ok
[INFO] [stdout] test graph::entity_graph::tests::to_grid_empty_filter_exports_all ... ok
[INFO] [stdout] test graph::entity_graph::tests::refs_to_nonexistent_entity ... ok
[INFO] [stdout] test graph::entity_graph::tests::update_delta_indexing_preserves_unchanged_tags ... ok
[INFO] [stdout] test graph::entity_graph::tests::update_diff_carries_delta_tags ... ok
[INFO] [stdout] test graph::entity_graph::tests::update_merges_changes ... ok
[INFO] [stdout] test graph::entity_graph::tests::update_missing_entity_fails ... ok
[INFO] [stdout] test graph::entity_graph::tests::update_reindexes_refs ... ok
[INFO] [stdout] test graph::entity_graph::tests::update_reindexes_tags ... ok
[INFO] [stdout] test graph::entity_graph::tests::query_cache_capacity_scales_with_entity_count ... ok
[INFO] [stdout] test graph::entity_graph::tests::validate_detects_dangling_refs ... ok
[INFO] [stdout] test graph::entity_graph::tests::version_increments_on_mutations ... ok
[INFO] [stdout] test graph::shared::tests::broadcast_on_update_and_remove ... ok
[INFO] [stdout] test graph::shared::tests::changes_since_through_shared ... ok
[INFO] [stdout] test graph::shared::tests::clone_shares_state ... ok
[INFO] [stdout] test graph::shared::tests::concurrent_read_access ... ok
[INFO] [stdout] test graph::shared::tests::contains_check ... ok
[INFO] [stdout] test graph::shared::tests::no_subscribers_does_not_panic ... ok
[INFO] [stdout] test graph::shared::tests::convenience_methods ... ok
[INFO] [stdout] test graph::shared::tests::default_creates_empty ... ok
[INFO] [stdout] test graph::shared::tests::refs_from_and_to ... ok
[INFO] [stdout] test graph::subscriber::tests::subscriber_receives_diffs ... ok
[INFO] [stdout] test graph::value_index::tests::eq_lookup_returns_matching_ids ... ok
[INFO] [stdout] test graph::subscriber::tests::subscriber_from_version ... ok
[INFO] [stdout] test graph::shared::tests::read_all_filter ... ok
[INFO] [stdout] test graph::shared::tests::thread_safe_add_get ... ok
[INFO] [stdout] test graph::shared::tests::version_tracking_across_operations ... ok
[INFO] [stdout] test graph::subscriber::tests::subscriber_coalesces_batches ... ok
[INFO] [stdout] test graph::shared::tests::concurrent_reads_from_threads ... ok
[INFO] [stdout] test graph::value_index::tests::lt_lookup_returns_lesser_ids ... ok
[INFO] [stdout] test graph::value_index::tests::gt_lookup_returns_greater_ids ... ok
[INFO] [stdout] test graph::value_index::tests::remove_entity_from_index ... ok
[INFO] [stdout] test graph::shared::tests::subscribe_receives_versions ... ok
[INFO] [stdout] test graph::shared::tests::concurrent_read_write_mix ... ok
[INFO] [stdout] test graph::value_index::tests::string_index_works ... ok
[INFO] [stdout] test graph::value_index::tests::unindexed_field_returns_empty ... ok
[INFO] [stdout] test kinds::coord::tests::coord_display ... ok
[INFO] [stdout] test kinds::coord::tests::coord_is_copy ... ok
[INFO] [stdout] test kinds::coord::tests::coord_equality ... ok
[INFO] [stdout] test kinds::datetime::tests::hdatetime_different_tz_name ... ok
[INFO] [stdout] test graph::value_index::tests::ge_and_le_lookups ... ok
[INFO] [stdout] test graph::value_index::tests::ne_lookup_excludes_matching ... ok
[INFO] [stdout] test kinds::datetime::tests::hdatetime_display ... ok
[INFO] [stdout] test graph::shared::tests::concurrent_writes_from_threads ... ok
[INFO] [stdout] test kinds::datetime::tests::hdatetime_utc ... ok
[INFO] [stdout] test kinds::kind::tests::kind_bool ... ok
[INFO] [stdout] test kinds::kind::tests::kind_null ... ok
[INFO] [stdout] test kinds::kind::tests::kind_list ... ok
[INFO] [stdout] test kinds::kind::tests::kind_number ... ok
[INFO] [stdout] test kinds::kind::tests::kind_marker ... ok
[INFO] [stdout] test kinds::kind::tests::kind_str ... ok
[INFO] [stdout] test kinds::number::tests::number_convert_to_unitless_error ... ok
[INFO] [stdout] test kinds::number::tests::number_equality ... ok
[INFO] [stdout] test kinds::number::tests::number_hashable ... ok
[INFO] [stdout] test kinds::number::tests::number_nan_equality ... ok
[INFO] [stdout] test kinds::number::tests::number_integer_display ... ok
[INFO] [stdout] test kinds::datetime::tests::hdatetime_equality ... ok
[INFO] [stdout] test kinds::kind::tests::kind_from_conversions ... ok
[INFO] [stdout] test kinds::kind::tests::kind_ref ... ok
[INFO] [stdout] test kinds::number::tests::number_ordering_same_unit ... ok
[INFO] [stdout] test kinds::number::tests::number_special_nan ... ok
[INFO] [stdout] test kinds::number::tests::number_special_neg_inf ... ok
[INFO] [stdout] test kinds::number::tests::number_unitless ... ok
[INFO] [stdout] test kinds::number::tests::number_with_unit ... ok
[INFO] [stdout] test kinds::number::tests::number_zero ... ok
[INFO] [stdout] test kinds::ref_::tests::ref_display_without_dis ... ok
[INFO] [stdout] test kinds::ref_::tests::ref_display_with_dis ... ok
[INFO] [stdout] test kinds::number::tests::number_convert_to_by_symbol ... ok
[INFO] [stdout] test kinds::number::tests::number_convert_to_incompatible ... ok
[INFO] [stdout] test kinds::ref_::tests::ref_hash_ignores_dis ... ok
[INFO] [stdout] test kinds::number::tests::number_negative ... ok
[INFO] [stdout] test kinds::number::tests::number_ordering_different_unit ... ok
[INFO] [stdout] test kinds::number::tests::number_scientific ... ok
[INFO] [stdout] test kinds::number::tests::number_special_inf ... ok
[INFO] [stdout] test kinds::kind::tests::kind_equality ... ok
[INFO] [stdout] test kinds::singletons::tests::marker_equality ... ok
[INFO] [stdout] test kinds::number::tests::number_convert_to_celsius ... ok
[INFO] [stdout] test kinds::singletons::tests::na_display ... ok
[INFO] [stdout] test kinds::ref_::tests::ref_inequality ... ok
[INFO] [stdout] test kinds::singletons::tests::marker_display ... ok
[INFO] [stdout] test kinds::ref_::tests::ref_equality_ignores_dis ... ok
[INFO] [stdout] test kinds::ref_::tests::ref_from_val_convenience ... ok
[INFO] [stdout] test kinds::singletons::tests::singletons_are_hashable ... ok
[INFO] [stdout] test kinds::symbol::tests::symbol_display ... ok
[INFO] [stdout] test kinds::tz::tests::tz_gmt ... ok
[INFO] [stdout] test kinds::tz::tests::tz_full_iana_path ... ok
[INFO] [stdout] test kinds::tz::tests::tz_london ... ok
[INFO] [stdout] test kinds::tz::tests::tz_map_loaded ... ok
[INFO] [stdout] test kinds::symbol::tests::symbol_val ... ok
[INFO] [stdout] test kinds::tz::tests::tz_new_york ... ok
[INFO] [stdout] test kinds::singletons::tests::remove_display ... ok
[INFO] [stdout] test kinds::singletons::tests::singletons_are_copy ... ok
[INFO] [stdout] test kinds::symbol::tests::symbol_equality ... ok
[INFO] [stdout] test kinds::tz::tests::tz_rel ... ok
[INFO] [stdout] test kinds::tz::tests::tz_unknown ... ok
[INFO] [stdout] test kinds::tz::tests::tz_utc ... ok
[INFO] [stdout] test kinds::units::tests::unit_base_unit_lookup ... ok
[INFO] [stdout] test kinds::units::tests::unit_compatible_same_quantity ... ok
[INFO] [stdout] test kinds::units::tests::unit_compatible_unknown ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_c_to_f ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_c_to_k ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_f_to_c ... ok
[INFO] [stdout] test kinds::units::tests::unit_compatible_different_quantity ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_by_symbol ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_feet_to_meters ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_incompatible ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_gallons_to_liters ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_k_to_c ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_identity ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_f_to_k ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_hours_to_seconds ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_bar_to_psi ... ok
[INFO] [stdout] test kinds::units::tests::unit_lookup_by_symbol ... ok
[INFO] [stdout] test kinds::units::tests::unit_not_found ... ok
[INFO] [stdout] test kinds::units::tests::unit_lookup_celsius ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_psi_to_kpa ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_unknown ... ok
[INFO] [stdout] test kinds::units::tests::unit_error_display ... ok
[INFO] [stdout] test kinds::units::tests::unit_has_quantity ... ok
[INFO] [stdout] test kinds::units::tests::unit_lookup_by_name ... ok
[INFO] [stdout] test kinds::units::tests::unit_quantity_lookup ... ok
[INFO] [stdout] test ontology::conjunct::tests::contains_check ... ok
[INFO] [stdout] test kinds::units::tests::units_loaded ... ok
[INFO] [stdout] test kinds::uri::tests::uri_display ... ok
[INFO] [stdout] test kinds::uri::tests::uri_equality ... ok
[INFO] [stdout] test kinds::uri::tests::uri_val ... ok
[INFO] [stdout] test kinds::xstr::tests::xstr_display ... ok
[INFO] [stdout] test kinds::xstr::tests::xstr_equality ... ok
[INFO] [stdout] test ontology::conjunct::tests::register_and_decompose ... ok
[INFO] [stdout] test ontology::def::tests::kind_conjunct ... ok
[INFO] [stdout] test ontology::conjunct::tests::unknown_returns_none ... ok
[INFO] [stdout] test ontology::def::tests::def_equality ... ok
[INFO] [stdout] test ontology::def::tests::def_inequality ... ok
[INFO] [stdout] test ontology::def::tests::kind_lib ... ok
[INFO] [stdout] test ontology::def::tests::kind_lib_takes_priority_over_conjunct ... ok
[INFO] [stdout] test ontology::def::tests::kind_val ... ok
[INFO] [stdout] test ontology::def::tests::kind_val_via_scalar ... ok
[INFO] [stdout] test ontology::conjunct::tests::three_part_conjunct ... ok
[INFO] [stdout] test ontology::def::tests::kind_choice ... ok
[INFO] [stdout] test ontology::conjunct::tests::len_and_empty ... ok
[INFO] [stdout] test ontology::graph_validation::tests::validate_graph_empty_graph ... ok
[INFO] [stdout] test ontology::graph_validation::tests::validate_graph_dangling_refs ... ok
[INFO] [stdout] test ontology::graph_validation::tests::validate_graph_summary_counts ... ok
[INFO] [stdout] test ontology::lib::tests::lib_with_defs ... ok
[INFO] [stdout] test ontology::lib::tests::new_lib_defaults ... ok
[INFO] [stdout] test ontology::graph_validation::tests::validate_graph_no_dangling_refs ... ok
[INFO] [stdout] test ontology::def::tests::kind_entity ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_kwh_to_btu ... ok
[INFO] [stdout] test kinds::units::tests::unit_convert_miles_to_km ... ok
[INFO] [stdout] test ontology::def::tests::kind_feature ... ok
[INFO] [stdout] test ontology::namespace::tests::conjunct_parts_decompose ... ok
[INFO] [stdout] test ontology::namespace::tests::fits_explain_missing_marker ... ok
[INFO] [stdout] test ontology::namespace::tests::choices_from_index ... ok
[INFO] [stdout] test ontology::namespace::tests::fits_with_valid_entity ... ok
[INFO] [stdout] test ontology::namespace::tests::def_count ... ok
[INFO] [stdout] test ontology::namespace::tests::is_a_ancestor ... ok
[INFO] [stdout] test ontology::namespace::tests::is_a_false_for_unrelated ... ok
[INFO] [stdout] test ontology::namespace::tests::is_a_direct_parent ... ok
[INFO] [stdout] test ontology::namespace::tests::is_a_self ... ok
[INFO] [stdout] test ontology::namespace::tests::libs_registered ... ok
[INFO] [stdout] test ontology::namespace::tests::fits_explain_no_issues_when_valid ... ok
[INFO] [stdout] test ontology::namespace::tests::register_and_get_def ... ok
[INFO] [stdout] test ontology::namespace::tests::new_namespace_is_empty ... ok
[INFO] [stdout] test ontology::namespace::tests::register_and_get_spec ... ok
[INFO] [stdout] test ontology::namespace::tests::subtypes_direct ... ok
[INFO] [stdout] test ontology::namespace::tests::supertypes_chain ... ok
[INFO] [stdout] test ontology::namespace::tests::mandatory_tags_for_ahu ... ok
[INFO] [stdout] test ontology::def::tests::kind_marker_default ... ok
[INFO] [stdout] test ontology::namespace::tests::conjunct_parts_unknown ... ok
[INFO] [stdout] test ontology::namespace::tests::specs_filtered_by_lib ... ok
[INFO] [stdout] test ontology::namespace::tests::unload_bundled_fails ... ok
[INFO] [stdout] test ontology::namespace::tests::unload_with_dependent_fails ... ok
[INFO] [stdout] test ontology::namespace::tests::validate_entity_finds_missing_markers ... ok
[INFO] [stdout] test ontology::namespace::tests::tags_for_entity_type ... ok
[INFO] [stdout] test ontology::namespace::tests::fits_missing_mandatory ... ok
[INFO] [stdout] test ontology::namespace::tests::unload_lib_removes_specs ... ok
[INFO] [stdout] test ontology::taxonomy::tests::all_subtypes_full_tree ... ok
[INFO] [stdout] test ontology::taxonomy::tests::empty_tree ... ok
[INFO] [stdout] test ontology::taxonomy::tests::is_subtype_direct_parent ... ok
[INFO] [stdout] test ontology::taxonomy::tests::is_subtype_false_for_child ... ok
[INFO] [stdout] test ontology::taxonomy::tests::is_subtype_false_for_unrelated ... ok
[INFO] [stdout] test ontology::taxonomy::tests::is_subtype_ancestor ... ok
[INFO] [stdout] test ontology::namespace::tests::validate_entity_no_issues_for_valid ... ok
[INFO] [stdout] test ontology::taxonomy::tests::all_subtypes_leaf ... ok
[INFO] [stdout] test ontology::taxonomy::tests::multiple_inheritance ... ok
[INFO] [stdout] test ontology::taxonomy::tests::mandatory_tags_basic ... ok
[INFO] [stdout] test ontology::taxonomy::tests::subtypes_of_direct_children ... ok
[INFO] [stdout] test ontology::taxonomy::tests::mandatory_tags_caching ... ok
[INFO] [stdout] test ontology::taxonomy::tests::subtypes_of_leaf ... ok
[INFO] [stdout] test ontology::taxonomy::tests::supertypes_of_bfs_order ... ok
[INFO] [stdout] test ontology::taxonomy::tests::contains_and_len ... ok
[INFO] [stdout] test ontology::taxonomy::tests::is_subtype_self ... ok
[INFO] [stdout] test ontology::trio_loader::tests::load_empty_trio ... ok
[INFO] [stdout] test ontology::taxonomy::tests::supertypes_of_root ... ok
[INFO] [stdout] test ontology::trio_loader::tests::str_val_missing ... ok
[INFO] [stdout] test ontology::trio_loader::tests::str_val_present ... ok
[INFO] [stdout] test ontology::trio_loader::tests::symbol_list_single ... ok
[INFO] [stdout] test ontology::trio_loader::tests::to_symbol_str_from_number_is_none ... ok
[INFO] [stdout] test ontology::trio_loader::tests::symbol_list_missing_tag ... ok
[INFO] [stdout] test ontology::trio_loader::tests::to_symbol_str_from_ref ... ok
[INFO] [stdout] test ontology::trio_loader::tests::load_small_trio_snippet ... ok
[INFO] [stdout] test ontology::trio_loader::tests::load_trio_with_of_tag ... ok
[INFO] [stdout] test ontology::trio_loader::tests::symbol_list_multiple ... ok
[INFO] [stdout] test ontology::trio_loader::tests::to_symbol_str_from_str ... ok
[INFO] [stdout] test ontology::trio_loader::tests::to_symbol_str_from_symbol ... ok
[INFO] [stdout] test ontology::validation::tests::fit_issue_equality ... ok
[INFO] [stdout] test ontology::validation::tests::fit_issue_missing_marker ... ok
[INFO] [stdout] test xeto::ast::tests::slot_def_new ... ok
[INFO] [stdout] test xeto::ast::tests::spec_def_new ... ok
[INFO] [stdout] test ontology::validation::tests::validation_issue ... ok
[INFO] [stdout] test xeto::ast::tests::xeto_file_empty ... ok
[INFO] [stdout] test xeto::export::tests::export_lib_with_pragma ... ok
[INFO] [stdout] test xeto::export::tests::export_maybe_slot ... ok
[INFO] [stdout] test xeto::export::tests::export_roundtrip ... ok
[INFO] [stdout] test xeto::export::tests::export_abstract_spec ... ok
[INFO] [stdout] test ontology::taxonomy::tests::mandatory_tags_self_mandatory ... ok
[INFO] [stdout] test xeto::export::tests::export_spec_with_query_slot ... ok
[INFO] [stdout] test xeto::export::tests::export_spec_with_typed_slots ... ok
[INFO] [stdout] test xeto::fitting::tests::constraint_min_val ... ok
[INFO] [stdout] test xeto::export::tests::format_meta_tag_escapes_newlines_and_tabs ... ok
[INFO] [stdout] test xeto::export::tests::export_slot_default_value_escapes_strings ... ok
[INFO] [stdout] test xeto::export::tests::format_meta_tag_escapes_strings ... ok
[INFO] [stdout] test xeto::export::tests::export_simple_spec ... ok
[INFO] [stdout] test xeto::fitting::tests::constraint_list_max_size ... ok
[INFO] [stdout] test xeto::export::tests::export_spec_with_doc ... ok
[INFO] [stdout] test xeto::fitting::tests::constraint_max_val ... ok
[INFO] [stdout] test xeto::fitting::tests::constraint_unitless ... ok
[INFO] [stdout] test xeto::fitting::tests::entity_fits_with_all_markers ... ok
[INFO] [stdout] test xeto::fitting::tests::entity_missing_mandatory_marker_fails ... ok
[INFO] [stdout] test xeto::fitting::tests::fits_explain_returns_missing_marker_issues ... ok
[INFO] [stdout] test xeto::fitting::tests::maybe_slots_are_skipped ... ok
[INFO] [stdout] test xeto::fitting::tests::query_traversal_follows_refs ... ok
[INFO] [stdout] test xeto::fitting::tests::query_traversal_transitive ... ok
[INFO] [stdout] test xeto::fitting::tests::traverse_refs_handles_cycles ... ok
[INFO] [stdout] test xeto::fitting::tests::type_checking_correct_type ... ok
[INFO] [stdout] test xeto::fitting::tests::type_checking_wrong_type ... ok
[INFO] [stdout] test xeto::fitting::tests::valid_constraints_produce_no_issues ... ok
[INFO] [stdout] test xeto::lexer::tests::bare_cr_as_whitespace ... ok
[INFO] [stdout] test xeto::fitting::tests::fits_explain_empty_when_valid ... ok
[INFO] [stdout] test xeto::lexer::tests::comments ... ok
[INFO] [stdout] test xeto::fitting::tests::fitting_checks_inherited_markers ... ok
[INFO] [stdout] test xeto::fitting::tests::fits_with_resolver_none_works ... ok
[INFO] [stdout] test xeto::fitting::tests::constraint_non_empty ... ok
[INFO] [stdout] test xeto::fitting::tests::kind_type_name_coverage ... ok
[INFO] [stdout] test xeto::fitting::tests::invalid_regex_pattern_produces_constraint_violation ... ok
[INFO] [stdout] test xeto::lexer::tests::delimiters ... ok
[INFO] [stdout] test xeto::lexer::tests::newlines_collapsed ... ok
[INFO] [stdout] test xeto::lexer::tests::colon_colon_qualified_name ... ok
[INFO] [stdout] test xeto::lexer::tests::complex_sequence ... ok
[INFO] [stdout] test xeto::lexer::tests::string_escape_sequences ... ok
[INFO] [stdout] test xeto::lexer::tests::number_with_exponent ... ok
[INFO] [stdout] test xeto::lexer::tests::number_with_unit ... ok
[INFO] [stdout] test xeto::lexer::tests::number_exponent_without_fraction ... ok
[INFO] [stdout] test xeto::lexer::tests::tokenize_numbers ... ok
[INFO] [stdout] test xeto::lexer::tests::tokenize_strings ... ok
[INFO] [stdout] test xeto::loader::tests::load_and_unload_roundtrip ... ok
[INFO] [stdout] test xeto::loader::tests::load_missing_dependency_fails ... ok
[INFO] [stdout] test xeto::loader::tests::load_registers_in_namespace ... ok
[INFO] [stdout] test xeto::loader::tests::load_simple_spec ... ok
[INFO] [stdout] test xeto::lexer::tests::token_positions ... ok
[INFO] [stdout] test xeto::lexer::tests::tokenize_identifiers ... ok
[INFO] [stdout] test xeto::loader::tests::load_multiple_specs ... ok
[INFO] [stdout] test xeto::loader::tests::load_with_pragma ... ok
[INFO] [stdout] test xeto::loader::tests::load_with_deps_circular_detected ... ok
[INFO] [stdout] test xeto::loader::tests::load_with_deps_respects_order ... ok
[INFO] [stdout] test xeto::loader::tests::load_with_deps_single_dir ... ok
[INFO] [stdout] test xeto::fitting::tests::constraint_pattern ... ok
[INFO] [stdout] test xeto::parser::tests::parse_empty_file ... ok
[INFO] [stdout] test xeto::parser::tests::parse_global_slots ... ok
[INFO] [stdout] test xeto::parser::tests::parse_marker_slots ... ok
[INFO] [stdout] test xeto::parser::tests::parse_maybe_marker_slot ... ok
[INFO] [stdout] test xeto::lexer::tests::unterminated_string_error ... ok
[INFO] [stdout] test xeto::loader::tests::load_with_deps_duplicate_name ... ok
[INFO] [stdout] test xeto::parser::tests::parse_defaults ... ok
[INFO] [stdout] test xeto::parser::tests::meta_dict_value ... ok
[INFO] [stdout] test xeto::parser::tests::meta_parameterized_type ... ok
[INFO] [stdout] test xeto::parser::tests::parse_doc_comments ... ok
[INFO] [stdout] test xeto::parser::tests::parse_number_defaults ... ok
[INFO] [stdout] test xeto::parser::tests::parse_qualified_type_refs ... ok
[INFO] [stdout] test xeto::parser::tests::parse_dotted_type_refs ... ok
[INFO] [stdout] test xeto::parser::tests::parse_pragma ... ok
[INFO] [stdout] test xeto::parser::tests::parse_query_slots ... ok
[INFO] [stdout] test xeto::parser::tests::parse_section_separator_comments ... ok
[INFO] [stdout] test xeto::parser::tests::parse_simple_spec ... ok
[INFO] [stdout] test xeto::parser::tests::parse_multiple_specs ... ok
[INFO] [stdout] test xeto::parser::tests::parse_nested_body ... ok
[INFO] [stdout] test xeto::parser::tests::parse_spec_no_base ... ok
[INFO] [stdout] test xeto::parser::tests::parse_spec_with_meta ... ok
[INFO] [stdout] test xeto::parser::tests::parse_typed_slots ... ok
[INFO] [stdout] test xeto::parser::tests::slot_maybe_after_params ... ok
[INFO] [stdout] test xeto::parser::tests::parse_slot_doc_comments ... ok
[INFO] [stdout] test xeto::resolver::tests::dependency_ordering ... ok
[INFO] [stdout] test xeto::resolver::tests::circular_dependency_detected ... ok
[INFO] [stdout] test xeto::parser::tests::spec_colon_meta_no_base ... ok
[INFO] [stdout] test xeto::resolver::tests::dependency_order_single_lib ... ok
[INFO] [stdout] test xeto::resolver::tests::resolve_finds_in_current_lib ... ok
[INFO] [stdout] test xeto::resolver::tests::resolve_finds_in_sys ... ok
[INFO] [stdout] test xeto::resolver::tests::resolve_qualified_returns_as_is ... ok
[INFO] [stdout] test xeto::resolver::tests::resolve_unknown_returns_none ... ok
[INFO] [stdout] test xeto::resolver::tests::resolve_finds_in_dependencies ... ok
[INFO] [stdout] test xeto::resolver::tests::resolve_sys_builtin_from_any_context ... ok
[INFO] [stdout] test xeto::spec::tests::effective_slots_cycle_does_not_stackoverflow ... ok
[INFO] [stdout] test xeto::spec::tests::spec_mandatory_markers ... ok
[INFO] [stdout] test xeto::spec::tests::spec_markers ... ok
[INFO] [stdout] test xeto::spec::tests::effective_slots_includes_inherited ... ok
[INFO] [stdout] test xeto::spec::tests::slot_from_ast_slot_def ... ok
[INFO] [stdout] test xeto::spec::tests::spec_from_def_conversion ... ok
[INFO] [stdout] test xeto::spec::tests::spec_point_specs_no_points_slot ... ok
[INFO] [stdout] test xeto::spec::tests::spec_new ... ok
[INFO] [stdout] test xeto::spec::tests::spec_point_specs ... ok
[INFO] [stdout] test xeto::parser::tests::parse_maybe_slots ... ok
[INFO] [stdout] test xeto::parser::tests::parse_meta_with_typed_value ... ok
[INFO] [stdout] test xeto::spec::tests::slot_is_maybe ... ok
[INFO] [stdout] test xeto::resolver::tests::resolve_fallback_to_all_libs ... ok
[INFO] [stdout] test filter::eval::tests::spec_match_qualified_name ... ok
[INFO] [stdout] test filter::eval::tests::spec_match_with_namespace ... ok
[INFO] [stdout] test ontology::namespace::tests::load_standard_includes_xeto_specs ... ok
[INFO] [stdout] test ontology::namespace::tests::bundled_libs_cannot_be_unloaded ... ok
[INFO] [stdout] test auth::tests::test_derive_credentials ... ok
[INFO] [stdout] test filter::eval::tests::spec_match_no_fit ... ok
[INFO] [stdout] test auth::tests::test_full_handshake ... ok
[INFO] [stdout] test auth::tests::test_client_server_roundtrip ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 823 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.93s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/e2e.rs (/opt/rustwide/target/debug/deps/e2e-22af0fdd11d442b6)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test codec_round_trip_all_formats ... ok
[INFO] [stdout] test multi_codec_grid_fidelity ... ok
[INFO] [stdout] test graph_crud_lifecycle ... ok
[INFO] [stdout] test filter_round_trip_parse_and_match ... ok
[INFO] [stdout] test full_pipeline_load_build_query_validate_encode_decode ... ok
[INFO] [stdout] test ontology_fits_and_validation_in_graph ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running tests/graph_integration.rs (/opt/rustwide/target/debug/deps/graph_integration-a49db2bd7f8765e9)
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 28 tests
[INFO] [stdout] test add_remove_readd ... ok
[INFO] [stdout] test contains_after_operations ... ok
[INFO] [stdout] test changelog_integration ... ok
[INFO] [stdout] test empty_graph_queries ... ok
[INFO] [stdout] test error_on_invalid_filter ... ok
[INFO] [stdout] test filter_with_comparison ... ok
[INFO] [stdout] test filter_with_or ... ok
[INFO] [stdout] test filter_with_path_traversal ... ok
[INFO] [stdout] test from_grid_with_all_entities ... ok
[INFO] [stdout] test grid_round_trip ... ok
[INFO] [stdout] test load_entities_and_filter ... ok
[INFO] [stdout] test filter_with_limit ... ok
[INFO] [stdout] test multiple_updates_same_entity ... ok
[INFO] [stdout] test filter_with_missing ... ok
[INFO] [stdout] test ref_traversal_reverse ... ok
[INFO] [stdout] test ref_traversal_forward ... ok
[INFO] [stdout] test ref_traversal_all_types ... ok
[INFO] [stdout] test remove_updates_ref_indices ... ok
[INFO] [stdout] test bulk_import_100_entities ... ok
[INFO] [stdout] test shared_graph_read_closure ... ok
[INFO] [stdout] test shared_graph_concurrent_access ... ok
[INFO] [stdout] test shared_graph_update_and_version ... ok
[INFO] [stdout] test shared_graph_write_closure ... ok
[INFO] [stdout] test update_preserves_refs_in_query ... ok
[INFO] [stdout] test spec_fitting_with_namespace ... ok
[INFO] [stdout] test shared_graph_remove_and_verify ... ok
[INFO] [stdout] test read_returns_correct_grid_columns ... ok
[INFO] [stdout] test shared_graph_bulk_concurrent_writes ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ontology_integration.rs (/opt/rustwide/target/debug/deps/ontology_integration-d646615421d4f0d8)
[INFO] [stdout] 
[INFO] [stdout] running 29 tests
[INFO] [stdout] test fits_missing_equip_marker ... ok
[INFO] [stdout] test ahu_is_entity ... ok
[INFO] [stdout] test fits_valid_ahu_entity ... ok
[INFO] [stdout] test entity_def_kind ... ok
[INFO] [stdout] test ahu_is_not_point ... ok
[INFO] [stdout] test equip_subtypes_include_airhandlingequip ... ok
[INFO] [stdout] test ahu_is_marker ... ok
[INFO] [stdout] test ahu_supertypes ... ok
[INFO] [stdout] test ahu_is_not_site ... ok
[INFO] [stdout] test fits_explain_returns_issues ... ok
[INFO] [stdout] test conjunct_hot_water ... ok
[INFO] [stdout] test ahu_is_equip ... ok
[INFO] [stdout] test ahu_def_exists ... ok
[INFO] [stdout] test conjunct_ac_elec ... ok
[INFO] [stdout] test airhandlingequip_subtypes_include_ahu ... ok
[INFO] [stdout] test choice_def_exists ... ok
[INFO] [stdout] test mandatory_tags_for_ahu ... ok
[INFO] [stdout] test load_standard_defs_count ... ok
[INFO] [stdout] test lib_def_kind ... ok
[INFO] [stdout] test standard_libs_present ... ok
[INFO] [stdout] test lib_versions ... ok
[INFO] [stdout] test point_is_entity ... ok
[INFO] [stdout] test meter_is_equip ... ok
[INFO] [stdout] test non_conjunct_returns_none ... ok
[INFO] [stdout] test site_def_exists ... ok
[INFO] [stdout] test site_is_entity ... ok
[INFO] [stdout] test validate_entity_catches_missing_mandatory ... ok
[INFO] [stdout] test validate_entity_passes_for_valid_entity ... ok
[INFO] [stdout] test tags_for_entity_type ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.25s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests haystack_core
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/graph/subscriber.rs - graph::subscriber::GraphSubscriber (line 13) ... ignored
[INFO] [stdout] test src/lib.rs - (line 21) ... ok
[INFO] [stdout] test src/filter/mod.rs - filter (line 14) ... ok
[INFO] [stdout] test src/codecs/mod.rs - codecs (line 15) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.83s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 1.09s; merged doctests compilation took 0.26s
[INFO] running `Command { std: "docker" "inspect" "d96d1da67076396d6f4040aa103d7e6bdbf89cb644c57211c4995767c17c0869", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d96d1da67076396d6f4040aa103d7e6bdbf89cb644c57211c4995767c17c0869", kill_on_drop: false }`
[INFO] [stdout] d96d1da67076396d6f4040aa103d7e6bdbf89cb644c57211c4995767c17c0869
