[INFO] fetching crate subsume 0.11.0... [INFO] testing subsume-0.11.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate subsume 0.11.0 into /workspace/builds/worker-3-tc2/source [INFO] started tweaking crates.io crate subsume 0.11.0 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate subsume 0.11.0 [INFO] tweaked toml for crates.io crate subsume 0.11.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate subsume 0.11.0 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate subsume 0.11.0 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a089a6c7f7262ed8c243476d130d2e9cea270e55638fdead65781d91d36c9a80 [INFO] running `Command { std: "docker" "start" "-a" "a089a6c7f7262ed8c243476d130d2e9cea270e55638fdead65781d91d36c9a80", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a089a6c7f7262ed8c243476d130d2e9cea270e55638fdead65781d91d36c9a80", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a089a6c7f7262ed8c243476d130d2e9cea270e55638fdead65781d91d36c9a80", kill_on_drop: false }` [INFO] [stdout] a089a6c7f7262ed8c243476d130d2e9cea270e55638fdead65781d91d36c9a80 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 38171ec4aee8321fb471a592f47223b0b391af4921a112575f59cbae931c48b1 [INFO] running `Command { std: "docker" "start" "-a" "38171ec4aee8321fb471a592f47223b0b391af4921a112575f59cbae931c48b1", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.105 [INFO] [stderr] Compiling quote v1.0.43 [INFO] [stderr] Compiling libc v0.2.184 [INFO] [stderr] Compiling zerocopy v0.8.33 [INFO] [stderr] Compiling zmij v1.0.15 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling matrixmultiply v0.3.10 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling ndarray v0.16.1 [INFO] [stderr] Compiling lattix v0.6.0 [INFO] [stderr] Compiling subsume v0.11.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.43s [INFO] running `Command { std: "docker" "inspect" "38171ec4aee8321fb471a592f47223b0b391af4921a112575f59cbae931c48b1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "38171ec4aee8321fb471a592f47223b0b391af4921a112575f59cbae931c48b1", kill_on_drop: false }` [INFO] [stdout] 38171ec4aee8321fb471a592f47223b0b391af4921a112575f59cbae931c48b1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e3ae3590f6e2eab91b3eaca024b2bcc5f0c0f936070a27c2399db0f5b75b500e [INFO] running `Command { std: "docker" "start" "-a" "e3ae3590f6e2eab91b3eaca024b2bcc5f0c0f936070a27c2399db0f5b75b500e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.184 [INFO] [stderr] Compiling zerocopy v0.8.33 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling clap_lex v0.7.7 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling clap_builder v4.5.54 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling clap v4.5.54 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling zerocopy-derive v0.8.33 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling ndarray v0.16.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stderr] Compiling lattix v0.6.0 [INFO] [stderr] Compiling proptest v1.9.0 [INFO] [stderr] Compiling subsume v0.11.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 59.44s [INFO] running `Command { std: "docker" "inspect" "e3ae3590f6e2eab91b3eaca024b2bcc5f0c0f936070a27c2399db0f5b75b500e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e3ae3590f6e2eab91b3eaca024b2bcc5f0c0f936070a27c2399db0f5b75b500e", kill_on_drop: false }` [INFO] [stdout] e3ae3590f6e2eab91b3eaca024b2bcc5f0c0f936070a27c2399db0f5b75b500e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c3dc2618bb97e6501765a62caa640917ea2482a976ad0f99f6213984d051b994 [INFO] running `Command { std: "docker" "start" "-a" "c3dc2618bb97e6501765a62caa640917ea2482a976ad0f99f6213984d051b994", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.42s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/subsume-5e47cf5b838f0e77) [INFO] [stdout] [INFO] [stdout] running 718 tests [INFO] [stdout] test annular::tests::angular_containment_full ... ok [INFO] [stdout] test annular::tests::angular_containment_partial ... ok [INFO] [stdout] test annular::tests::angular_span_wrapping ... ok [INFO] [stdout] test annular::proptests::prop_surface_distance_symmetric ... ok [INFO] [stdout] test annular::proptests::prop_surface_distance_nonneg ... ok [INFO] [stdout] test annular::proptests::prop_containment_in_unit_interval ... ok [INFO] [stdout] test annular::tests::angular_span_simple ... ok [INFO] [stdout] test annular::tests::score_triple_mismatch ... ok [INFO] [stdout] test annular::tests::containment_identical_is_one ... ok [INFO] [stdout] test annular::tests::sector_new_valid ... ok [INFO] [stdout] test annular::tests::sector_rejects_invalid_radii ... ok [INFO] [stdout] test annular::tests::sector_rejects_non_finite ... ok [INFO] [stdout] test annular::tests::sector_from_polar ... ok [INFO] [stdout] test annular::tests::surface_distance_identical_is_zero ... ok [INFO] [stdout] test annular::tests::area_proxy_positive ... ok [INFO] [stdout] test annular::tests::containment_disjoint_is_zero ... ok [INFO] [stdout] test annular::tests::relation_rejects_zero_scale ... ok [INFO] [stdout] test annular::tests::relation_radial_scaling ... ok [INFO] [stdout] test annular::tests::relation_identity_preserves_sector ... ok [INFO] [stdout] test annular::tests::score_triple_perfect_match ... ok [INFO] [stdout] test annular::tests::surface_distance_different_centers ... ok [INFO] [stdout] test annular::proptests::prop_score_triple_nonneg ... ok [INFO] [stdout] test annular::tests::radial_width ... ok [INFO] [stdout] test annular::tests::containment_nested_is_one ... ok [INFO] [stdout] test annular::tests::model_construction ... ok [INFO] [stdout] test annular::tests::relation_rotation ... ok [INFO] [stdout] test annular::proptests::prop_area_proxy_nonneg ... ok [INFO] [stdout] test ball::tests::ball_from_log_radius ... ok [INFO] [stdout] test annular::proptests::prop_angular_span_positive ... ok [INFO] [stdout] test ball::tests::ball_new_valid ... ok [INFO] [stdout] test ball::tests::ball_rejects_non_finite_center ... ok [INFO] [stdout] test ball::tests::ball_rejects_non_finite_radius ... ok [INFO] [stdout] test ball::tests::ball_rejects_zero_radius ... ok [INFO] [stdout] test ball::tests::containment_dimension_mismatch ... ok [INFO] [stdout] test ball::tests::containment_disjoint_is_near_zero ... ok [INFO] [stdout] test ball::tests::containment_identical_is_half ... ok [INFO] [stdout] test ball::tests::containment_nested_is_near_one ... ok [INFO] [stdout] test ball::tests::containment_tangent ... ok [INFO] [stdout] test ball::tests::embedding_model_construction ... ok [INFO] [stdout] test ball::tests::embedding_model_rejects_dim_mismatch ... ok [INFO] [stdout] test ball::tests::log_volume_2d_unit_circle ... ok [INFO] [stdout] test ball::tests::log_volume_3d_unit_sphere ... ok [INFO] [stdout] test ball::tests::log_volume_scales_with_radius ... ok [INFO] [stdout] test ball::tests::overlap_disjoint_is_zero ... ok [INFO] [stdout] test ball::tests::overlap_identical_is_one ... ok [INFO] [stdout] test ball::proptests::prop_log_volume_finite ... ok [INFO] [stdout] test ball::tests::overlap_symmetric ... ok [INFO] [stdout] test ball::tests::regd_boundary_disjoint_is_large ... ok [INFO] [stdout] test ball::proptests::prop_containment_sharper_boundary ... ok [INFO] [stdout] test ball::proptests::prop_overlap_symmetric ... ok [INFO] [stdout] test ball::tests::regd_combined_dimension_mismatch ... ok [INFO] [stdout] test ball::tests::regd_depth_diverges_as_radius_shrinks ... ok [INFO] [stdout] test ball::tests::regd_depth_identical ... ok [INFO] [stdout] test ball::tests::regd_score_disjoint_is_high ... ok [INFO] [stdout] test ball::tests::regd_score_nested_is_low ... ok [INFO] [stdout] test ball::tests::relation_dimension_mismatch ... ok [INFO] [stdout] test ball::tests::relation_identity_preserves_ball ... ok [INFO] [stdout] test ball::tests::relation_rejects_zero_scale ... ok [INFO] [stdout] test ball::tests::relation_scaling ... ok [INFO] [stdout] test ball::tests::relation_translation ... ok [INFO] [stdout] test ball::tests::score_triple_mismatch ... ok [INFO] [stdout] test ball::tests::score_triple_perfect_match ... ok [INFO] [stdout] test ball::tests::sigmoid_large_negative ... ok [INFO] [stdout] test ball::tests::sigmoid_large_positive ... ok [INFO] [stdout] test ball::tests::sigmoid_zero ... ok [INFO] [stdout] test ball::tests::surface_distance_disjoint_is_positive ... ok [INFO] [stdout] test ball::tests::surface_distance_identical_is_zero ... ok [INFO] [stdout] test ball::tests::surface_distance_overlapping_is_zero ... ok [INFO] [stdout] test ball::tests::surface_distance_tangent_is_zero ... ok [INFO] [stdout] test cone_el::tests::compose_roles_adds_axes_and_apertures ... ok [INFO] [stdout] test cone_el::tests::disjointness_loss_positive_when_overlapping ... ok [INFO] [stdout] test ball::tests::regd_boundary_tangent_is_asinh_one ... ok [INFO] [stdout] test ball::tests::regd_depth_same_center_different_radius ... ok [INFO] [stdout] test cone_el::tests::existential_zero_role_preserves_filler ... ok [INFO] [stdout] test cone_el::tests::inclusion_loss_dimension_mismatch ... ok [INFO] [stdout] test ball::proptests::prop_overlap_in_unit_interval ... ok [INFO] [stdout] test cone_el::tests::inclusion_loss_zero_when_contained ... ok [INFO] [stdout] test ball::proptests::prop_score_triple_nonneg ... ok [INFO] [stdout] test cone_el::tests::inclusion_loss_positive_when_not_contained ... ok [INFO] [stdout] test ball::proptests::prop_relation_apply_preserves_dim ... ok [INFO] [stdout] test ball::proptests::prop_regd_score_finite ... ok [INFO] [stdout] test cone_query::tests::animal_and_not_cat_prefers_dog ... ok [INFO] [stdout] test cone_query::tests::atom_evaluates_to_itself ... ok [INFO] [stdout] test ball::proptests::prop_surface_distance_nonneg ... ok [INFO] [stdout] test ball::proptests::prop_surface_distance_symmetric ... ok [INFO] [stdout] test cone_query::tests::containment_score_inside_higher_than_outside ... ok [INFO] [stdout] test ball::proptests::prop_regd_depth_symmetric ... ok [INFO] [stdout] test cone_query::tests::intersection_empty_errors ... ok [INFO] [stdout] test cone_query::tests::projection_shifts_axes ... ok [INFO] [stdout] test ball::proptests::prop_containment_in_unit_interval ... ok [INFO] [stdout] test cone_query::tests::intersection_takes_min_aperture ... ok [INFO] [stdout] test cone_query::tests::union_score_takes_minimum_distance ... ok [INFO] [stdout] test cone_query::tests::two_hop_projection ... ok [INFO] [stdout] test dataset::tests::dataset_from_all_triples_splits_correctly ... ok [INFO] [stdout] test ball::proptests::prop_regd_depth_diverges_for_small_radius ... ok [INFO] [stdout] test dataset::tests::from_arrays_roundtrips ... ok [INFO] [stdout] test distance::tests::query2box_alpha_one_reduces_to_center_distance ... ok [INFO] [stdout] test dataset::tests::dataset_into_interned_roundtrips ... ok [INFO] [stdout] test ball::proptests::prop_regd_depth_nonneg ... ok [INFO] [stdout] test distance::tests::query2box_dim_mismatch ... ok [INFO] [stdout] test distance::tests::query2box_entity_inside_box ... ok [INFO] [stdout] test distance::tests::query2box_entity_outside_box ... ok [INFO] [stdout] test distance::tests::query2box_entity_on_boundary ... ok [INFO] [stdout] test distance::tests::query2box_alpha_zero_reduces_to_boundary_only ... ok [INFO] [stdout] test ball::tests::regd_boundary_nested_is_negative ... ok [INFO] [stdout] test cone_query::tests::complement_query_matches_cone_complement ... ok [INFO] [stdout] test ball::proptests::prop_regd_boundary_finite ... ok [INFO] [stdout] test cone_el::tests::prop_inclusion_loss_zero_when_same_axis_wider_parent ... ok [INFO] [stdout] test cone_el::tests::prop_disjointness_loss_nonneg ... ok [INFO] [stdout] test cone_el::tests::disjointness_loss_zero_when_separated ... ok [INFO] [stdout] test cone_query::tests::rank_entities_orders_by_distance ... ok [INFO] [stdout] test el::tests::test_compose_roles ... ok [INFO] [stdout] test el::tests::test_dimension_mismatch ... ok [INFO] [stdout] test el::tests::test_existential_box ... ok [INFO] [stdout] test el::tests::test_existential_box_documentation_choice ... ok [INFO] [stdout] test ball::tests::ball_rejects_negative_radius ... ok [INFO] [stdout] test el::tests::test_compose_roles_associative_deterministic ... ok [INFO] [stdout] test el::tests::test_identity_translation_composition ... ok [INFO] [stdout] test el::tests::test_existential_zero_offset_role_preserves_filler ... ok [INFO] [stdout] test el::tests::test_inclusion_loss_contained ... ok [INFO] [stdout] test el::tests::prop_intersection_loss_zero_when_d_is_universe_and_overlapping ... ok [INFO] [stdout] test el::tests::test_inclusion_loss_not_contained ... ok [INFO] [stdout] test el::tests::test_inclusion_loss_with_margin ... ok [INFO] [stdout] test el::tests::test_intersection_loss_disjoint ... ok [INFO] [stdout] test el::tests::test_intersection_loss_disjoint_surrogate ... ok [INFO] [stdout] test el::tests::test_intersection_loss_not_contained ... ok [INFO] [stdout] test el::tests::test_intersection_loss_overlap_still_works ... ok [INFO] [stdout] test el::tests::test_intersection_loss_overlapping ... ok [INFO] [stdout] test el::tests::test_role_chain_loss ... ok [INFO] [stdout] test el::tests::test_unit_box_inclusion ... ok [INFO] [stdout] test el_dataset::tests::test_empty_and_comments ... ok [INFO] [stdout] test el_dataset::tests::test_invalid_tag ... ok [INFO] [stdout] test el_dataset::tests::test_iter_roundtrip ... ok [INFO] [stdout] test el_dataset::tests::test_parse_all_forms ... ok [INFO] [stdout] test el_dataset::tests::test_wrong_field_count ... ok [INFO] [stdout] test el_training::tests::parse_all_axiom_types ... ok [INFO] [stdout] test el_training::tests::parse_basic_ontology ... ok [INFO] [stdout] test el_training::tests::parse_errors ... ok [INFO] [stdout] test el_training::tests::subsumption_closure_empty_ontology ... ok [INFO] [stdout] test el_training::tests::subsumption_closure_handles_cycles ... ok [INFO] [stdout] test el_training::tests::subsumption_closure_transitive ... ok [INFO] [stdout] test el::tests::test_inclusion_loss_matches_box2el ... ok [INFO] [stdout] test el::tests::prop_existential_box_offset_nonneg ... ok [INFO] [stdout] test el_training::tests::train_small_ontology_loss_decreases ... ok [INFO] [stdout] test cone_el::tests::prop_existential_aperture_nonneg ... ok [INFO] [stdout] test el::tests::prop_dimension_mismatch_errors ... ok [INFO] [stdout] test el::tests::prop_inclusion_loss_decreases_with_margin ... ok [INFO] [stdout] test el::tests::prop_compose_roles_associative ... ok [INFO] [stdout] test cone_el::tests::prop_inclusion_loss_nonneg ... ok [INFO] [stdout] test el::tests::prop_inclusion_loss_nonneg ... ok [INFO] [stdout] test el::tests::prop_role_chain_loss_nonneg ... ok [INFO] [stdout] test ellipsoid::tests::bhattacharyya_identical_is_zero ... ok [INFO] [stdout] test ellipsoid::tests::bhattacharyya_symmetric ... ok [INFO] [stdout] test ellipsoid::tests::containment_prob_identical_is_half ... ok [INFO] [stdout] test ellipsoid::tests::containment_prob_near_identical_is_half ... ok [INFO] [stdout] test ellipsoid::tests::containment_prob_widely_different_is_low ... ok [INFO] [stdout] test ellipsoid::proptests::prop_containment_in_unit_interval ... ok [INFO] [stdout] test ellipsoid::tests::ellipsoid_new_diagonal ... ok [INFO] [stdout] test ellipsoid::tests::ellipsoid_new_full ... ok [INFO] [stdout] test ellipsoid::tests::ellipsoid_rejects_dim_mismatch ... ok [INFO] [stdout] test el::tests::prop_inclusion_loss_zero_when_contained ... ok [INFO] [stdout] test ellipsoid::tests::kl_different_center ... ok [INFO] [stdout] test ellipsoid::tests::kl_dimension_mismatch ... ok [INFO] [stdout] test ellipsoid::tests::kl_identical_is_zero ... ok [INFO] [stdout] test ellipsoid::tests::kl_asymmetric ... ok [INFO] [stdout] test el::tests::prop_compose_roles_center_associative ... ok [INFO] [stdout] test ellipsoid::tests::log_volume_diagonal ... ok [INFO] [stdout] test ellipsoid::tests::kl_same_center_different_scale ... ok [INFO] [stdout] test ellipsoid::proptests::prop_log_volume_finite ... ok [INFO] [stdout] test ellipsoid::tests::sigmoid_large_positive ... ok [INFO] [stdout] test ellipsoid::tests::log_volume_scales ... ok [INFO] [stdout] test ellipsoid::tests::sigmoid_large_negative ... ok [INFO] [stdout] test ellipsoid::tests::surface_distance_identical_is_zero ... ok [INFO] [stdout] test fuzzy::tests::dual_roundtrip ... ok [INFO] [stdout] test el::tests::prop_intersection_loss_nonneg ... ok [INFO] [stdout] test el::tests::prop_el_inclusion_loss_nonneg_explicit ... ok [INFO] [stdout] test fuzzy::tests::fuzzy_negation_basic ... ok [INFO] [stdout] test ellipsoid::proptests::prop_self_kl_is_zero ... ok [INFO] [stdout] test ellipsoid::proptests::prop_bhattacharyya_nonneg ... ok [INFO] [stdout] test el::tests::test_existential_box_offset_nonnegative ... ok [INFO] [stdout] test fuzzy::tests::prop_de_morgan_product ... ok [INFO] [stdout] test ellipsoid::proptests::prop_bhattacharyya_symmetric ... ok [INFO] [stdout] test fuzzy::tests::prop_tconorm_output_in_unit ... ok [INFO] [stdout] test fuzzy::tests::prop_double_negation ... ok [INFO] [stdout] test ellipsoid::tests::ellipsoid_rejects_non_finite ... ok [INFO] [stdout] test fuzzy::tests::prop_de_morgan_min ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_annihilator ... ok [INFO] [stdout] test fuzzy::tests::tconorm_lukasiewicz_basic ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_lukasiewicz_commutative ... ok [INFO] [stdout] test fuzzy::tests::tconorm_probabilistic_basic ... ok [INFO] [stdout] test fuzzy::tests::tnorm_min_basic ... ok [INFO] [stdout] test fuzzy::tests::tnorm_product_basic ... ok [INFO] [stdout] test gaussian::tests::from_center_offset_nan_center_returns_err ... ok [INFO] [stdout] test gaussian::tests::from_center_offset_nan_offset_returns_err ... ok [INFO] [stdout] test gaussian::tests::nan_mu_returns_err ... ok [INFO] [stdout] test gaussian::tests::nan_sigma_returns_err ... ok [INFO] [stdout] test fuzzy::tests::tnorm_lukasiewicz_basic ... ok [INFO] [stdout] test fuzzy::tests::tconorm_max_basic ... ok [INFO] [stdout] test ellipsoid::proptests::prop_surface_distance_nonneg ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_identity ... ok [INFO] [stdout] test fuzzy::tests::prop_de_morgan_lukasiewicz ... ok [INFO] [stdout] test ellipsoid::proptests::prop_kl_nonneg_for_same_center ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_min_commutative ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_lukasiewicz_associative ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_product_associative ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_min_associative ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_product_commutative ... ok [INFO] [stdout] test gaussian::tests::prop_bc_identical_is_one ... ok [INFO] [stdout] test fuzzy::tests::prop_tnorm_output_in_unit ... ok [INFO] [stdout] test gaussian::tests::test_bhattacharyya_coefficient_identical_distributions ... ok [INFO] [stdout] test gaussian::tests::prop_new_rejects_nonpositive_sigma ... ok [INFO] [stdout] test gaussian::tests::test_bhattacharyya_distant ... ok [INFO] [stdout] test gaussian::tests::test_bhattacharyya_identical ... ok [INFO] [stdout] test gaussian::tests::test_bhattacharyya_symmetric ... ok [INFO] [stdout] test gaussian::tests::test_from_center_offset ... ok [INFO] [stdout] test gaussian::tests::test_gaussian_new_dim_mismatch ... ok [INFO] [stdout] test gaussian::tests::test_gaussian_new_negative_sigma ... ok [INFO] [stdout] test gaussian::tests::test_gaussian_new_valid ... ok [INFO] [stdout] test gaussian::tests::test_high_dim_1024 ... ok [INFO] [stdout] test gaussian::tests::prop_kl_asymmetric ... ok [INFO] [stdout] test gaussian::tests::test_kl_asymmetric ... ok [INFO] [stdout] test gaussian::tests::test_kl_divergence_formula_matches_standard ... ok [INFO] [stdout] test gaussian::tests::test_kl_extreme_sigma_ratio ... ok [INFO] [stdout] test gaussian::tests::test_kl_identical ... ok [INFO] [stdout] test el_training::tests::evaluate_subsumption_basic ... ok [INFO] [stdout] test gaussian::tests::test_large_mu_difference_bc_near_zero ... ok [INFO] [stdout] test gaussian::tests::prop_from_center_offset_positive_sigma ... ok [INFO] [stdout] test gaussian::tests::prop_bhattacharyya_distance_nonneg ... ok [INFO] [stdout] test gaussian::tests::test_sigma_ceiling_loss_hand_computed ... ok [INFO] [stdout] test gaussian::tests::test_kl_known_value ... ok [INFO] [stdout] test gaussian::tests::test_single_dim ... ok [INFO] [stdout] test gaussian::tests::prop_sigma_ceiling_nonneg ... ok [INFO] [stdout] test gaussian::tests::test_softplus_floor_not_too_small ... ok [INFO] [stdout] test gaussian::tests::test_very_large_sigma_stability ... ok [INFO] [stdout] test gaussian::tests::test_very_small_sigma_stability ... ok [INFO] [stdout] test gaussian::tests::test_volume_regularization ... ok [INFO] [stdout] test gaussian::tests::test_volume_regularization_zero_above_threshold ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_boundary_distance_contained ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_boundary_distance_not_contained ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_query2box_dim_mismatch ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_query2box_inside ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_query2box_outside ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_vector_to_box_distance_outside ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_vector_to_box_distance_inside ... ok [INFO] [stdout] test gaussian::tests::prop_bc_in_unit_interval ... ok [INFO] [stdout] test gaussian::tests::prop_bc_symmetric ... ok [INFO] [stdout] test ndarray_backend::distance::tests::test_vector_to_box_distance_partial ... ok [INFO] [stdout] test gaussian::tests::test_sigma_ceiling_loss_above_threshold ... ok [INFO] [stdout] test gaussian::tests::sigma_ceiling_is_linear_hinge ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::degenerate_tests::degenerate_single_dim ... ok [INFO] [stdout] test gaussian::tests::prop_kl_nonnegative ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::degenerate_tests::degenerate_near_zero_volume ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::degenerate_tests::degenerate_zero_and_partial_volume ... ok [INFO] [stdout] test el_training::tests::train_subsumption_prediction ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::degenerate_tests::degenerate_extreme_temperature ... ok [INFO] [stdout] test gaussian::tests::prop_volume_regularization_nonneg ... ok [INFO] [stdout] test gaussian::tests::test_high_dim_256 ... ok [INFO] [stdout] test gaussian::tests::test_sigma_ceiling_loss_below_threshold ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::degenerate_tests::degenerate_large_coords ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::center_is_midpoint ... ok [INFO] [stdout] test gaussian::tests::prop_kl_identical_is_zero ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_disjoint_is_zero ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_containment_implies_overlap ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_containment_transitivity ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_high_dim_disjoint ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_high_dim_nested ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_many_buffer_too_small ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_many_high_dim ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_many_matches_individual ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_very_large_temperature ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_very_small_temperature ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_zero_volume_child_is_error ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::dim_1_volume_containment_intersection_union ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::distance_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::distance_disjoint_boxes_is_positive ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::distance_identical_boxes_is_zero ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::distance_overlapping_boxes_is_zero ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::high_dim_100_volume_containment_intersection ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::intersection_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::intersection_disjoint_boxes_has_zero_volume ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::intersection_disjoint_in_one_dimension ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::intersection_full_containment ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_full_containment_is_one ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::nan_max_returns_err ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::invalid_temperature_variant_and_display ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::nan_min_returns_err ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::new_1d_box ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::new_dimension_mismatch_returns_error ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::new_zero_width_box_is_valid ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::overlap_prob_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::containment_prob_many_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::overlap_prob_high_dim_identical ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::overlap_prob_identical_boxes_is_one ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::overlap_prob_partial_overlap_in_unit_interval ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::point_box_containment_prob_returns_result ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::point_box_intersection_with_containing_box ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::point_box_volume_zero ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::serde_json_rejects_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::serde_json_rejects_invalid_bounds ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::serde_json_rejects_missing_field ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::serde_json_round_trip ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::temperature_inf_returns_err ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::overlap_prob_disjoint_is_zero ... ok [INFO] [stdout] test gaussian::tests::prop_volume_regularization_is_per_dim_squared_hinge ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::degenerate_tests::degenerate_high_dim ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::intersection_partial_overlap ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::temperature_nan_returns_err ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::truncation_reduces_dim ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::temperature_zero_returns_err ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::truncation_beyond_dim_is_error ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::union_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::union_of_identical_boxes_equals_self ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::union_volume_at_least_max_of_parts ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::volume_high_dim_uses_log_space ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_union_idempotent ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::temperature_negative_returns_err ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::new_invalid_bounds_returns_error ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::distance_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::distant_entity_has_high_distance ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::distance_finite_at_boundary_values ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::distance_self_is_small ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::truncation_preserves_containment ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_self_containment ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::complement_aperture_is_pi_minus_original ... ok [INFO] [stdout] test ellipsoid::proptests::prop_surface_distance_symmetric ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::new_normalizes_axes_and_clamps_apertures ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::intersection_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_volume_non_negative_flat ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::intersection_of_identical_cones_preserves_apertures ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::projection_adjusts_apertures ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::new_rejects_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::intersection_takes_min_aperture ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::projection_clamps_apertures ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::projection_rotates_axes ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::projection_wraps_axes ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::new_rejects_nan_apertures ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::new_rejects_nan_axes ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::double_complement_is_identity ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_intersection_idempotent ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::tests::truncation_to_full_dim_is_identity ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::serde_json_roundtrip ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::works_in_high_dimensions ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_intersection_volume_le_min_input ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::complement_axis_shifts_by_pi ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_self_overlap ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::prop_containment_is_reflexive ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_bessel_volume_bounded_by_hard_volume_at_low_t ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_truncation_preserves_bounds ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_center_membership_gt_boundary ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::prop_containment_distance_non_negative ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::prop_per_dimension_independence ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::bessel_volume_approaches_hard_at_low_temperature ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::bessel_volume_monotone_in_side_length ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::bessel_volume_positive_for_nonempty_box ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_lse_intersection_symmetric ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_gumbel_containment_approaches_hard_at_low_t ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::containment_monotonicity_nested_gumbel_boxes ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::disjoint_boxes_have_near_zero_gumbel_containment ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_bessel_volume_non_negative ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_gumbel_containment_in_unit_interval ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::bessel_volume_smaller_than_hard_at_high_temperature ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_distance_delegates ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_intersection_uses_lse ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_dim_mismatch_error ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_invalid_bounds_error ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_serde_round_trip ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_truncate_delegates ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_union_delegates ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_overlap_prob_reasonable ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::low_temperature_sharpens_membership ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::lse_intersection_approaches_hard_at_low_temperature ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::lse_intersection_bounds_are_inside_parents ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::lse_intersection_symmetric ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::membership_at_boundary_is_near_half_per_dim ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::membership_prob_always_in_unit_interval ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::membership_prob_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::membership_prob_far_outside_is_low ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::temperature_accessor_returns_construction_value ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::very_low_temperature_membership_approaches_hard ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::very_low_temperature_outside_membership_approaches_zero ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::compose_concrete_example ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::membership_decreases_moving_away_from_center ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::membership_prob_inside_point_is_high ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::compose_dim_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::compose_identity_with_universal ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::compose_is_not_intersection ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::containment_prob_identical_is_boundary ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::containment_prob_wider_contains_narrower ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::contains_center_point ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::contains_dim_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::contains_rejects_outside_axis ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::contains_rejects_outside_diagonal ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::from_box_bounds_produces_vacuous_diag ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::from_box_bounds_rejects_nan_axis_max ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::from_box_bounds_rejects_nan_axis_min ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::sample_produces_finite_values ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::intersection_dim_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::intersection_tightens_bounds ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::intersection_empty_returns_error ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::intersection_identical_octagons ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_axis_min_gt_max ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_dim_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_invalid_diag_bounds ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_nan_axis_max ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_nan_axis_min ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_nan_diag_diff_max ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_nan_diag_sum_min ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_rejects_wrong_diag_count ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::new_valid_2d ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::overlap_prob_disjoint_is_low ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::overlap_prob_identical_is_high ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_volume_non_negative_any_temperature ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::tests::gumbel_box_center_delegates ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::prop_wider_cone_contains_narrower ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::wider_cone_has_lower_distance_to_entity ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_intersection_idempotent ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_self_containment ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::prop_complement_aperture_sum_is_pi ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::prop_complement_of_complement_is_identity ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::serde_json_roundtrip ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::volume_1d ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::to_bounding_box_drops_diag ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::volume_2d_octagon_smaller_than_box ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::volume_zero_width_dimension ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::volume_box_equivalent ... ok [INFO] [stdout] test optimizer::tests::amsgrad_default_hyperparams ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_temperature_monotonicity_outside ... ok [INFO] [stdout] test optimizer::tests::amsgrad_new_initializes_zeros ... ok [INFO] [stdout] test optimizer::tests::amsgrad_set_lr ... ok [INFO] [stdout] test optimizer::tests::lr_always_positive ... ok [INFO] [stdout] test optimizer::tests::lr_at_warmup_boundary_enters_cosine ... ok [INFO] [stdout] test optimizer::tests::lr_cosine_end_is_tenth_of_base ... ok [INFO] [stdout] test optimizer::tests::lr_cosine_midpoint_is_halfway ... ok [INFO] [stdout] test optimizer::tests::lr_monotone_decreasing_in_cosine_phase ... ok [INFO] [stdout] test optimizer::tests::amsgrad_zero_dim ... ok [INFO] [stdout] test optimizer::tests::lr_monotone_increasing_in_warmup ... ok [INFO] [stdout] test optimizer::tests::lr_single_epoch ... ok [INFO] [stdout] test optimizer::tests::lr_no_warmup ... ok [INFO] [stdout] test optimizer::tests::lr_warmup_equals_total ... ok [INFO] [stdout] test optimizer::tests::lr_warmup_end_equals_base ... ok [INFO] [stdout] test optimizer::tests::lr_warmup_start_is_tenth_of_base ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_lse_intersection_within_parents ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_octagon_degrades_to_box ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_composition_contains_relational_composition ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_containment_implies_overlap ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_composition_is_associative ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_intersection_closure ... ok [INFO] [stdout] test spherical_cap::proptests::prop_area_fraction_in_unit_interval ... ok [INFO] [stdout] test ndarray_backend::ndarray_cone::tests::prop_projection_preserves_cone_structure ... ok [INFO] [stdout] test spherical_cap::proptests::prop_containment_in_unit_interval ... ok [INFO] [stdout] test spherical_cap::tests::area_fraction_2d ... ok [INFO] [stdout] test spherical_cap::tests::area_fraction_3d_hemisphere ... ok [INFO] [stdout] test spherical_cap::tests::cap_from_log_tan_half ... ok [INFO] [stdout] test spherical_cap::tests::cap_new_valid ... ok [INFO] [stdout] test spherical_cap::tests::cap_normalizes_center ... ok [INFO] [stdout] test spherical_cap::tests::cap_rejects_non_finite ... ok [INFO] [stdout] test spherical_cap::tests::cap_rejects_too_large_radius ... ok [INFO] [stdout] test spherical_cap::tests::cap_rejects_zero_radius ... ok [INFO] [stdout] test spherical_cap::tests::cap_rejects_zero_vector ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_composition_closure ... ok [INFO] [stdout] test spherical_cap::tests::containment_dimension_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_gumbel::proptest_tests::proptest_membership_in_unit_interval ... ok [INFO] [stdout] test spherical_cap::tests::containment_disjoint_is_near_zero ... ok [INFO] [stdout] test spherical_cap::tests::containment_identical_is_half ... ok [INFO] [stdout] test spherical_cap::tests::containment_nested_is_near_one ... ok [INFO] [stdout] test spherical_cap::tests::geodesic_identical_is_zero ... ok [INFO] [stdout] test spherical_cap::tests::geodesic_opposite_is_pi ... ok [INFO] [stdout] test spherical_cap::tests::geodesic_orthogonal_is_pi_half ... ok [INFO] [stdout] test spherical_cap::tests::embedding_model_construction ... ok [INFO] [stdout] test spherical_cap::tests::overlap_disjoint_is_zero ... ok [INFO] [stdout] test spherical_cap::tests::overlap_identical_is_one ... ok [INFO] [stdout] test spherical_cap::tests::overlap_symmetric ... ok [INFO] [stdout] test spherical_cap::tests::relation_dimension_mismatch ... ok [INFO] [stdout] test spherical_cap::tests::relation_identity_preserves_cap ... ok [INFO] [stdout] test spherical_cap::tests::relation_rejects_zero_scale ... ok [INFO] [stdout] test spherical_cap::tests::relation_rotation ... ok [INFO] [stdout] test spherical_cap::tests::relation_scaling ... ok [INFO] [stdout] test spherical_cap::tests::score_triple_mismatch ... ok [INFO] [stdout] test spherical_cap::tests::score_triple_perfect_match ... ok [INFO] [stdout] test spherical_cap::tests::sigmoid_large_negative ... ok [INFO] [stdout] test spherical_cap::tests::sigmoid_large_positive ... ok [INFO] [stdout] test spherical_cap::tests::surface_distance_disjoint_is_positive ... ok [INFO] [stdout] test spherical_cap::tests::surface_distance_identical_is_zero ... ok [INFO] [stdout] test spherical_cap::tests::surface_distance_overlapping_is_zero ... ok [INFO] [stdout] test spherical_cap::proptests::prop_surface_distance_nonneg ... ok [INFO] [stdout] test spherical_cap::proptests::prop_overlap_symmetric ... ok [INFO] [stdout] test spherical_cap::tests::embedding_model_rejects_dim_mismatch ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_volume_nonnegative ... ok [INFO] [stdout] test spherical_cap::proptests::prop_center_is_unit_vector ... ok [INFO] [stdout] test optimizer::tests::amsgrad_large_dim ... ok [INFO] [stdout] test spherical_cap::proptests::prop_score_triple_nonneg ... ok [INFO] [stdout] test gaussian::tests::test_bhattacharyya_coefficient_range_invariant ... ok [INFO] [stdout] test spherical_cap::proptests::prop_overlap_in_unit_interval ... ok [INFO] [stdout] test spherical_cap::proptests::prop_surface_distance_symmetric ... ok [INFO] [stdout] test subspace::tests::containment_identical_is_one ... ok [INFO] [stdout] test subspace::tests::distance_identical_is_zero ... ok [INFO] [stdout] test subspace::tests::containment_dimension_mismatch ... ok [INFO] [stdout] test subspace::tests::containment_subspace_is_one ... ok [INFO] [stdout] test subspace::tests::distance_orthogonal_is_one ... ok [INFO] [stdout] test subspace::tests::containment_orthogonal_is_zero ... ok [INFO] [stdout] test subspace::tests::embedding_model_construction ... ok [INFO] [stdout] test subspace::tests::embedding_model_rejects_dim_mismatch ... ok [INFO] [stdout] test subspace::tests::log_volume_increases_with_rank ... ok [INFO] [stdout] test subspace::tests::negation_orthogonal_is_one ... ok [INFO] [stdout] test subspace::tests::subspace_new_1d ... ok [INFO] [stdout] test subspace::tests::intersection_of_nested_is_smaller ... ok [INFO] [stdout] test subspace::tests::intersection_of_orthogonal_is_trivial ... ok [INFO] [stdout] test subspace::tests::negation_identical_is_zero ... ok [INFO] [stdout] test subspace::tests::subspace_new_2d ... ok [INFO] [stdout] test spherical_cap::proptests::prop_relation_apply_preserves_dim ... ok [INFO] [stdout] test ndarray_backend::ndarray_octagon::tests::prop_volume_less_than_bounding_box ... ok [INFO] [stdout] test subspace::tests::subspace_orthonormalizes ... ok [INFO] [stdout] test subspace::tests::subspace_rejects_dimension_mismatch ... ok [INFO] [stdout] test subspace::tests::subspace_rejects_non_finite ... ok [INFO] [stdout] test subspace::tests::subspace_removes_dependent_vectors ... ok [INFO] [stdout] test subspace::tests::union_of_nested_is_larger ... ok [INFO] [stdout] test subspace::tests::test_orthogonal_complement ... ok [INFO] [stdout] test subspace::proptests::prop_basis_is_orthonormal ... ok [INFO] [stdout] test subspace::tests::union_increases_rank ... ok [INFO] [stdout] test subspace::proptests::prop_orthogonal_complement_rank ... ok [INFO] [stdout] test spherical_cap::proptests::prop_geodesic_in_range ... ok [INFO] [stdout] test taxobell::tests::test_asymmetric_loss_large_for_non_contained ... ok [INFO] [stdout] test taxobell::tests::test_asymmetric_loss_small_for_contained_child ... ok [INFO] [stdout] test taxobell::tests::test_asymmetric_loss_triplet ... ok [INFO] [stdout] test taxobell::tests::test_asymmetric_loss_triplet_vs_simple ... ok [INFO] [stdout] test taxobell::tests::test_asymmetric_loss_with_diverge ... ok [INFO] [stdout] test taxobell::tests::test_asymmetric_loss_with_diverge_active ... ok [INFO] [stdout] test taxobell::tests::proptests::symmetric_loss_zero_when_well_separated ... ok [INFO] [stdout] test taxobell::tests::test_combined_loss_empty_batch ... ok [INFO] [stdout] test taxobell::tests::test_combined_loss_all_components ... ok [INFO] [stdout] test taxobell::tests::test_combined_loss_paper_weights ... ok [INFO] [stdout] test taxobell::tests::proptests::asymmetric_loss_is_non_negative ... ok [INFO] [stdout] test subspace::proptests::prop_negation_in_unit_interval ... ok [INFO] [stdout] test taxobell::tests::test_combined_loss_mini_taxonomy ... ok [INFO] [stdout] test taxobell::tests::test_dimension_mismatch_propagates ... ok [INFO] [stdout] test taxobell::tests::test_loss_decreases_when_child_moved_inside_parent ... ok [INFO] [stdout] test taxobell::tests::test_symmetric_loss_bce_properties ... ok [INFO] [stdout] test taxobell::tests::test_symmetric_loss_large_when_negative_closer ... ok [INFO] [stdout] test taxobell::tests::test_symmetric_loss_small_when_positive_closer ... ok [INFO] [stdout] test taxobell::tests::proptests::combined_loss_components_sum_correctly ... ok [INFO] [stdout] test taxobell::tests::test_symmetric_loss_bce_vs_triplet ... ok [INFO] [stdout] test taxobell::tests::test_symmetric_loss_triplet_variant ... ok [INFO] [stdout] test taxonomy::tests::load_small_taxonomy ... ok [INFO] [stdout] test taxonomy::tests::load_with_definitions ... ok [INFO] [stdout] test taxonomy::tests::missing_terms_file_errors ... ok [INFO] [stdout] test taxonomy::tests::split_covers_all_edges ... ok [INFO] [stdout] test taxonomy::tests::split_is_deterministic ... ok [INFO] [stdout] test taxonomy::tests::test_load_rejects_malformed_terms ... ok [INFO] [stdout] test taxonomy::tests::test_to_triples_parent_child_direction ... ok [INFO] [stdout] test taxonomy::tests::invalid_id_in_taxo_errors ... ok [INFO] [stdout] test taxonomy::tests::test_split_deterministic ... ok [INFO] [stdout] test trainable::tests::dense_cone_distance_wide_contains_narrow ... ok [INFO] [stdout] test trainable::tests::trainable_box_dimension_mismatch_returns_err ... ok [INFO] [stdout] test trainable::tests::trainable_box_serde_roundtrip ... ok [INFO] [stdout] test trainable::tests::trainable_box_to_ndarray_box_roundtrip ... ok [INFO] [stdout] test trainable::tests::trainable_cone_apertures_in_valid_range ... ok [INFO] [stdout] test trainable::tests::trainable_cone_axes_in_valid_range ... ok [INFO] [stdout] test trainable::tests::dense_cone_distance_far_entity_has_high_distance ... ok [INFO] [stdout] test trainable::tests::trainable_cone_deserialize_rejects_length_mismatch ... ok [INFO] [stdout] test trainable::tests::trainable_cone_dimension_mismatch_returns_err ... ok [INFO] [stdout] test trainable::tests::trainable_cone_from_vector_roundtrip ... ok [INFO] [stdout] test trainable::tests::trainable_cone_serde_roundtrip ... ok [INFO] [stdout] test trainable::tests::trainable_cone_to_dense_cone ... ok [INFO] [stdout] test trainable::tests::trainable_cone_to_ndarray_cone_roundtrip ... ok [INFO] [stdout] test trainer::annular_trainer::tests::gradients_are_finite ... ok [INFO] [stdout] test trainer::annular_trainer::tests::score_disjoint_is_high ... ok [INFO] [stdout] test trainer::annular_trainer::tests::score_identical_is_low ... ok [INFO] [stdout] test trainable::tests::trainable_cone_update_amsgrad_does_not_panic ... ok [INFO] [stdout] test taxonomy::tests::to_triples_produces_hypernym_relation ... ok [INFO] [stdout] test trainer::annular_trainer::tests::trainer_init ... ok [INFO] [stdout] test trainer::annular_trainer::tests::train_epoch_runs ... ok [INFO] [stdout] test trainer::ball_trainer::tests::gradient_check_against_finite_differences ... ok [INFO] [stdout] test trainer::ball_trainer::tests::gradients_are_finite ... ok [INFO] [stdout] test trainer::ball_trainer::tests::multi_neg_updates_negative_entities ... ok [INFO] [stdout] test trainer::ball_trainer::tests::score_triple_disjoint_is_high ... ok [INFO] [stdout] test trainer::ball_trainer::tests::score_triple_identical_is_low ... ok [INFO] [stdout] test subspace::proptests::prop_union_rank_at_least_max ... ok [INFO] [stdout] test trainer::ball_trainer::tests::sigmoid_k_affects_containment_sharpness ... ok [INFO] [stdout] test trainer::ball_trainer::tests::train_epoch_runs ... ok [INFO] [stdout] test taxobell::tests::proptests::symmetric_loss_is_non_negative ... ok [INFO] [stdout] test trainer::ball_trainer::tests::trainer_init ... ok [INFO] [stdout] test trainer::box_trainer::tests::analytical_gradient_finite_difference_sign_agreement ... ok [INFO] [stdout] test subspace::proptests::prop_containment_in_unit_interval ... ok [INFO] [stdout] test trainer::ball_trainer::tests::train_improves_eval_metrics ... ok [INFO] [stdout] test trainer::annular_trainer::tests::train_and_evaluate_synthetic ... ok [INFO] [stdout] test subspace::proptests::prop_distance_nonneg ... ok [INFO] [stdout] test trainer::box_trainer::tests::analytical_gradients_negative_pair_returns_zeros ... ok [INFO] [stdout] test taxobell::tests::test_default_config ... ok [INFO] [stdout] test taxobell::tests::test_loss_increases_when_child_moved_outside_parent ... ok [INFO] [stdout] test trainer::ball_trainer::tests::train_and_evaluate_synthetic ... ok [INFO] [stdout] test subspace::tests::subspace_rejects_all_zero ... ok [INFO] [stdout] test trainer::box_trainer::tests::analytical_gradients_positive_disjoint_pushes_centers ... ok [INFO] [stdout] test trainer::box_trainer::tests::analytical_gradients_reduce_loss_on_positive_pair ... ok [INFO] [stdout] test trainer::box_trainer::tests::compute_pair_loss_identical_boxes_positive_is_finite ... ok [INFO] [stdout] test trainer::box_trainer::tests::compute_pair_loss_positive_prefers_containment_over_disjoint ... ok [INFO] [stdout] test trainer::box_trainer::tests::gradcheck_analytical_vs_finite_difference ... ok [INFO] [stdout] test trainer::box_trainer::tests::self_adversarial_config_default_is_off ... ok [INFO] [stdout] test trainer::box_trainer::tests::self_adversarial_serde_missing_field_defaults_to_false ... ok [INFO] [stdout] test trainer::box_trainer::tests::self_adversarial_serde_roundtrip ... ok [INFO] [stdout] test trainer::box_trainer::tests::self_adversarial_softmax_weights_sum_to_n ... ok [INFO] [stdout] test trainer::box_trainer::tests::compute_pair_loss_negative_penalizes_overlap_above_margin ... ok [INFO] [stdout] test trainer::box_trainer::tests::compute_pair_loss_negative_weight_scales_loss ... ok [INFO] [stdout] test trainer::ball_trainer::tests::loss_decreases_over_training ... ok [INFO] [stdout] test trainer::box_trainer::tests::ndarray_box_serde_roundtrip ... ok [INFO] [stdout] test trainer::box_trainer::tests::trainable_box_serde_roundtrip ... ok [INFO] [stdout] test trainer::cone_trainer::tests::cone_pair_loss_positive_prefers_containment ... ok [INFO] [stdout] test trainer::box_trainer::tests::training_config_default_values_are_sane ... ok [INFO] [stdout] test trainer::cone_trainer::tests::cone_trainer_reduces_loss_over_steps ... ok [INFO] [stdout] test trainer::box_trainer::tests::trainable_box_serde_roundtrip_via_tempfile ... ok [INFO] [stdout] test trainer::ellipsoid_trainer::tests::gradients_are_finite ... ok [INFO] [stdout] test trainer::ellipsoid_trainer::tests::score_containment_identical_is_low ... ok [INFO] [stdout] test trainer::ellipsoid_trainer::tests::score_containment_different_is_higher ... ok [INFO] [stdout] test trainer::ellipsoid_trainer::tests::trainer_init ... ok [INFO] [stdout] test trainer::ellipsoid_trainer::tests::train_epoch_runs ... ok [INFO] [stdout] test trainer::evaluation::tests::evaluate_link_prediction_deterministic ... ok [INFO] [stdout] test trainer::evaluation::tests::evaluate_link_prediction_empty_triples ... ok [INFO] [stdout] test trainer::evaluation::tests::evaluate_link_prediction_filtered_excludes_known_tails ... ok [INFO] [stdout] test trainer::evaluation::tests::evaluate_link_prediction_interned_filtered_with_ndarray_boxes ... ok [INFO] [stdout] test trainer::cone_trainer::tests::cone_trainer_train_step_does_not_panic ... ok [INFO] [stdout] test trainer::evaluation::tests::evaluate_link_prediction_interned_with_ndarray_boxes ... ok [INFO] [stdout] test trainer::evaluation::tests::filtered_triple_index_ids_membership ... ok [INFO] [stdout] test trainer::evaluation::tests::filtered_triple_index_membership ... ok [INFO] [stdout] test trainer::evaluation::tests::link_prediction_rank_linear_matches_deterministic_sort ... ok [INFO] [stdout] test trainer::negative_sampling::tests::compute_relation_cardinalities_empty ... ok [INFO] [stdout] test trainer::evaluation::tests::evaluate_link_prediction_with_ndarray_boxes ... ok [INFO] [stdout] test trainer::negative_sampling::tests::compute_relation_cardinalities_multiple_relations ... ok [INFO] [stdout] test trainer::negative_sampling::tests::compute_relation_cardinalities_one_to_many ... ok [INFO] [stdout] test trainer::negative_sampling::tests::compute_relation_cardinalities_symmetric ... ok [INFO] [stdout] test trainer::negative_sampling::tests::compute_relation_entity_pools_deduplicates_and_sorts ... ok [INFO] [stdout] test trainer::negative_sampling::tests::relation_cardinality_head_corrupt_prob_zero_denom ... ok [INFO] [stdout] test trainer::negative_sampling::tests::relation_entity_pools_multiple_relations ... ok [INFO] [stdout] test trainer::negative_sampling::tests::sample_excluding_all_valid_returns_some ... ok [INFO] [stdout] test trainer::evaluation::tests::filtered_triple_index_ids_known_tails ... ok [INFO] [stdout] test trainer::negative_sampling::tests::compute_relation_cardinalities_many_to_one ... ok [INFO] [stdout] test trainer::negative_sampling::tests::sample_excluding_empty_returns_none ... ok [INFO] [stdout] test trainer::negative_sampling::tests::sample_excluding_skips_target_and_falls_back ... ok [INFO] [stdout] test taxobell::tests::proptests::diverge_lambda_scales_loss ... ok [INFO] [stdout] test trainer::negative_sampling::tests::type_constrained_sampling_draws_from_pool ... ok [INFO] [stdout] test trainer::spherical_cap_trainer::tests::score_triple_identical_is_low ... ok [INFO] [stdout] test trainer::spherical_cap_trainer::tests::gradients_are_finite ... ok [INFO] [stdout] test trainer::spherical_cap_trainer::tests::score_triple_disjoint_is_high ... ok [INFO] [stdout] test taxobell::tests::proptests::all_loss_components_finite ... ok [INFO] [stdout] test trainer::subspace_trainer::tests::gradients_are_finite ... ok [INFO] [stdout] test trainer::spherical_cap_trainer::tests::trainer_init ... ok [INFO] [stdout] test trainer::subspace_trainer::tests::score_containment_identical_is_low ... ok [INFO] [stdout] test trainer::subspace_trainer::tests::score_containment_orthogonal_is_high ... ok [INFO] [stdout] test trainer::subspace_trainer::tests::train_epoch_runs ... ok [INFO] [stdout] test trainer::trainer_utils::tests::adam_state_moves_param ... ok [INFO] [stdout] test trainer::subspace_trainer::tests::trainer_init ... ok [INFO] [stdout] test subspace::proptests::prop_distance_symmetric ... ok [INFO] [stdout] test trainer::spherical_cap_trainer::tests::train_epoch_runs ... ok [INFO] [stdout] test trainer::box_trainer::tests::train_step_self_adversarial_produces_different_loss ... ok [INFO] [stdout] test taxobell::tests::proptests::combined_loss_with_negative_uses_triplet ... ok [INFO] [stdout] test trainer::spherical_cap_trainer::tests::train_and_evaluate_synthetic ... ok [INFO] [stdout] test subspace::proptests::prop_self_containment_is_one ... ok [INFO] [stdout] test trainer::trainer_utils::tests::adam_state_step_increments ... ok [INFO] [stdout] test trainer::trainer_utils::tests::self_adversarial_empty_is_empty ... ok [INFO] [stdout] test trainer::trainer_utils::tests::self_adversarial_higher_score_gets_more_weight ... ok [INFO] [stdout] test trainer::trainer_utils::tests::adam_state_persists ... ok [INFO] [stdout] test trainer::trainer_utils::tests::self_adversarial_uniform_for_equal_scores ... ok [INFO] [stdout] test trainer::trainer_utils::tests::self_adversarial_sums_to_one ... ok [INFO] [stdout] test trainer::transbox_trainer::tests::score_not_contained_is_high ... ok [INFO] [stdout] test trainer::transbox_trainer::tests::gradients_are_finite ... ok [INFO] [stdout] test trainer::transbox_trainer::tests::score_contained_is_low ... ok [INFO] [stdout] test transbox::tests::concept_rejects_non_finite ... ok [INFO] [stdout] test transbox::tests::existential_transbox_additive ... ok [INFO] [stdout] test trainer::transbox_trainer::tests::train_and_evaluate_synthetic ... ok [INFO] [stdout] test transbox::tests::concept_bounds ... ok [INFO] [stdout] test transbox::tests::inclusion_loss_contained_is_zero ... ok [INFO] [stdout] test trainer::transbox_trainer::tests::trainer_init ... ok [INFO] [stdout] test transbox::tests::concept_new_valid ... ok [INFO] [stdout] test trainer::cone_trainer::tests::train_and_evaluate_synthetic ... ok [INFO] [stdout] test transbox::tests::concept_rejects_dim_mismatch ... ok [INFO] [stdout] test trainer::transbox_trainer::tests::train_epoch_runs ... ok [INFO] [stdout] test transbox::tests::concept_rejects_negative_offset ... ok [INFO] [stdout] test transbox::tests::inclusion_loss_dimension_mismatch ... ok [INFO] [stdout] test transbox::tests::inclusion_loss_with_margin ... ok [INFO] [stdout] test transbox::tests::intersection_disjoint_has_zero_offset ... ok [INFO] [stdout] test transbox::tests::intersection_of_identical ... ok [INFO] [stdout] test transbox::tests::intersection_of_overlapping ... ok [INFO] [stdout] test transbox::tests::role_apply_dimension_mismatch ... ok [INFO] [stdout] test transbox::tests::score_triple_mismatch_is_positive ... ok [INFO] [stdout] test transbox::tests::score_triple_perfect_match ... ok [INFO] [stdout] test transbox::tests::role_rejects_negative_offset ... ok [INFO] [stdout] test transbox::tests::subsumption_loss_valid_is_zero ... ok [INFO] [stdout] test transbox::tests::role_apply_additive ... ok [INFO] [stdout] test transbox::tests::role_compose ... ok [INFO] [stdout] test transbox::tests::role_new_valid ... ok [INFO] [stdout] test trainer::subspace_trainer::tests::train_and_evaluate_synthetic ... ok [INFO] [stdout] test utils::tests::test_bessel_side_length_basic ... ok [INFO] [stdout] test utils::tests::test_clamp_temperature ... ok [INFO] [stdout] test utils::tests::test_euler_gamma_value ... ok [INFO] [stdout] test utils::tests::test_gumbel_lse_identity ... ok [INFO] [stdout] test utils::tests::test_gumbel_lse_min_is_smooth_max ... ok [INFO] [stdout] test utils::tests::test_gumbel_lse_max_is_smooth_min ... ok [INFO] [stdout] test utils::tests::test_log_space_volume ... ok [INFO] [stdout] test transbox::tests::inclusion_loss_not_contained_is_positive ... ok [INFO] [stdout] test transbox::tests::model_construction ... ok [INFO] [stdout] test utils::tests::test_sample_gumbel ... ok [INFO] [stdout] test utils::tests::test_softplus_with_beta ... ok [INFO] [stdout] test utils::tests::test_stable_logsumexp ... ok [INFO] [stdout] test utils::tests::test_stable_sigmoid ... ok [INFO] [stdout] test utils::tests::proptests::prop_gumbel_membership_prob_bounds ... ok [INFO] [stdout] test trainer::box_trainer::tests::prop_compute_pair_loss_finite ... ok [INFO] [stdout] test utils::tests::test_bessel_log_volume_basic ... ok [INFO] [stdout] test utils::tests::test_softplus_basic ... ok [INFO] [stdout] test utils::tests::test_gumbel_membership_prob ... ok [INFO] [stdout] test trainer::box_trainer::tests::test_amsgrad_update_stays_valid ... ok [INFO] [stdout] test utils::tests::proptests::prop_logsumexp_ge_max ... ok [INFO] [stdout] test trainer::box_trainer::tests::test_gradients_are_finite ... ok [INFO] [stdout] test utils::tests::proptests::prop_softplus_monotone ... ok [INFO] [stdout] test trainer::ellipsoid_trainer::tests::train_and_evaluate_synthetic ... ok [INFO] [stdout] test trainer::box_trainer::tests::test_loss_is_non_negative ... ok [INFO] [stdout] test transbox::tests::model_rejects_dim_mismatch ... ok [INFO] [stdout] test transbox::tests::subsumption_loss_invalid_is_positive ... ok [INFO] [stdout] test utils::tests::test_map_gumbel_to_bounds ... ok [INFO] [stdout] test ndarray_backend::ndarray_box::proptest_tests::proptest_volume_non_negative ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 718 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.40s [INFO] [stdout] [INFO] [stderr] Doc-tests subsume [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test src/box_trait.rs - box_trait::Box (line 84) ... ignored [INFO] [stdout] test src/lib.rs - (line 111) ... ignored [INFO] [stdout] test src/trainer/box_trainer.rs - trainer::box_trainer::BoxEmbeddingTrainer (line 385) ... ignored [INFO] [stdout] test src/utils.rs - utils::log_space_volume (line 335) ... ignored [INFO] [stdout] test src/lib.rs - el_dataset (line 316) - compile ... ok [INFO] [stdout] test src/lib.rs - taxonomy (line 309) - compile ... ok [INFO] [stdout] test src/distance.rs - distance::query2box_distance (line 58) ... ok [INFO] [stdout] test src/utils.rs - utils::log_space_volume (line 378) ... ok [INFO] [stdout] test src/lib.rs - fuzzy (line 318) ... ok [INFO] [stdout] test src/ndarray_backend/distance.rs - ndarray_backend::distance::vector_to_box_distance (line 43) ... ok [INFO] [stdout] test src/el_training.rs - el_training::Ontology::subsumption_closure (line 332) ... ok [INFO] [stdout] test src/lib.rs - taxobell (line 315) ... ok [INFO] [stdout] test src/dataset.rs - dataset::DatasetExt::from_all_triples (line 24) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 4 ignored; 0 measured; 0 filtered out; finished in 0.89s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c3dc2618bb97e6501765a62caa640917ea2482a976ad0f99f6213984d051b994", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3dc2618bb97e6501765a62caa640917ea2482a976ad0f99f6213984d051b994", kill_on_drop: false }` [INFO] [stdout] c3dc2618bb97e6501765a62caa640917ea2482a976ad0f99f6213984d051b994