[INFO] fetching crate ogdoad 1.0.7... [INFO] testing ogdoad-1.0.7 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2 [INFO] extracting crate ogdoad 1.0.7 into /workspace/builds/worker-0-tc2/source [INFO] started tweaking crates.io crate ogdoad 1.0.7 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate ogdoad 1.0.7 [INFO] tweaked toml for crates.io crate ogdoad 1.0.7 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate ogdoad 1.0.7 on toolchain 1.100.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate ogdoad 1.0.7 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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:77:12 [INFO] [stderr] | [INFO] [stderr] 77 | homepage = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 83 | repository = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | --------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `ogdoad` (manifest) generated 1 warning [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3 [INFO] running `Command { std: "docker" "start" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:77:12 [INFO] [stderr] | [INFO] [stderr] 77 | homepage = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 83 | repository = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | --------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `ogdoad` (manifest) generated 1 warning [INFO] [stderr] Compiling ogdoad v1.0.7 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 12.36s [INFO] running `Command { std: "docker" "inspect" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:77:12 [INFO] [stderr] | [INFO] [stderr] 77 | homepage = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 83 | repository = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | --------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `ogdoad` (manifest) generated 1 warning [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling zerocopy v0.8.50 [INFO] [stderr] Compiling bitflags v2.13.0 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling rand v0.9.4 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling proptest v1.11.0 [INFO] [stderr] Compiling ogdoad v1.0.7 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 49.93s [INFO] running `Command { std: "docker" "inspect" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:77:12 [INFO] [stderr] | [INFO] [stderr] 77 | homepage = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 83 | repository = "https://github.com/a9lim/ogdoad" [INFO] [stderr] | --------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `ogdoad` (manifest) generated 1 warning [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.09s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/build/ogdoad/3e48c9630ada4411/out/ogdoad-3e48c9630ada4411) [INFO] [stdout] [INFO] [stdout] running 1129 tests [INFO] [stdout] test clifford::blade::tests::integer_nonunit_multiples_are_blades ... ok [INFO] [stdout] test clifford::blade::tests::integer_blade_subspace_refuses_nonunit_kernel_pivot ... ok [INFO] [stdout] test clifford::blade::tests::non_simple_bivector_is_not_a_blade ... ok [INFO] [stdout] test clifford::blade::tests::simple_wedges_are_blades ... ok [INFO] [stdout] test clifford::blade::tests::factor_reconstructs_the_blade ... ok [INFO] [stdout] test clifford::blade::tests::mixed_grade_and_zero_are_not_blades ... ok [INFO] [stdout] test clifford::blade::tests::pluecker_rejects_integer_non_simple_bivector ... ok [INFO] [stdout] test clifford::cga::tests::down_inverts_up ... ok [INFO] [stdout] test clifford::blade::tests::pseudoscalar_is_a_top_blade ... ok [INFO] [stdout] test clifford::cga::tests::non_nilpotent_exp_returns_none ... ok [INFO] [stdout] test clifford::cga::tests::pga_motor_translates_exactly ... ok [INFO] [stdout] test clifford::cga::tests::inner_product_is_euclidean_distance ... ok [INFO] [stdout] test clifford::cga::tests::cga_rejects_rings_without_one_half ... ok [INFO] [stdout] test clifford::cga::tests::cga_rejects_positive_characteristic ... ok [INFO] [stdout] test clifford::cga::tests::meet_of_planes_is_nonzero ... ok [INFO] [stdout] test clifford::cga::tests::pga_nilpotent_exp_is_exact ... ok [INFO] [stdout] test clifford::cga::tests::point_lies_on_sphere ... ok [INFO] [stdout] test clifford::divided_power::tests::moderate_exponent_in_char_zero_correct ... ok [INFO] [stdout] test clifford::engine::inverse::tests::inverse_refuses_huge_non_scalar_without_shift_overflow ... ok [INFO] [stdout] test clifford::divided_power::tests::binomial_product_over_rationals ... ok [INFO] [stdout] test clifford::divided_power::tests::large_exponent_in_char_two_terminates ... ok [INFO] [stdout] test clifford::cga::tests::surreal_point_at_infinite_scale_is_still_null ... ok [INFO] [stdout] test clifford::cga::tests::up_is_null ... ok [INFO] [stdout] test clifford::divided_power::tests::lucas_theorem_mod_three ... ok [INFO] [stdout] test clifford::cga::tests::point_lies_on_plane ... ok [INFO] [stdout] test clifford::divided_power::tests::divided_square_vanishes_in_char_two ... ok [INFO] [stdout] test clifford::engine::multivector::tests::integer_grassmann_negative_and_join_rule ... ok [INFO] [stdout] test clifford::divided_power::tests::generators_are_primitive ... ok [INFO] [stdout] test clifford::engine::inverse::tests::scalar_inverse_still_works_at_huge_dimension ... ok [INFO] [stdout] test clifford::engine::tests::complex_numbers_cl01 ... ok [INFO] [stdout] test clifford::engine::tests::associativity_rational_nonorthogonal ... ok [INFO] [stdout] test clifford::engine::tests::cl20_bivector_squares_to_minus_one ... ok [INFO] [stdout] test clifford::engine::tests::even_part_projection ... ok [INFO] [stdout] test clifford::engine::tests::associativity_general_bilinear_form ... ok [INFO] [stdout] test clifford::engine::tests::even_subalgebra_none_on_nonorthogonal_metric ... ok [INFO] [stdout] test clifford::engine::tests::even_subalgebra_none_when_no_generator_is_a_unit ... ok [INFO] [stdout] test clifford::engine::tests::even_subalgebra_of_cl30_is_quaternions ... ok [INFO] [stdout] test clifford::divided_power::tests::hopf_axioms_rational ... ok [INFO] [stdout] test clifford::engine::tests::associativity_nimber_nonorthogonal ... ok [INFO] [stdout] test clifford::engine::metric::tests::direct_sum_shift_takes_effect_in_the_joined_algebras_products ... ok [INFO] [stdout] test clifford::engine::tests::grade_involution_signs ... ok [INFO] [stdout] test clifford::engine::tests::graded_tensor_blocks_are_orthogonal ... ok [INFO] [stdout] test clifford::engine::tests::broadword_wedge_parity_matches_the_bitwise_oracle ... ok [INFO] [stdout] test clifford::engine::tests::grassmann_generators_are_nilpotent ... ok [INFO] [stdout] test clifford::engine::tests::left_contraction_lowers_grade ... ok [INFO] [stdout] test clifford::engine::tests::general_bilinear_in_order_contraction ... ok [INFO] [stdout] test clifford::engine::tests::multivector_operator_traits_forward_to_additive_and_wedge_ops ... ok [INFO] [stdout] test clifford::engine::tests::nimber_offdiagonal_is_noncommutative ... ok [INFO] [stdout] test clifford::engine::tests::generator_index_must_be_in_the_algebra - should panic ... ok [INFO] [stdout] test clifford::engine::tests::dual_of_vector_is_bivector_in_3d ... ok [INFO] [stdout] test clifford::engine::tests::general_product_reproduces_reduce_word_when_a_empty ... ok [INFO] [stdout] test clifford::engine::tests::metric_rejects_reversed_or_diagonal_polar_keys - should panic ... ok [INFO] [stdout] test clifford::engine::tests::general_bilinear_gauge_transport_matches_reduce_word_oracle ... ok [INFO] [stdout] test clifford::engine::tests::nimber_orthogonal_is_commutative ... ok [INFO] [stdout] test clifford::engine::tests::nonorthogonal_blade_products_persist_across_calls_and_clones ... ok [INFO] [stdout] test clifford::engine::tests::orthogonal_blade_product_handles_repeated_indices_directly ... ok [INFO] [stdout] test clifford::engine::tests::pow_e0_squared_equals_q0_char0 ... ok [INFO] [stdout] test clifford::engine::tests::pow_mixed_grade_element_char0 ... ok [INFO] [stdout] test clifford::engine::tests::ordinal_clifford_transfinite_squares_work ... ok [INFO] [stdout] test clifford::engine::tests::algebra_dimension_must_fit_blade_mask - should panic ... ok [INFO] [stdout] test clifford::engine::tests::orthogonal_fast_product_reproduces_reduce_word ... ok [INFO] [stdout] test clifford::engine::tests::pow_one_is_identity ... ok [INFO] [stdout] test clifford::engine::tests::even_subalgebra_generator_squares_follow_the_pivot_law_not_hardcoded_minus_one ... ok [INFO] [stdout] test clifford::engine::tests::reflection_fixes_and_negates ... ok [INFO] [stdout] test clifford::engine::tests::rotor_preserves_norm ... ok [INFO] [stdout] test clifford::engine::tests::twisted_adjoint_matches_reflect_and_sandwich ... ok [INFO] [stdout] test clifford::engine::tests::vector_inverse ... ok [INFO] [stdout] test clifford::engine::tests::reverse_is_metric_aware_on_nonorthogonal_blades ... ok [INFO] [stdout] test clifford::engine::multivector::tests::char2_wedge_blade_and_coefficients ... ok [INFO] [stdout] test clifford::engine::tests::reverse_is_gauge_transported_on_general_bilinear_metric ... ok [INFO] [stdout] test clifford::cga::tests::surreal_sphere_of_infinitesimal_radius ... ok [INFO] [stdout] test clifford::engine::tests::versor_over_surreal_metric ... ok [INFO] [stdout] test clifford::divided_power::tests::hopf_axioms_nimber ... ok [INFO] [stdout] test clifford::engine::metric::tests::direct_sum_shifts_right_bs_and_as_by_left_dim ... ok [INFO] [stdout] test clifford::hopf::tests::antipode_is_identity_over_nimber ... ok [INFO] [stdout] test clifford::frobenius::tests::fpn_frobenius_has_xn_minus_one_char_poly ... ok [INFO] [stdout] test clifford::hopf::tests::antipode_is_grade_involution_not_reversion_twist ... ok [INFO] [stdout] test clifford::engine::tests::pow_mixed_grade_element_char2 ... ok [INFO] [stdout] test clifford::engine::tests::pow_zero_is_scalar_one ... ok [INFO] [stdout] test clifford::hopf::tests::coproduct_is_algebra_map_for_wedge_small_dim ... ok [INFO] [stdout] test clifford::frobenius::tests::frobenius_power_composes_as_expected ... ok [INFO] [stdout] test clifford::hopf::tests::hopf_axioms_grassmann_nimber ... ok [INFO] [stdout] test clifford::hopf::tests::coproduct_is_algebra_map_for_wedge_nimber ... ok [INFO] [stdout] test clifford::hopf::tests::coproduct_is_algebra_map_for_wedge_rational ... ok [INFO] [stdout] test clifford::hopf::tests::hopf_axioms_grassmann_rational ... ok [INFO] [stdout] test clifford::frobenius::tests::nimber_subfield_frobenius_uses_the_same_outermorphism_oracle ... ok [INFO] [stdout] test clifford::outermorphism::tests::berkowitz_matches_exterior_coefficients_on_dense_small_maps ... ok [INFO] [stdout] test clifford::blade::tests::sparse_plucker_path_matches_owned_coefficient_oracle ... ok [INFO] [stdout] test clifford::outermorphism::tests::inverse_outermorphism_inverts ... ok [INFO] [stdout] test clifford::outermorphism::tests::determinant_of_identity_is_one ... ok [INFO] [stdout] test clifford::outermorphism::tests::outermorphism_is_an_algebra_map_on_wedge ... ok [INFO] [stdout] test clifford::outermorphism::tests::char_poly_is_char_faithful_over_nimbers ... ok [INFO] [stdout] test clifford::spinor::tests::char2_anisotropic_plane_gets_regular_representation ... ok [INFO] [stdout] test clifford::outermorphism::tests::outermorphism_respects_composition ... ok [INFO] [stdout] test clifford::outermorphism::tests::char_poly_constant_term_is_signed_determinant_3x3 ... ok [INFO] [stdout] test clifford::outermorphism::tests::grade_masks_cover_the_full_u128_basis_window ... ok [INFO] [stdout] test clifford::outermorphism::tests::singular_map_has_no_inverse ... ok [INFO] [stdout] test clifford::outermorphism::tests::determinant_2x2_matches_hand ... ok [INFO] [stdout] test clifford::outermorphism::tests::char_poly_of_identity_is_binomial ... ok [INFO] [stdout] test clifford::outermorphism::tests::determinant_3x3_matches_hand ... ok [INFO] [stdout] test clifford::outermorphism::tests::determinant_is_multiplicative_nimber ... ok [INFO] [stdout] test clifford::outermorphism::tests::trace_of_identity_at_dim_128_is_128 ... ok [INFO] [stdout] test clifford::outermorphism::tests::char_poly_matches_trace_and_determinant ... ok [INFO] [stdout] test clifford::outermorphism::tests::determinant_is_multiplicative_rational ... ok [INFO] [stdout] test clifford::spinor::tests::cl02_quaternion_spinors ... ok [INFO] [stdout] test clifford::spinor::tests::lazy_spinor_action_extends_past_explicit_matrix_cap ... ok [INFO] [stdout] test clifford::spinor::tests::nonorthogonal_char0_metrics_are_diagonalized_and_pulled_back ... ok [INFO] [stdout] test clifford::spinor::tests::nonsquare_rational_metrics_get_complete_regular_representation ... ok [INFO] [stdout] test clifford::spinor_norm::tests::classify_versor_bundles_both ... ok [INFO] [stdout] test clifford::spinor::tests::char2_spinors_reject_singular_and_general_bilinear_metrics ... ok [INFO] [stdout] test clifford::spinor::tests::char2_hyperbolic_plane_has_blade_idempotent_spinors ... ok [INFO] [stdout] test clifford::spinor::tests::cl11_split_spinors ... ok [INFO] [stdout] test clifford::spinor::tests::char2_polar_rank_dim4_singular_pairing_is_rank_deficient ... ok [INFO] [stdout] test clifford::spinor_norm::tests::dickson_parity_counts_reflections_mod_two ... ok [INFO] [stdout] test clifford::spinor::tests::cl30_pauli_spinors ... ok [INFO] [stdout] test clifford::spinor::tests::char2_lazy_spinor_action_is_left_regular ... ok [INFO] [stdout] test clifford::spinor_norm::tests::spinor_norm_of_a_reflection_is_q_of_the_vector ... ok [INFO] [stdout] test clifford::spinor::tests::cl20_spinors_are_two_by_two_real ... ok [INFO] [stdout] test clifford::versor::tests::cayley_bivector_to_rotor ... ok [INFO] [stdout] test clifford::spinor_norm::tests::generic_parity_agrees_with_char2_dickson ... ok [INFO] [stdout] test clifford::spinor_norm::tests::null_homogeneous_elements_are_not_versors ... ok [INFO] [stdout] test clifford::versor::tests::dual_undual_round_trip ... ok [INFO] [stdout] test clifford::spinor::tests::char2_polar_rank_dim4_nontrivial_pairing_is_full_rank ... ok [INFO] [stdout] test clifford::spinor::tests::positive_characteristic_and_non_enumerable_dims_are_rejected ... ok [INFO] [stdout] test clifford::spinor::tests::cl40_spinors ... ok [INFO] [stdout] test clifford::spinor::tests::degenerate_metrics_are_rejected_and_general_bilinear_gauge_is_supported ... ok [INFO] [stdout] test clifford::versor::tests::nonorthogonal_rotor_uses_true_reversion ... ok [INFO] [stdout] test clifford::versor::tests::multivector_inverse_in_char_two ... ok [INFO] [stdout] test clifford::versor::tests::meet_of_two_planes_is_their_common_line ... ok [INFO] [stdout] test clifford::spinor_norm::tests::char2_spinor_norm_is_raw_multiplicative_value ... ok [INFO] [stdout] test clifford::versor::tests::orthogonal_scalar_product_matches_full_product_oracle ... ok [INFO] [stdout] test clifford::versor::tests::reverse_is_anti_automorphism_on_general_bilinear_char0_metric ... ok [INFO] [stdout] test clifford::versor::tests::reverse_is_anti_automorphism_on_symmetric_metric ... ok [INFO] [stdout] test clifford::versor::tests::clifford_conjugate_signs_by_grade ... ok [INFO] [stdout] test forms::char0::tests::even_subalgebra_classification_drops_one_dimension ... ok [INFO] [stdout] test clifford::versor::tests::nonorthogonal_scalar_product_keeps_full_product_semantics ... ok [INFO] [stdout] test clifford::versor::tests::scalar_and_commutator_products ... ok [INFO] [stdout] test forms::char0::tests::classify_complex_rejects_dimension_past_max_basis_dim - should panic ... ok [INFO] [stdout] test clifford::spinor_norm::tests::spinor_norm_is_multiplicative_on_versors ... ok [INFO] [stdout] test clifford::versor::tests::general_multivector_inverse ... ok [INFO] [stdout] test forms::char0::tests::rational_classification_keeps_square_classes_and_local_hasse_data ... ok [INFO] [stdout] test forms::char0::tests::matrix_dimension_reaches_dim_128_boundary ... ok [INFO] [stdout] test forms::char0::tests::surcomplex_is_two_fold_on_exact_square_subdomain ... ok [INFO] [stdout] test clifford::versor::tests::reverse_panics_on_general_bilinear_char2_metric - should panic ... ok [INFO] [stdout] test clifford::versor::tests::versor_inverse_none_on_nonmonomial_surreal_norm ... ok [INFO] [stdout] test forms::char0::tests::low_dimensional_real_clifford_table ... ok [INFO] [stdout] test forms::char0::tests::classify_real_rejects_dimension_past_max_basis_dim - should panic ... ok [INFO] [stdout] test forms::char0::tests::dimension_is_consistent ... ok [INFO] [stdout] test forms::char0::tests::physics_signatures ... ok [INFO] [stdout] test forms::char0::tests::radical_gives_exterior_factor ... ok [INFO] [stdout] test forms::char0::tests::surcomplex_declines_unrepresented_square_classes ... ok [INFO] [stdout] test forms::char0::tests::surreal_declines_unrepresented_square_classes ... ok [INFO] [stdout] test forms::char2::arf::tests::anisotropic_plane_is_o_minus ... ok [INFO] [stdout] test forms::char0::tests::surreal_accepts_represented_exact_square_classes ... ok [INFO] [stdout] test forms::char2::arf::tests::arf_additive_over_graded_tensor ... ok [INFO] [stdout] test forms::char2::arf::tests::arf_f2_rejects_dimension_past_u128_bitmask - should panic ... ok [INFO] [stdout] test forms::char2::arf::tests::arf_is_additive_over_orthogonal_sum ... ok [INFO] [stdout] test forms::char2::arf::tests::arf_f2_rejects_mismatched_lengths - should panic ... ok [INFO] [stdout] test forms::char2::arf::tests::arf_rejects_general_bilinear_metrics ... ok [INFO] [stdout] test clifford::engine::tests::dense_orthogonal_accumulator_matches_the_independent_word_oracle ... ok [INFO] [stdout] test forms::char2::arf::tests::f4_forms_via_trace ... ok [INFO] [stdout] test forms::char2::arf::tests::f8_forms_use_the_absolute_trace ... ok [INFO] [stdout] test forms::char2::arf::tests::f8_zero_count_matches_arf_for_planes ... ok [INFO] [stdout] test forms::char2::arf::tests::general_agrees_with_f2_bitmask ... ok [INFO] [stdout] test forms::char2::arf::tests::generic_char2_agrees_with_f2_bitmask ... ok [INFO] [stdout] test forms::char2::arf::tests::hyperbolic_plane_is_o_plus ... ok [INFO] [stdout] test forms::char2::arf::tests::ordinal_detector_rejects_unrecognized_finite_subfields ... ok [INFO] [stdout] test forms::char2::arf::tests::ordinal_detector_extends_past_f64_window ... ok [INFO] [stdout] test forms::char2::arf::tests::ordinal_f64_forms_use_the_absolute_trace ... ok [INFO] [stdout] test forms::char2::arf::tests::radical_is_detected ... ok [INFO] [stdout] test forms::char2::brown::tests::beta_is_additive_under_orthogonal_sum ... ok [INFO] [stdout] test forms::char2::arf::tests::the_two_planes_are_distinguished ... ok [INFO] [stdout] test forms::char2::brown::tests::anisotropic_radical_is_detected ... ok [INFO] [stdout] test forms::char2::brown::tests::one_dimensional_generators ... ok [INFO] [stdout] test forms::char2::brown::tests::order_eight_relation ... ok [INFO] [stdout] test forms::char2::coverage_gap_tests::f4_product_of_two_irreducible_quadratics_forces_the_equal_degree_splitter ... ok [INFO] [stdout] test forms::char2::coverage_gap_tests::isometric_finite_char2_distinguishes_hyperbolic_from_anisotropic ... ok [INFO] [stdout] test forms::char2::brown::tests::double_is_four_times_arf ... ok [INFO] [stdout] test forms::char2::brown::tests::brown_f2_reduces_rank_40_without_enumeration ... ok [INFO] [stdout] test forms::char2::brown::tests::split_objects_vanish ... ok [INFO] [stdout] test forms::char2::dickson::tests::dickson_separates_rotations_from_reflections ... ok [INFO] [stdout] test forms::char2::dickson::tests::certificate_constructor_rejects_wrong_products ... ok [INFO] [stdout] test forms::char2::dickson::tests::dickson_of_versor_is_grade_parity ... ok [INFO] [stdout] test forms::char2::dickson::tests::extension_field_products_recompose_and_match_clifford_parity ... ok [INFO] [stdout] test forms::char2::dickson::tests::invalid_inputs_are_rejected_explicitly ... ok [INFO] [stdout] test forms::char2::dickson::tests::identity_and_single_symmetry_are_certified_over_f2 ... ok [INFO] [stdout] test forms::char2::dickson::tests::nimber_factorization_certificates_remain_generic ... ok [INFO] [stdout] test forms::char2::extraspecial::tests::anisotropic_plane_is_minus_type_q8_cell ... ok [INFO] [stdout] test forms::char2::extraspecial::tests::fourier_intertwiner_exchanges_position_and_momentum ... ok [INFO] [stdout] test forms::char2::dickson::tests::totally_singular_f4_residual_gets_the_rank_plus_two_factorization ... ok [INFO] [stdout] test forms::char2::extraspecial::tests::nimber_metric_route_matches_arf_classifier ... ok [INFO] [stdout] test forms::char2::extraspecial::tests::hyperbolic_plane_is_plus_type_d8_cell ... ok [INFO] [stdout] test forms::char2::field::tests::class_is_f2_linear ... ok [INFO] [stdout] test forms::classify::tests::algebra_classify_matches_metric_classify ... ok [INFO] [stdout] test forms::char2::field::tests::generic_helper_is_usable ... ok [INFO] [stdout] test forms::char2::extraspecial::tests::transvection_intertwiner_verifies_on_the_q_equals_one_branch ... ok [INFO] [stdout] test forms::char2::extraspecial::tests::heisenberg_representation_handles_rank_two_symplectic_reduction ... ok [INFO] [stdout] test forms::classify::tests::char2_witt_decomp_defective_radical_matches_documented_caveat ... ok [INFO] [stdout] test forms::classify::tests::classify_error_reports_singular_form_with_radical_data ... ok [INFO] [stdout] test forms::classify::tests::classify_error_distinguishes_general_bilinear_from_window ... ok [INFO] [stdout] test forms::char2::extraspecial::tests::rejects_singular_non_f2_and_general_metrics ... ok [INFO] [stdout] test forms::classify::tests::char2_witt_decomp_display_marks_complement_dependence ... ok [INFO] [stdout] test forms::char2::field::tests::f2_class_is_the_identity ... ok [INFO] [stdout] test forms::classify::tests::structural_facades_dispatch ... ok [INFO] [stdout] test forms::classify::tests::classify_dispatches_on_scalar_type ... ok [INFO] [stdout] test forms::diagonalize::tests::characteristic_two_is_not_diagonalizable ... ok [INFO] [stdout] test forms::char2::field::tests::f4_artin_schreier_class_matches_solvability ... ok [INFO] [stdout] test forms::diagonalize::tests::classifiers_now_accept_nondiagonal_metrics ... ok [INFO] [stdout] test forms::equivalence::tests::defective_radical_ignores_complement_arf ... ok [INFO] [stdout] test forms::equivalence::tests::nimber_cross_subfield_isometry_witness ... ok [INFO] [stdout] test forms::equivalence::tests::oddchar_anisotropic_plane_over_f3 ... ok [INFO] [stdout] test forms::equivalence::tests::oddchar_isometry_and_witt ... ok [INFO] [stdout] test forms::equivalence::tests::odd_witt_decomp_display_matches_bound_python_repr ... ok [INFO] [stdout] test forms::equivalence::tests::real_isometry_is_signature_equality ... ok [INFO] [stdout] test forms::char2::brown::tests::reduction_matches_enumeration_on_all_four_dimensional_inputs ... ok [INFO] [stdout] test forms::field_invariants::tests::degree_one_extension_and_prime_reports_agree ... ok [INFO] [stdout] test forms::diagonalize::tests::nonfield_nonunit_pivot_returns_none ... ok [INFO] [stdout] test forms::diagonalize::tests::hyperbolic_plane_diagonalizes_to_disc_minus_one ... ok [INFO] [stdout] test forms::char2::dickson::tests::every_element_of_the_f2_split_four_symmetry_subgroup_is_certified ... ok [INFO] [stdout] test forms::equivalence::tests::ordinal_isometry_uses_common_finite_subfield_degree ... ok [INFO] [stdout] test forms::field_invariants::tests::extension_field_reports_use_field_order_not_characteristic_alone ... ok [INFO] [stdout] test forms::equivalence::tests::rational_isometry_sees_square_classes ... ok [INFO] [stdout] test forms::diagonalize::tests::off_diagonal_real_form_keeps_its_signature ... ok [INFO] [stdout] test forms::field_invariants::tests::level_of_finite_fields ... ok [INFO] [stdout] test forms::field_invariants::tests::formula_reports_agree_with_small_prime_field_searches ... ok [INFO] [stdout] test forms::equivalence::tests::real_witt_decomp_display_matches_bound_python_repr ... ok [INFO] [stdout] test forms::equivalence::tests::real_witt_decomposition_splits_hyperbolics ... ok [INFO] [stdout] test forms::field_invariants::tests::unsupported_field_parameters_return_none ... ok [INFO] [stdout] test forms::field_invariants::tests::pythagoras_number_of_finite_fields ... ok [INFO] [stdout] test forms::equivalence::tests::nimber_isometry_by_arf ... ok [INFO] [stdout] test forms::field_invariants::tests::numeric_report_has_canonical_display ... ok [INFO] [stdout] test forms::field_invariants::tests::sum_of_squares_spot_checks ... ok [INFO] [stdout] test forms::hermitian::tests::diagonal_real_form_has_sylvester_signature ... ok [INFO] [stdout] test forms::char2::dickson::tests::split_four_space_over_f2_exposes_the_reflection_generation_exception ... ok [INFO] [stdout] test forms::hermitian::tests::indefinite_and_radical ... ok [INFO] [stdout] test forms::field_invariants::tests::u_invariant_of_finite_fields_is_two ... ok [INFO] [stdout] test forms::hermitian::tests::finite_hermitian_forms_over_f9_are_rank_classified ... ok [INFO] [stdout] test forms::hermitian::tests::finite_hermitian_forms_include_char2_even_degree_fields ... ok [INFO] [stdout] test forms::hermitian::tests::surcomplex_restriction_keeps_quadratic_and_trace_polar_data ... ok [INFO] [stdout] test forms::hermitian::tests::finite_hermitian_forms_reject_odd_degree_fields ... ok [INFO] [stdout] test forms::hermitian::tests::finite_char2_restriction_keeps_the_norm_quadratic_form ... ok [INFO] [stdout] test forms::integral::codes::tests::construction_d_recovers_a_and_builds_nested_towers ... ok [INFO] [stdout] test forms::integral::codes::tests::hamming_macwilliams_matches_dual ... ok [INFO] [stdout] test forms::integral::codes::tests::direct_sum_and_repetition_codes_build_type_i_examples ... ok [INFO] [stdout] test forms::integral::codes::tests::non_self_orthogonal_prime_code_has_no_integral_construction_a ... ok [INFO] [stdout] test forms::hermitian::tests::off_diagonal_hermitian_diagonalizes ... ok [INFO] [stdout] test forms::hermitian::tests::off_diagonal_pivot_uses_conjugate_partner ... ok [INFO] [stdout] test forms::integral::codes::tests::optimized_direct_sums_preserve_rref_across_packed_boundaries ... ok [INFO] [stdout] test forms::integral::clifford_lattices::tests::real_clifford_group_order_matches_the_orthogonal_group_closed_form ... ok [INFO] [stdout] test forms::integral::codes::tests::packed_binary_generators_round_trip_across_word_boundaries ... ok [INFO] [stdout] test forms::integral::codes::tests::packed_rref_and_containment_cross_every_word_boundary ... ok [INFO] [stdout] test forms::integral::codes::tests::golay_macwilliams_and_construction_a_boundary ... ok [INFO] [stdout] test forms::hermitian::tests::restriction_refuses_a_doubled_dimension_past_the_engine_boundary ... ok [INFO] [stdout] test forms::integral::codes::tests::reed_muller_codes_have_classical_parameters_and_nesting ... ok [INFO] [stdout] test forms::integral::codes::tests::prime_code_dual_and_macwilliams_are_exact ... ok [INFO] [stdout] test forms::hermitian::tests::nimber_quadratic_middle_frobenius_reports_width_boundary ... ok [INFO] [stdout] test forms::integral::coherence::lattice_mod_two_arf_brown_witt_and_extraspecial_bridges_commute ... ok [INFO] [stdout] test forms::integral::coherence::lattice_rational_clifford_brauer_and_signature_spine_commutes ... ok [INFO] [stdout] test forms::integral::codes::tests::weight_enumerator_theta_matches_construction_a_theta ... ok [INFO] [stdout] test forms::integral::diagonal::tests::rat_val_is_signed_valuation_difference ... ok [INFO] [stdout] test forms::integral::diagonal::tests::rdiv_recovers_exact_quotient ... ok [INFO] [stdout] test forms::integral::diagonal::tests::v_p_and_unit_part_agree_on_known_factorizations ... ok [INFO] [stdout] test forms::integral::codes::tests::type_ii_codes_build_the_rank_8_and_rank_16_lattices ... ok [INFO] [stdout] test forms::integral::diagonal::tests::rational_mod_int_reduces_into_the_half_open_interval ... ok [INFO] [stdout] test forms::hermitian::tests::signature_over_surreal_base ... ok [INFO] [stdout] test forms::hermitian::tests::skew_hermitian_signature_via_multiplication_by_i ... ok [INFO] [stdout] test forms::integral::discriminant::heisenberg::tests::ade_two_elementary_discriminant_modules_match_doubled_heisenberg_models ... ok [INFO] [stdout] test forms::integral::codes::tests::ternary_golay_gives_the_honest_odd_construction_a_lattice ... ok [INFO] [stdout] test forms::integral::diagonal::tests::odd_unit_residue_and_unit_mod8_match_known_units ... ok [INFO] [stdout] test forms::hermitian::tests::surcomplex_restriction_doubles_signature_and_radical ... ok [INFO] [stdout] test forms::integral::coherence::even_lattice_discriminant_weil_brown_and_signature_spine_commutes ... ok [INFO] [stdout] test forms::integral::discriminant::heisenberg::tests::adapter_declines_outside_nontrivial_two_elementary_overlap ... ok [INFO] [stdout] test forms::integral::discriminant::form::tests::indexed_hnf_reduction_agrees_on_shifted_representatives ... ok [INFO] [stdout] test forms::integral::discriminant::heisenberg::tests::report_display_pins_the_projective_comparison ... ok [INFO] [stdout] test forms::integral::discriminant::tests::fqm_phase_extends_past_2_elementary_brown_slice ... ok [INFO] [stdout] test forms::integral::clifford_lattices::tests::clifford_barnes_wall_16_invariants_display_renders_the_certificate ... ok [INFO] [stdout] test forms::integral::discriminant::tests::fqm_gauss_phase_reports_primary_factors ... ok [INFO] [stdout] test forms::integral::discriminant::tests::fqm_gauss_phase_display_renders_order_phase_and_primary_factors ... ok [INFO] [stdout] test forms::integral::discriminant::tests::is_isomorphic_finds_a_nontrivial_generator_image_across_different_presentations ... ok [INFO] [stdout] test forms::integral::discriminant::tests::odd_construction_a_witnesses_type_i_unimodular_lattices ... ok [INFO] [stdout] test forms::integral::discriminant::tests::odd_discriminant_form_uses_q_mod_one ... ok [INFO] [stdout] test forms::integral::discriminant::tests::fqm_phase_matches_signature_genus_and_float_oracle_on_zoo ... ok [INFO] [stdout] test forms::integral::discriminant::tests::odd_milgram_report_matches_signature_with_oddity_correction ... ok [INFO] [stdout] test forms::integral::discriminant::tests::a1_discriminant_form_has_quarter_turn_phase ... ok [INFO] [stdout] test forms::integral::discriminant::tests::odd_lattices_have_no_even_discriminant_quadratic_form ... ok [INFO] [stdout] test forms::integral::discriminant::tests::odd_milgram_invariants_display_renders_the_congruence_data ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::fqm_witt_class_can_leave_a_noncyclic_anisotropic_core ... ok [INFO] [stdout] test forms::integral::discriminant::tests::ade_root_lattices_match_milgram_phase ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::fqm_witt_class_display_renders_order_phase_and_primary_summands ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::fqm_witt_class_of_d4_matches_brown_invariant ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::fqm_witt_class_reduces_an_exponent_eight_two_primary_block ... ok [INFO] [stdout] test forms::integral::discriminant::tests::brown_invariant_is_none_off_the_2_elementary_slice ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::fqm_witt_reduces_hyperbolic_odd_primary_pair ... ok [INFO] [stdout] test forms::integral::discriminant::tests::brown_invariant_recovers_signature_mod8_on_2_elementary_forms ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_checks_even_two_primary_borderline ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::native_cyclic_module_matches_lattice_a1 ... ok [INFO] [stdout] test forms::integral::discriminant::tests::discriminant_iso_is_reflexive_and_q_sensitive ... ok [INFO] [stdout] test forms::integral::discriminant::tests::nikulin_genus_iff_signature_and_discriminant_form ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_checks_odd_primary_borderline ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_forces_odd_prime_determinant_obstruction ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_accepts_realized_lattice_discriminant_forms ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_forces_two_adic_determinant_obstruction ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::fqm_witt_reduces_hyperbolic_two_primary_pair ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::fqm_witt_refines_phase_projection ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_keeps_odd_two_primary_boundary ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_invariants_display_renders_the_verdict ... ok [INFO] [stdout] test forms::integral::discriminant::tests::e8_is_unimodular_and_milgram_trivial ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::nikulin_existence_obstruction_display_covers_every_variant ... ok [INFO] [stdout] test forms::integral::genus::tests::canonical_symbol_at_exposes_the_compared_two_adic_symbol ... ok [INFO] [stdout] test forms::integral::genus::tests::genus_display_renders_signature_det_and_canonical_symbols ... ok [INFO] [stdout] test forms::integral::genus::tests::coherence_report_pins_hasse_and_isotropy ... ok [INFO] [stdout] test forms::integral::fqm_witt::tests::generator_validation_matches_exhaustive_validator_on_small_tables ... ok [INFO] [stdout] test forms::integral::genus::tests::genus_symbols_collapse_to_the_direct_local_field_invariants ... ok [INFO] [stdout] test forms::integral::genus::tests::jordan_symbols_match_known_oracles ... ok [INFO] [stdout] test forms::integral::genus::tests::two_adic_reduction_matches_sage_quintuple_examples ... ok [INFO] [stdout] test forms::integral::genus::tests::two_adic_sign_walking_canonicalizes_train_signs ... ok [INFO] [stdout] test forms::integral::genus::tests::scale_symbol_display_renders_the_conway_sloane_notation ... ok [INFO] [stdout] test forms::integral::genus::tests::reflexive_and_isometry_invariant ... ok [INFO] [stdout] test forms::integral::genus::tests::two_adic_jordan_prefers_odd_block_on_valuation_tie ... ok [INFO] [stdout] test forms::integral::genus::tests::two_adic_sign_walking_across_type_ii_bridge_is_pinned ... ok [INFO] [stdout] test forms::integral::kneser::tests::incremental_norm_enumerator_matches_hyperbolic_isotropy ... ok [INFO] [stdout] test forms::integral::genus::tests::z8_and_e8_differ_only_at_two ... ok [INFO] [stdout] test forms::integral::kneser::tests::e8_two_neighbor_stays_in_the_even_unimodular_genus ... ok [INFO] [stdout] test forms::integral::genus::tests::two_adic_trains_continue_across_one_empty_scale ... ok [INFO] [stdout] test forms::integral::codes::tests::construction_b_cuts_out_the_golay_half_leech_lattice ... ok [INFO] [stdout] test forms::integral::genus::tests::determinant_and_signature_distinguish_genera ... ok [INFO] [stdout] test forms::integral::lattice::tests::incremental_exact_box_norms_match_the_public_quadratic_form ... ok [INFO] [stdout] test forms::integral::lattice::tests::determinants_and_evenness ... ok [INFO] [stdout] test forms::integral::lattice::tests::lattice_clifford_metrics_preserve_q_and_polar_data ... ok [INFO] [stdout] test forms::integral::lattice::tests::invariant_factors_track_discriminant_group ... ok [INFO] [stdout] test forms::integral::kneser::tests::bad_lines_are_rejected ... ok [INFO] [stdout] test forms::integral::kneser::tests::kneser_mass_record_and_invariants_display_render_the_mass_report ... ok [INFO] [stdout] test forms::integral::lattice::tests::levels_match_known_values ... ok [INFO] [stdout] test forms::integral::lattice::tests::short_vectors_are_indefinite_safe ... ok [INFO] [stdout] test forms::integral::lattice::tests::rejects_non_symmetric ... ok [INFO] [stdout] test forms::integral::lattice::tests::signature_handles_indefinite_and_skew_bases ... ok [INFO] [stdout] test forms::integral::lattice::tests::minimum_and_kissing_numbers ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::bernoulli_recurrence_matches_standard_even_values ... ok [INFO] [stdout] test forms::integral::lattice::tests::automorphism_budget_cutoff_reports_none ... ok [INFO] [stdout] test forms::integral::genus::tests::two_adic_compartments_and_trains_follow_the_corrected_rules ... ok [INFO] [stdout] test forms::integral::lattice::tests::short_vectors_return_original_coordinates_after_basis_reduction ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::bernoulli_one_is_the_plus_convention ... ok [INFO] [stdout] test forms::integral::kneser::tests::rank8_report_is_the_unique_mass_class ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::leech_aut_order_has_the_co0_factorisation ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::mass_recovers_e8_weyl_group_order ... ok [INFO] [stdout] test forms::integral::modular::tests::eisenstein_series_start_with_standard_coefficients ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::mass_rejects_non_multiples_of_eight ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::golay_is_a_self_dual_doubly_even_code ... ok [INFO] [stdout] test forms::integral::modular::tests::eisenstein_constants_derive_from_the_shared_bernoulli_source ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::mass_matches_known_values_through_24 ... ok [INFO] [stdout] test forms::integral::lattice::tests::direct_sum_is_block_diagonal ... ok [INFO] [stdout] test forms::integral::lattice::tests::automorphism_orders_match_known ... ok [INFO] [stdout] test forms::integral::modular::tests::higher_weight_identification_recovers_known_coordinates ... ok [INFO] [stdout] test forms::integral::lattice::tests::ldl_returns_none_on_indefinite_gram ... ok [INFO] [stdout] test forms::integral::modular::tests::sigma_power_panics_past_the_documented_cap_instead_of_wrapping - should panic ... ok [INFO] [stdout] test forms::integral::modular::tests::sigma_power_stays_exact_up_to_the_documented_cap ... ok [INFO] [stdout] test forms::integral::modular::tests::modular_identification_solves_exact_coordinates ... ok [INFO] [stdout] test forms::integral::niemeier::tests::automorphism_orders_match_the_known_anchor_cases ... ok [INFO] [stdout] test forms::integral::niemeier::tests::niemeier_catalogue_has_the_24_classes ... ok [INFO] [stdout] test forms::integral::niemeier::tests::niemeier_record_display_renders_label_glue_and_aut_order ... ok [INFO] [stdout] test forms::integral::niemeier::tests::niemeier_theta_series_are_pinned_by_root_counts ... ok [INFO] [stdout] test forms::integral::root_lattices::tests::e_series_invariants ... ok [INFO] [stdout] test forms::integral::root_lattices::tests::e8_is_the_unique_even_unimodular_rank8 ... ok [INFO] [stdout] test forms::integral::genus::tests::even_unimodular_rank16_share_a_genus ... ok [INFO] [stdout] test forms::integral::root_lattices::tests::d_n_invariants ... ok [INFO] [stdout] test forms::integral::root_lattices::tests::a_n_invariants ... ok [INFO] [stdout] test forms::integral::theta::tests::theta_convolves_orthogonal_components ... ok [INFO] [stdout] test forms::integral::root_lattices::tests::root_lattice_predicate ... ok [INFO] [stdout] test forms::integral::modular::tests::stepped_basis_matches_linear_power_oracle ... ok [INFO] [stdout] test forms::integral::niemeier::tests::root_lattice_constructors_match_catalogue_data ... ok [INFO] [stdout] test forms::integral::theta::tests::siegel_weil_rank16_mass_identity_is_exact ... ok [INFO] [stdout] test forms::integral::niemeier::tests::niemeier_siegel_weil_average_is_e12 ... ok [INFO] [stdout] test forms::integral::theta::tests::theta_series_identifies_the_full_modular_forms ... ok [INFO] [stdout] test forms::integral::weyl_versors::tests::a2_simple_roots_act_as_cartan_reflections ... ok [INFO] [stdout] test forms::integral::theta::tests::theta_series_level4_handles_odd_lattices ... ok [INFO] [stdout] test forms::integral::theta::tests::theta_series_respects_even_positive_boundary ... ok [INFO] [stdout] test forms::integral::weyl_versors::tests::d4_report_uses_weyl_order_not_full_diagram_automorphisms ... ok [INFO] [stdout] test forms::integral::weyl_versors::tests::display_renders_the_full_report ... ok [INFO] [stdout] test forms::integral::niemeier::tests::niemeier_mass_sum_is_the_rank24_mass ... ok [INFO] [stdout] test forms::local_global::adelic::tests::adelic_isotropy_display_render_pin ... ok [INFO] [stdout] test forms::local_global::adelic::tests::hamilton_quaternions_ramify_at_2_and_infinity ... ok [INFO] [stdout] test forms::local_global::adelic::tests::brauer_invariant_sum_is_zero_in_q_mod_z ... ok [INFO] [stdout] test forms::local_global::adelic::tests::adelic_hasse_minkowski_matches_is_isotropic_q ... ok [INFO] [stdout] test forms::local_global::adelic::tests::rank_below_three_is_out_of_domain_not_a_verdict ... ok [INFO] [stdout] test forms::local_global::function_field::tests::constant_extension_image_is_full_and_good_places_split ... ok [INFO] [stdout] test forms::local_global::function_field::tests::constant_extension_reciprocity_full_strength ... ok [INFO] [stdout] test forms::local_global::function_field::tests::factors_into_monic_irreducibles ... ok [INFO] [stdout] test forms::local_global::function_field::tests::ff_adelic_isotropy_display_render_pin ... ok [INFO] [stdout] test forms::local_global::function_field::tests::cross_checks_springer_laurent_at_a_linear_place ... ok [INFO] [stdout] test forms::local_global::function_field::tests::function_field_place_display_render_pin ... ok [INFO] [stdout] test forms::local_global::function_field::tests::finite_place_precondition_rejects_reducible_polynomial - should panic ... FAILED [INFO] [stdout] test forms::local_global::function_field::tests::hasse_minkowski_global_matches_adelic ... ok [INFO] [stdout] test forms::local_global::function_field::tests::rank_two_is_a_global_square_condition ... ok [INFO] [stdout] test forms::local_global::adelic::tests::hilbert_product_is_plus_one_reciprocity ... ok [INFO] [stdout] test forms::local_global::function_field::tests::hilbert_symbol_is_symmetric_and_steinberg ... ok [INFO] [stdout] test forms::local_global::function_field::tests::quaternion_ramifies_at_an_even_number_of_places ... ok [INFO] [stdout] test forms::local_global::function_field::tests::tame_symbol_quadratic_slice_matches_hilbert_symbol ... ok [INFO] [stdout] test forms::local_global::function_field::tests::valuations_at_places ... ok [INFO] [stdout] test forms::local_global::function_field::tests::residue_field_order_overflow_returns_none ... ok [INFO] [stdout] test forms::local_global::function_field::tests::tame_symbol_degree_four_convention_and_reciprocity ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::reciprocity_sweep_over_f4 ... ok [INFO] [stdout] test forms::local_global::function_field::tests::reciprocity_holds_small ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::residue_oracles_at_a_degree_two_place ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::reciprocity_sweep_over_f2 ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::symbol_oracle_a1_b_t ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::symbol_oracle_a_recip_tp1_b_t ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::symbol_oracle_over_f4 ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::symbol_relations ... ok [INFO] [stdout] test forms::local_global::function_field_char2::tests::symbol_oracle_a_recip_irreducible_b_t ... ok [INFO] [stdout] test forms::local_global::global_field::tests::global_isotropy_matches_function_field_facade ... ok [INFO] [stdout] test forms::integral::weyl_versors::tests::e8_coxeter_versor_has_order_30 ... ok [INFO] [stdout] test forms::local_global::padic::tests::hilbert_reciprocity ... ok [INFO] [stdout] test forms::local_global::global_field::tests::global_isotropy_matches_q_field_facade ... ok [INFO] [stdout] test forms::local_global::padic::tests::hilbert_symbol_is_symmetric_and_bimultiplicative_seed ... ok [INFO] [stdout] test forms::local_global::global_field::tests::reciprocity_over_function_field ... ok [INFO] [stdout] test forms::local_global::global_field::tests::reciprocity_over_q ... ok [INFO] [stdout] test forms::local_global::padic::tests::classic_anisotropic_ternaries ... ok [INFO] [stdout] test forms::local_global::padic::tests::hilbert_detects_nontrivial_quaternion_algebra ... ok [INFO] [stdout] test forms::local_global::padic::tests::rank_two_square_test_is_exact_near_i128_limit ... ok [INFO] [stdout] test forms::local_global::padic::tests::is_square_qp_basics ... ok [INFO] [stdout] test forms::local_global::padic::tests::place_display_render_pin ... ok [INFO] [stdout] test forms::local_global::padic::tests::qp_apis_reject_nonprime_places ... ok [INFO] [stdout] test forms::local_global::padic::tests::rank_two_is_global_square_condition ... ok [INFO] [stdout] test forms::local_global::padic::tests::three_squares_and_sums_of_squares ... ok [INFO] [stdout] test forms::oddchar::tests::euler_criterion_matches_brute_force ... ok [INFO] [stdout] test forms::oddchar::tests::hasse_is_trivial_over_finite_fields ... ok [INFO] [stdout] test forms::oddchar::tests::oddchar_witt_is_a_homomorphism ... ok [INFO] [stdout] test forms::oddchar::tests::witt_group_is_z2xz2_when_minus_one_square ... ok [INFO] [stdout] test forms::oddchar::tests::invalid_moduli_are_rejected ... ok [INFO] [stdout] test forms::integral::weyl_versors::tests::e6_e7_and_more_ade_ranks_match_standard_coxeter_numbers ... ok [INFO] [stdout] test forms::quadric_fit::tests::bias_matches_brute_force_zero_count_on_nonsingular_forms_up_to_k4 ... ok [INFO] [stdout] test forms::oddchar::tests::discriminant_distinguishes_planes_over_f3 ... ok [INFO] [stdout] test forms::quadric_fit::tests::display_shows_bias_only_for_nonsingular_fits ... ok [INFO] [stdout] test forms::quadric_fit::tests::cubic_truth_table_is_rejected ... ok [INFO] [stdout] test forms::quadric_fit::tests::point_outside_domain_returns_none_not_panic ... ok [INFO] [stdout] test forms::quadric_fit::tests::fit_recovers_known_quadrics ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_anisotropic_u4 ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_over_f4 ... ok [INFO] [stdout] test forms::quadric_fit::tests::quadric_count_and_roundtrip_over_f2_cubed ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_residue_plus_wild ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_residue_bit ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_perp_killed_by_p ... ok [INFO] [stdout] test forms::integral::lattice::geometry::tests::fincke_pohst_incremental_norm_matches_the_public_form ... ok [INFO] [stdout] test forms::quadric_fit::tests::fit_supports_high_dimensional_quadratic_coefficient_layout ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_wild_pole ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_split_across_phi1_and_psi ... ok [INFO] [stdout] test forms::springer::char2::tests::aj_oracle_sum_of_two_residue_bits_cancels ... ok [INFO] [stdout] test forms::springer::char2::tests::decomposition_at_a_degree_two_place ... ok [INFO] [stdout] test forms::springer::char2::tests::display_render_pin ... ok [INFO] [stdout] test forms::springer::char2::tests::global_rank2_pe_obstruction ... ok [INFO] [stdout] test forms::springer::char2::tests::global_pe_direct ... ok [INFO] [stdout] test forms::springer::char2::tests::global_rank3 ... ok [INFO] [stdout] test forms::springer::char2::tests::global_rank4 ... ok [INFO] [stdout] test forms::springer::char2::tests::global_rank_ge_5_is_isotropic ... ok [INFO] [stdout] test forms::springer::char2::tests::global_over_f4 ... ok [INFO] [stdout] test forms::springer::char2::tests::high_rank_anisotropic_dim_strips_explicit_hyperbolic_blocks ... ok [INFO] [stdout] test forms::springer::char2::tests::decomposition_agrees_with_isotropy_on_rank4 ... ok [INFO] [stdout] test forms::springer::char2::tests::high_rank_nonsingular_dimension_uses_aj_kernel ... ok [INFO] [stdout] test forms::springer::char2::tests::high_rank_one_class_singular_tail_uses_clifford_invariant ... ok [INFO] [stdout] test forms::springer::char2::tests::degree_two_place_keeps_hensel_carries_in_asnf ... ok [INFO] [stdout] test forms::springer::char2::tests::iso_rank3 ... ok [INFO] [stdout] test forms::springer::char2::tests::iso_rank2 ... ok [INFO] [stdout] test forms::springer::char2::tests::pure_singular_local_dimension_reads_square_classes ... ok [INFO] [stdout] test forms::springer::char2::tests::iso_rank4 ... ok [INFO] [stdout] test forms::integral::clifford_lattices::tests::clifford_rows_recover_construction_d_barnes_wall_16 ... ok [INFO] [stdout] test forms::springer::char2::tests::rank_ge_5_is_isotropic ... ok [INFO] [stdout] test forms::springer::laurent::tests::radical_and_char2_rejection ... ok [INFO] [stdout] test forms::oddchar::tests::dim_plus_disc_is_complete_over_finite_fields ... ok [INFO] [stdout] test forms::springer::laurent::tests::extension_residue_field_f9_square_class ... ok [INFO] [stdout] test forms::springer::local::tests::display_render_pin ... ok [INFO] [stdout] test forms::springer::local::tests::polygon_outlives_springer ... ok [INFO] [stdout] test forms::springer::local::tests::polygon_is_the_springer_shadow ... ok [INFO] [stdout] test forms::springer::local::tests::one_engine_decomposes_every_discrete_leg ... ok [INFO] [stdout] test forms::springer::char2::tests::mixed_singular_tail_collapses_to_local_square_classes ... ok [INFO] [stdout] test forms::springer::laurent::tests::two_residue_layers_survive ... ok [INFO] [stdout] test forms::springer::laurent::tests::residue_square_class_tracks_nonsquares_in_f5 ... ok [INFO] [stdout] test forms::springer::padic::tests::two_residue_layers_survive ... ok [INFO] [stdout] test forms::springer::padic::tests::unramified_qq_reads_f9_square_class ... ok [INFO] [stdout] test forms::springer::surreal::tests::display_render_pin ... ok [INFO] [stdout] test forms::springer::padic::tests::radical_and_rejections ... ok [INFO] [stdout] test forms::springer::padic::tests::unramified_qq_recovers_qp_when_residue_degree_is_one ... ok [INFO] [stdout] test forms::springer::local::tests::residue_char_two_is_rejected_uniformly ... ok [INFO] [stdout] test forms::springer::surreal::tests::nonorthogonal_metric_is_diagonalized_first ... ok [INFO] [stdout] test forms::springer::surreal::tests::reads_only_the_leading_term ... ok [INFO] [stdout] test forms::springer::surreal::tests::single_valuation_bucket ... ok [INFO] [stdout] test forms::springer::surreal::tests::witt_class_is_just_the_signature ... ok [INFO] [stdout] test forms::symplectic::tests::degenerate_form_is_all_radical ... ok [INFO] [stdout] test forms::springer::surreal::tests::three_valuation_levels ... ok [INFO] [stdout] test forms::symplectic::tests::free_function_matches_method ... ok [INFO] [stdout] test forms::symplectic::tests::hyperbolic_plane_has_rank_two ... ok [INFO] [stdout] test forms::springer::local::tests::unramified_qq_reads_extension_residue ... ok [INFO] [stdout] test forms::springer::surreal::tests::radical_is_counted_separately ... ok [INFO] [stdout] test forms::symplectic::tests::char_two_alternating_is_symmetric_with_zero_diagonal ... ok [INFO] [stdout] test forms::springer::padic::tests::residue_square_class_tracks_nonsquares ... ok [INFO] [stdout] test forms::symplectic::tests::nonfield_nonunit_pivot_is_refused ... ok [INFO] [stdout] test forms::trace_form::tests::cyclic_trace_form_degree_two_satisfies_cayley_hamilton_relation ... ok [INFO] [stdout] test forms::trace_form::tests::cyclic_trace_form_degree_three_has_hyperbolic_cross_pair ... ok [INFO] [stdout] test forms::trace_form::tests::frobenius_reciprocity_projection_formula ... ok [INFO] [stdout] test forms::trace_form::tests::gold_form_over_nim_subfields_matches_rank_formula ... ok [INFO] [stdout] test forms::symplectic::tests::rank_is_always_even_and_radical_splits_off ... ok [INFO] [stdout] test forms::trace_form::tests::cyclic_trace_form_degree_two_is_literal_trd_square ... ok [INFO] [stdout] test forms::trace_form::tests::gold_form_over_small_fpn_matches_rank_formula ... ok [INFO] [stdout] test forms::trace_form::tests::qq_twist_uses_the_unramified_galois_basis ... ok [INFO] [stdout] test forms::trace_form::tests::metric_map_lifts_fp2_to_nimber ... ok [INFO] [stdout] test forms::trace_form::tests::restriction_preserves_orthogonal_sums_and_exposes_even_degree_kernel ... ok [INFO] [stdout] test forms::trace_form::tests::transfer_of_a_hyperbolic_form_is_split ... ok [INFO] [stdout] test forms::symplectic::tests::non_alternating_is_rejected ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::add_is_xor_of_ramification_sets ... ok [INFO] [stdout] test forms::trace_form::tests::springer_odd_degree_restriction_is_injective ... ok [INFO] [stdout] test forms::trace_form::tests::surcomplex_twist_is_the_norm_form ... ok [INFO] [stdout] test forms::oddchar::tests::extension_fields_use_the_same_trait_path ... ok [INFO] [stdout] test forms::trace_form::tests::transfer_of_unit_form_is_the_k0_twisted_form ... ok [INFO] [stdout] test forms::oddchar::tests::witt_group_is_z4_when_minus_one_nonsquare ... ok [INFO] [stdout] test forms::springer::char2::tests::global_totally_singular ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::clifford_is_hasse_plus_the_documented_correction ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::n_one_and_two_have_no_correction ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::every_class_satisfies_reciprocity ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::rank_one_is_always_split ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::display_render_pin ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::rank_two_clifford_is_the_quaternion_algebra ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_char2_checks_actual_graded_tensor_metric ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_char2_rejects_singular_and_general_bilinear_metrics ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_char2_is_arf_witt_z2_and_homomorphic ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_function_field_projects_radicals_and_compares_square_classes ... ok [INFO] [stdout] test forms::integral::clifford_lattices::tests::clifford_barnes_wall_report_pins_the_group_order_boundary ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_function_field_projects_to_clifford_and_signed_discriminant ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::rank_three_even_clifford_is_minus_ab_minus_ac ... ok [INFO] [stdout] test forms::trace_form::tests::scaled_gold_diagonal_dual_matches_the_trace_pairing ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_rational_extends_to_the_real_bott_clock ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_oddchar_homomorphism_and_discovered_order_four ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_rational_projects_to_clifford_and_signed_discriminant ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::rejects_degenerate_and_overflow ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::split_form_is_split ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_complex_is_z2 ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_function_field_uses_wall_law_and_metric_facade ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::brauer_wall_class_display_render_pin ... ok [INFO] [stdout] test forms::witt::brauer_rational::tests::hamilton_quaternions_ramify_at_2_and_infinity ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_real_is_the_bott_clock ... ok [INFO] [stdout] test forms::witt::centers::tests::dimension_zero_and_singular_forms_keep_their_exact_boundaries ... ok [INFO] [stdout] test forms::witt::centers::tests::characteristic_two_even_center_is_the_artin_schreier_discriminant_algebra ... ok [INFO] [stdout] test forms::witt::centers::tests::finite_odd_and_function_field_centers_match_brauer_wall_coordinates ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::ff_clifford_is_hasse_plus_the_documented_correction_all_residues ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::function_field_brauer2_class_display_render_pin ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_rational_uses_the_wall_twisted_group_law ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_real_discovers_z8 ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::bw_real_is_homomorphism_over_graded_tensor ... ok [INFO] [stdout] test forms::witt::centers::tests::nimber_and_ordinal_centers_reuse_their_finite_field_windows ... ok [INFO] [stdout] test forms::witt::centers::tests::rational_centers_switch_with_parity_and_materialize_volume_relation ... ok [INFO] [stdout] test forms::witt::class::tests::singular_forms_are_not_silently_projected_to_witt_classes ... ok [INFO] [stdout] test forms::witt::centers::tests::real_and_complex_center_classes_match_the_classification_tables ... ok [INFO] [stdout] test forms::witt::class::tests::group_law_is_xor_of_arf ... ok [INFO] [stdout] test forms::witt::class::tests::hyperbolic_is_identity_anisotropic_is_order_two ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::ff_rank_three_even_clifford_is_minus_ab_minus_ac ... ok [INFO] [stdout] test forms::witt::brauer_wall::tests::ff_rank_two_clifford_is_the_quaternion_algebra ... ok [INFO] [stdout] test forms::witt::cyclic::tests::degree_two_matches_quaternion_invariant ... ok [INFO] [stdout] test forms::witt::cyclic::tests::add_is_modular_and_drops_cancellations ... ok [INFO] [stdout] test forms::witt::cyclic::tests::degree_three_image_additivity_and_convention ... ok [INFO] [stdout] test forms::witt::centers::tests::nondiagonal_and_general_gauge_centers_use_actual_central_generators ... ok [INFO] [stdout] test forms::witt::cyclic::tests::degree_two_norm_form_oracle ... ok [INFO] [stdout] test forms::witt::cyclic::tests::from_local_reduces_mod_z_and_drops_zeros ... ok [INFO] [stdout] test forms::witt::cyclic::tests::norm_classes_split ... ok [INFO] [stdout] test forms::witt::cyclic::tests::reciprocity_reread_through_brauer_class ... ok [INFO] [stdout] test forms::witt::cyclic::tests::restriction_and_corestriction_obey_local_degree_formulas ... ok [INFO] [stdout] test forms::witt::class::tests::witt_class_over_f4 ... ok [INFO] [stdout] test forms::witt::cyclic::tests::from_two_torsion_is_additive ... ok [INFO] [stdout] test forms::witt::cyclic::tests::qq_cyclic_invariant_obeys_restriction_corestriction ... ok [INFO] [stdout] test forms::witt::cyclic::tests::restriction_preserves_global_brauer_reciprocity ... ok [INFO] [stdout] test forms::witt::cyclic::tests::invariant_sum_reduces_mod_z ... ok [INFO] [stdout] test forms::witt::cyclic::tests::tame_quadratic_symbol_matches_hilbert_symbol_qp ... ok [INFO] [stdout] test forms::witt::cyclic::tests::tame_symbol_pins_kummer_sign_convention ... ok [INFO] [stdout] test forms::witt::cyclic::tests::degree_two_splitting_law ... ok [INFO] [stdout] test forms::witt::cyclic::tests::display_render_pin ... ok [INFO] [stdout] test forms::witt::cyclic::tests::two_torsion_round_trips ... ok [INFO] [stdout] test forms::witt::milnor::tests::degree_zero_is_zmod_two ... ok [INFO] [stdout] test forms::witt::milnor::tests::dyadic_residue_is_milnors_hand_boundary ... ok [INFO] [stdout] test forms::witt::milnor::tests::function_field_residues_reject_radical_entries ... ok [INFO] [stdout] test forms::witt::cyclic::tests::non_two_torsion_class_has_no_ramification_set ... ok [INFO] [stdout] test forms::witt::milnor::tests::function_field_residues_split_at_infinity ... ok [INFO] [stdout] test forms::witt::milnor::tests::function_field_k1_equality_is_modulo_global_squares ... ok [INFO] [stdout] test forms::witt::cyclic::tests::tame_symbol_reads_extension_residue_field ... ok [INFO] [stdout] test forms::witt::milnor::tests::pure_symbol_residues_reuse_the_existing_local_symbols ... ok [INFO] [stdout] test forms::witt::milnor::tests::radical_entry_is_rejected ... ok [INFO] [stdout] test forms::witt::milnor::tests::global_residues_include_the_dyadic_cell ... ok [INFO] [stdout] test forms::witt::milnor::tests::function_field_residues_are_square_and_hyperbolic_stable ... ok [INFO] [stdout] test forms::witt::milnor::tests::rational_k1_is_the_canonical_square_class ... ok [INFO] [stdout] test forms::witt::class::tests::cross_field_char2_witt_addition_is_rejected ... ok [INFO] [stdout] test forms::witt::milnor::tests::rational_k2_obeys_symbol_relations ... ok [INFO] [stdout] test forms::witt::milnor::tests::residues_have_finite_support_at_dividing_primes ... ok [INFO] [stdout] test forms::integral::theta::tests::leech_theta_is_pinned_by_rootlessness_in_weight_12 ... ok [INFO] [stdout] test forms::witt::milnor::tests::reconstruction_agrees_with_hasse_minkowski ... ok [INFO] [stdout] test forms::witt::milnor::tests::residues_distinguish_inequivalent_forms ... ok [INFO] [stdout] test forms::witt::milnor::tests::finite_field_symbols_are_square_class_and_trivial_k2 ... ok [INFO] [stdout] test forms::witt::milnor::tests::function_field_residues_see_degree_two_places ... ok [INFO] [stdout] test forms::witt::milnor::tests::second_residue_matches_springer_over_q3 ... ok [INFO] [stdout] test forms::witt::milnor::tests::second_residue_matches_springer_over_q5 ... ok [INFO] [stdout] test forms::witt::milnor::tests::strict_en_maps_cover_finite_and_function_fields ... ok [INFO] [stdout] test forms::witt::ring::tests::i_squared_is_zero_over_extension_field_f9 ... ok [INFO] [stdout] test forms::witt::milnor::tests::witt_invariants_are_square_and_hyperbolic_stable ... ok [INFO] [stdout] test forms::witt::ring::tests::pfister_shapes ... ok [INFO] [stdout] test forms::witt::ring::tests::ring_unit_is_neutral ... ok [INFO] [stdout] test forms::witt::ring::tests::real_staircase_reads_the_signature_in_binary ... ok [INFO] [stdout] test forms::witt::ring::tests::class_ring_mul_matches_concrete_tensor_form ... ok [INFO] [stdout] test games::atomic_weight::tests::atomic_weight_negation_symmetry ... ok [INFO] [stdout] test games::atomic_weight::tests::atomic_weight_oracle_table ... ok [INFO] [stdout] test games::atomic_weight::tests::integer_branch_handles_fractional_option_weights ... ok [INFO] [stdout] test forms::witt::milnor::tests::strict_en_maps_have_their_actual_ideal_domains ... ok [INFO] [stdout] test forms::witt::ring::tests::fundamental_ideal_requires_diagonal_representative ... ok [INFO] [stdout] test forms::witt::ring::tests::tensor_form_multiplies_entries ... ok [INFO] [stdout] test forms::witt::ring::tests::two_fold_pfister_is_hyperbolic ... ok [INFO] [stdout] test games::atomic_weight::tests::is_all_small_predicate ... ok [INFO] [stdout] test games::brown_selector::tests::canonical_split_has_corrected_polar ... ok [INFO] [stdout] test games::coin_turning::tests::custom_companion_masks_must_use_lower_coins - should panic ... ok [INFO] [stdout] test games::atomic_weight::tests::non_all_small_has_no_atomic_weight ... ok [INFO] [stdout] test games::coin_turning::tests::companion_bitmasks_are_bounded_by_u128_width - should panic ... ok [INFO] [stdout] test games::coin_turning::tests::turning_corners_realizes_the_field_table ... ok [INFO] [stdout] test games::coin_turning::tests::one_d_grundy_sequences ... ok [INFO] [stdout] test games::brown_selector::tests::rejects_noncanonical_or_incoherent_input ... ok [INFO] [stdout] test games::coin_turning::tests::tartan_product_theorem ... ok [INFO] [stdout] test games::game_exterior::relations::tests::game_relation_certificate_render_byte_matches_py_repr ... ok [INFO] [stdout] test games::coin_turning::tests::tartan_square_of_singleton_game_is_turning_corners ... ok [INFO] [stdout] test forms::witt::ring::tests::e_staircase_reuses_disc_and_hasse ... ok [INFO] [stdout] test games::brown_selector::tests::actual_selector_game_realizes_all_four_outcomes ... ok [INFO] [stdout] test games::game_exterior::tests::checked_game_clifford_accepts_torsion_vanishings ... ok [INFO] [stdout] test games::game_exterior::relations::tests::relation_search_certificate_incomplete_render_is_visibly_incomplete ... ok [INFO] [stdout] test games::game_exterior::tests::checked_game_clifford_handles_duplicate_generators ... ok [INFO] [stdout] test games::game_exterior::tests::checked_game_clifford_rejects_torsion_quadratic_data ... ok [INFO] [stdout] test games::game_exterior::tests::explicit_relation_certificate_marks_dependent_rows ... ok [INFO] [stdout] test games::game_exterior::tests::checked_game_clifford_relation_search_finds_torsion ... ok [INFO] [stdout] test games::game_exterior::tests::exterior_algebra_lives_on_non_numbers ... ok [INFO] [stdout] test forms::integral::codes::tests::reed_muller_construction_d_gives_barnes_wall_16 ... ok [INFO] [stdout] test games::brown_selector::tests::canonical_split_recomposes_every_brown_form_through_dimension_three ... ok [INFO] [stdout] test games::game_exterior::tests::checked_game_clifford_accepts_free_quadratic_data ... ok [INFO] [stdout] test games::game_exterior::relations::tests::relation_search_certificate_exhaustive_render_says_exhaustive ... ok [INFO] [stdout] test games::game_exterior::tests::game_exterior_new_default_bound_is_incomplete_at_three_generators ... ok [INFO] [stdout] test games::game_exterior::tests::duplicate_game_generators_are_quotiented_before_wedging ... ok [INFO] [stdout] test games::grundy::tests::grundy_zero_iff_loss ... ok [INFO] [stdout] test games::game_exterior::tests::relation_search_certificate_records_the_zero_rows ... ok [INFO] [stdout] test games::grundy::tests::single_nim_heap_grundy_is_its_size ... ok [INFO] [stdout] test games::hackenbush::tests::blue_and_red_strings_are_integers ... ok [INFO] [stdout] test games::grundy::tests::cyclic_graph_has_no_grundy_value ... ok [INFO] [stdout] test games::hackenbush::tests::blue_red_strings_are_their_sign_expansion ... ok [INFO] [stdout] test games::grundy::tests::sprague_grundy_theorem_is_boutons_xor ... ok [INFO] [stdout] test games::hackenbush::tests::green_strings_are_nim_heaps ... ok [INFO] [stdout] test games::hackenbush::tests::green_cycle_and_mixed ... ok [INFO] [stdout] test games::hackenbush::tests::floating_edges_are_pruned_at_construction ... ok [INFO] [stdout] test games::hackenbush::tests::branched_blue_red_position_matches_an_independent_ordinal_sum_reconstruction ... ok [INFO] [stdout] test games::hackenbush::tests::edge_masks_cover_inline_and_heap_boundaries ... ok [INFO] [stdout] test games::game_exterior::tests::grade1_is_the_game_group ... ok [INFO] [stdout] test games::heating::tests::berlekamp_overheating_uses_lower_unit_on_integer_leaves ... ok [INFO] [stdout] test games::hackenbush::tests::partially_floating_edges_are_pruned ... ok [INFO] [stdout] test games::game_exterior::tests::relation_search_finds_three_generator_cross_relations ... ok [INFO] [stdout] test games::game_exterior::tests::game_relations_propagate_through_the_exterior_ideal ... ok [INFO] [stdout] test forms::integral::theta::tests::theta_series_counts_named_lattices ... ok [INFO] [stdout] test games::grundy::tests::mex_basics ... ok [INFO] [stdout] test games::hackenbush::tests::one_position_model_exposes_three_value_classes ... ok [INFO] [stdout] test games::heating::tests::heating_fixes_numbers_and_increases_switch_temperature ... ok [INFO] [stdout] test games::heating::tests::norton_multiplication_has_product_mean_for_integer_unit ... ok [INFO] [stdout] test games::heating::tests::norton_unit_one_is_identity_and_rejects_nonpositive_units ... ok [INFO] [stdout] test forms::integral::mass_formula::tests::leech_is_the_rootless_even_unimodular_rank24 ... ok [INFO] [stdout] test games::heating::tests::norton_multiply_matches_an_independently_written_oracle_for_a_nontrivial_unit ... ok [INFO] [stdout] test games::heating::tests::positive_unit_can_be_hot ... ok [INFO] [stdout] test games::kernel::tests::cycle_with_exit_resolves ... ok [INFO] [stdout] test games::kernel::tests::nim_heap_as_a_path_matches_normal_play ... ok [INFO] [stdout] test games::kernel::tests::scoring_alternation_through_a_forced_move ... ok [INFO] [stdout] test games::heating::tests::heating_rejects_non_dyadic_temperatures ... ok [INFO] [stdout] test games::kernel::tests::scoring_first_move_advantage ... ok [INFO] [stdout] test games::kernel::tests::scoring_is_none_on_a_cycle ... ok [INFO] [stdout] test games::kernel::tests::scoring_terminal_and_single_move ... ok [INFO] [stdout] test games::kernel::tests::two_cycle_is_a_draw ... ok [INFO] [stdout] test games::kernel::tests::single_edge_and_terminal ... ok [INFO] [stdout] test games::lexicode::tests::distance_one_is_the_full_space_and_two_is_even_weight ... ok [INFO] [stdout] test games::lexicode::tests::greedy_step_is_mex_of_the_forbidden_balls ... ok [INFO] [stdout] test games::lexicode::tests::lexicode_reproduces_hamming_codes ... ok [INFO] [stdout] test games::atomic_weight::tests::atomic_weight_is_additive ... ok [INFO] [stdout] test games::heating::tests::hot_units_do_not_descend_mod_cold_numbers ... ok [INFO] [stdout] test games::lexicode::tests::nim_lexicode_repetition_codes_are_nim_add_closed ... ok [INFO] [stdout] test games::lexicode::tests::nim_lexicode_scalar_linearity_detects_fermat_bases ... ok [INFO] [stdout] test games::lexicode::tests::turning_game_budget_is_honest ... ok [INFO] [stdout] test games::lexicode::tests::turning_game_moves_are_lower_hamming_turns ... ok [INFO] [stdout] test games::lexicode::tests::turning_game_code_witnesses_hamming_examples ... ok [INFO] [stdout] test games::lexicode::tests::turning_game_successors_match_generic_grundy_graph ... ok [INFO] [stdout] test games::lexicode::tests::turning_game_p_positions_are_the_lexicode ... ok [INFO] [stdout] test games::loopy::graph::tests::outcome_analysis_is_cached ... ok [INFO] [stdout] test games::loopy::nim_values::tests::loopy_nim_certificate_render_fully_certified ... ok [INFO] [stdout] test games::loopy::partizan::tests::catalogue_graphs_have_the_pinned_outcome_pairs ... ok [INFO] [stdout] test games::loopy::partizan::tests::constructor_rejects_malformed_adjacency ... ok [INFO] [stdout] test games::loopy::partizan::tests::finite_embedding_counts_distinct_shared_nodes_against_budget ... ok [INFO] [stdout] test games::loopy::nim_values::tests::loopy_nim_certificate_render_uncertified_with_blocker ... ok [INFO] [stdout] test games::loopy::partizan::tests::finite_embedding_preserves_only_pointer_sharing ... ok [INFO] [stdout] test games::heating::tests::numeric_norton_is_the_matching_berlekamp_overheating ... ok [INFO] [stdout] test games::loopy::partizan::tests::finite_embedding_supports_mixed_sums ... ok [INFO] [stdout] test games::loopy::partizan::tests::outcome_analysis_is_cached ... ok [INFO] [stdout] test games::loopy::partizan::tests::product_budget_counts_distinct_pairs_at_discovery ... ok [INFO] [stdout] test games::loopy::partizan::tests::graph_negation_swaps_over_and_under ... ok [INFO] [stdout] test games::loopy::partizan::tests::stopper_detection_uses_alternating_turn_states ... ok [INFO] [stdout] test games::loopy::partizan::tests::reachable_product_sums_are_outcome_commutative ... ok [INFO] [stdout] test games::loopy::partizan::tests::retrograde_matches_independent_strategy_oracle_on_seeded_small_graphs ... ok [INFO] [stdout] test games::loopy::tests::ambiguous_cyclic_sidling_returns_none ... ok [INFO] [stdout] test games::loopy::tests::cyclic_non_draw_subgraph_uses_bounded_sidling ... ok [INFO] [stdout] test games::loopy::tests::impartial_partizan_graph_matches_kernel_outcomes ... ok [INFO] [stdout] test games::loopy::tests::loopy_nim_values_match_grundy_on_acyclic_graphs ... ok [INFO] [stdout] test games::loopy::tests::negation_is_an_involution_and_swaps_sides ... ok [INFO] [stdout] test games::loopy::tests::decision_sets_recover_an_acyclic_loss_set_with_no_draws ... ok [INFO] [stdout] test games::loopy::tests::draws_are_side_and_value_zero_is_loss ... ok [INFO] [stdout] test games::loopy::tests::partizan_graph_keeps_tis_as_mixed_draw_class ... ok [INFO] [stdout] test games::loopy::tests::nim_heap_path_has_no_draws ... ok [INFO] [stdout] test games::loopy::tests::partizan_graph_recovers_classical_short_outcomes ... ok [INFO] [stdout] test games::loopy::tests::outcomes_of_the_stoppers ... ok [INFO] [stdout] test games::loopy::tests::quadric_probe_reads_both_sets ... ok [INFO] [stdout] test games::loopy::tests::the_partial_order ... ok [INFO] [stdout] test games::loopy::tests::two_cycle_is_all_draws ... ok [INFO] [stdout] test games::misere::tests::cyclic_abstract_game_quotient_builder_returns_none_not_panic ... ok [INFO] [stdout] test games::misere::tests::cyclic_abstract_game_returns_none_not_panic ... ok [INFO] [stdout] test games::misere::tests::cyclic_game_is_rejected ... ok [INFO] [stdout] test games::loopy::tests::the_closed_sums ... ok [INFO] [stdout] test games::heating::tests::numeric_norton_is_additive_on_bounded_pairs ... ok [INFO] [stdout] test games::misere::tests::misere_nim_matches_boutons_theorem ... ok [INFO] [stdout] test games::misere::tests::misere_is_genuinely_nonlinear ... ok [INFO] [stdout] test games::misere::tests::octal_nim_matches_misere_nim ... ok [INFO] [stdout] test games::misere::tests::misere_nim_closed_form_ignores_zero_heaps ... ok [INFO] [stdout] test games::nimber_game::tests::additive_operator_traits_delegate_to_nim_arithmetic ... ok [INFO] [stdout] test games::nimber_game::tests::mirrors_the_number_game_on_the_shared_cnf ... ok [INFO] [stdout] test games::misere::tests::octal_star_quotient_is_z2 ... ok [INFO] [stdout] test forms::trace_form::tests::unscaled_gold_dual_descends_and_has_artin_schreier_source ... ok [INFO] [stdout] test games::misere::tests::star_misere_quotient_is_z2 ... ok [INFO] [stdout] test games::nimber_game::tests::transfinite_bridge ... ok [INFO] [stdout] test games::nimber_game::tests::turning_corners_is_nim_multiplication ... ok [INFO] [stdout] test games::number_game::tests::operator_traits_delegate_to_surreal_arithmetic ... ok [INFO] [stdout] test games::octal::tests::certification_exposes_budget_and_parameter_failures ... ok [INFO] [stdout] test games::octal::tests::false_period_and_tampered_prefix_are_rejected ... ok [INFO] [stdout] test games::number_game::tests::sign_expansion_round_trip_through_the_game_tree ... ok [INFO] [stdout] test games::number_game::tests::transfinite_bridge ... ok [INFO] [stdout] test games::octal::tests::octal_code_is_checked_and_canonical ... ok [INFO] [stdout] test games::octal::tests::kayles_source_period_has_a_finite_certificate ... ok [INFO] [stdout] test games::octal::tests::subtraction_by_one_has_period_two ... ok [INFO] [stdout] test games::octal::tests::take_whole_heap_has_checked_eventual_zero_period ... ok [INFO] [stdout] test games::partizan::tests::canonical_fixes_the_already_simple_games ... ok [INFO] [stdout] test games::partizan::tests::canonical_is_idempotent_and_value_preserving ... ok [INFO] [stdout] test games::partizan::tests::canonical_of_g_minus_g_is_zero ... ok [INFO] [stdout] test games::partizan::tests::finite_outcome_classes_are_comparison_with_zero ... ok [INFO] [stdout] test games::partizan::tests::game_group_basics ... ok [INFO] [stdout] test games::partizan::tests::canonical_removes_dominated_options ... ok [INFO] [stdout] test games::partizan::tests::number_value_round_trips_through_games ... ok [INFO] [stdout] test games::partizan::tests::nim_heaps_share_the_iteratively_built_option_dag ... ok [INFO] [stdout] test games::partizan::tests::operator_traits_forward_to_game_group_operations ... ok [INFO] [stdout] test games::partizan::tests::ordinal_sum_basics ... ok [INFO] [stdout] test games::heating::tests::numeric_norton_has_the_exact_composition_defect ... ok [INFO] [stdout] test games::thermography::tests::cooled_stops_freeze_at_temperature ... ok [INFO] [stdout] test games::thermography::tests::mean_value_is_additive ... ok [INFO] [stdout] test games::thermography::tests::infinitesimals_have_temperature_zero ... ok [INFO] [stdout] test games::thermography::tests::numbers_are_cold ... ok [INFO] [stdout] test games::heating::tests::numeric_images_of_numbers_pin_the_lower_temperature_lemma ... ok [INFO] [stdout] test games::tropical_thermography::tests::dual_semiring_recovers_classic_stops ... ok [INFO] [stdout] test games::tropical_thermography::tests::oplus_wrappers_pin_to_combine ... ok [INFO] [stdout] test games::thermography::tests::nested_hot_game ... ok [INFO] [stdout] test games::tropical_thermography::tests::otimes_pins_to_add_pl ... ok [INFO] [stdout] test games::thermography::tests::shared_dag_walls_store_one_result_per_source_node ... ok [INFO] [stdout] test games::witt_fifo::tests::charge_one_drained_position_has_exactly_the_tail ... ok [INFO] [stdout] test games::witt_fifo::tests::every_core_move_drops_the_exact_clock ... ok [INFO] [stdout] test games::witt_fifo::tests::packed_position_covers_the_full_384_coin_bound ... ok [INFO] [stdout] test games::tropical_thermography::tests::via_tropical_matches_thermograph ... ok [INFO] [stdout] test games::witt_fifo::tests::potential_source_pair_survives_zero_weight ... ok [INFO] [stdout] test games::witt_fifo::tests::positions_are_owned_by_their_constructing_arena ... ok [INFO] [stdout] test games::witt_fifo::tests::public_matching_strategy_forces_the_charge_for_either_seat ... ok [INFO] [stdout] test games::witt_fifo::tests::rejects_malformed_quadratic_data ... ok [INFO] [stdout] test linalg::field::tests::inverse_matrix_returns_none_for_a_singular_matrix ... ok [INFO] [stdout] test linalg::field::tests::inverse_matrix_round_trip_recovers_the_identity ... ok [INFO] [stdout] test linalg::field::tests::nullspace_basis_vectors_are_verified_against_the_source_matrix ... ok [INFO] [stdout] test linalg::field::tests::nullspace_over_fields_still_finds_free_columns ... ok [INFO] [stdout] test linalg::field::tests::nullspace_returns_none_on_required_nonunit_pivot ... ok [INFO] [stdout] test linalg::field::tests::nullspace_skips_a_nonunit_column_when_a_later_column_pivots ... ok [INFO] [stdout] test linalg::field::tests::rank_handles_rectangular_field_matrices ... ok [INFO] [stdout] test linalg::field::tests::solve_returns_none_for_a_singular_matrix ... ok [INFO] [stdout] test linalg::field::tests::solve_round_trip_recovers_the_solution ... ok [INFO] [stdout] test linalg::integer::tests::ext_gcd_refuses_unrepresentable_positive_gcd - should panic ... ok [INFO] [stdout] test linalg::integer::tests::ext_gcd_satisfies_bezout ... ok [INFO] [stdout] test linalg::integer::tests::normalizes_shared_divisor_rows ... ok [INFO] [stdout] test linalg::integer::tests::prime_factors_matches_known_factorizations ... ok [INFO] [stdout] test linalg::integer::tests::reduce_integer_vector_checks_row_operation_overflow - should panic ... ok [INFO] [stdout] test linalg::integer::tests::reduction_handles_coupled_relations ... ok [INFO] [stdout] test linalg::integer::tests::smith_diagonalizes_coprime_and_repeated ... ok [INFO] [stdout] test linalg::integer::tests::smith_handles_rectangular_and_zero ... ok [INFO] [stdout] test linalg::integer::tests::smith_invariant_factors_match_det_and_gcd ... ok [INFO] [stdout] test linalg::integer::tests::smith_normal_form_checks_final_abs - should panic ... ok [INFO] [stdout] test linalg::integer::tests::smith_terminates_on_unimodular_8x8 ... ok [INFO] [stdout] test scalar::analytic::tests::exact_roots_is_generic ... ok [INFO] [stdout] test scalar::analytic::tests::fp_fpn_exact_roots ... ok [INFO] [stdout] test scalar::analytic::tests::fp_square_predicate_uses_overflow_safe_modular_powers ... ok [INFO] [stdout] test scalar::analytic::tests::gaussian_sqrt ... ok [INFO] [stdout] test scalar::analytic::tests::laurent_sqrt_char0 ... ok [INFO] [stdout] test scalar::analytic::tests::laurent_sqrt_char2 ... ok [INFO] [stdout] test scalar::analytic::tests::nimber_is_perfect_field ... ok [INFO] [stdout] test scalar::analytic::tests::rational_exact_roots ... ok [INFO] [stdout] test scalar::analytic::tests::surcomplex_lazy_inverse ... ok [INFO] [stdout] test scalar::analytic::tests::surcomplex_surreal_sqrt ... ok [INFO] [stdout] test games::loopy::tests::recovery_certificate_flags_finite_positions_with_side_options ... ok [INFO] [stdout] test games::thermography::tests::switches_have_classic_thermographs ... ok [INFO] [stdout] test scalar::analytic::tests::surreal_exact_sqrt ... ok [INFO] [stdout] test scalar::big::omnific::tests::exterior_algebra_over_oz_with_transfinite_coefficients ... ok [INFO] [stdout] test scalar::big::omnific::tests::matches_integer_backend_on_integer_inputs ... ok [INFO] [stdout] test scalar::big::omnific::tests::only_plus_minus_one_are_units ... ok [INFO] [stdout] test scalar::big::omnific::tests::remainder_by_monic_omega_power_preserves_omnific_integrality ... ok [INFO] [stdout] test scalar::big::omnific::tests::remainder_rejects_non_monic_omnific_moduli ... ok [INFO] [stdout] test scalar::big::omnific::tests::standard_order_is_surreal_value_order ... ok [INFO] [stdout] test scalar::big::omnific::tests::ring_axioms_on_a_sample ... ok [INFO] [stdout] test scalar::big::omnific::tests::validator_rejects_non_integers ... ok [INFO] [stdout] test scalar::big::ordinal::cantor::tests::ordinary_ordinal_addition_is_not_nim ... ok [INFO] [stdout] test scalar::big::ordinal::cantor::tests::ordinary_ordinal_coefficients_do_not_wrap ... ok [INFO] [stdout] test scalar::big::omnific::tests::validator_accepts_omnific_integers ... ok [INFO] [stdout] test scalar::big::ordinal::cantor::tests::ordinary_ordinal_multiplication ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::cube_root_tower_relations ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::additive_group_axioms_with_infinite_terms ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::finite_nim_mul_agrees_with_nimber ... ok [INFO] [stdout] test games::witt_fifo::tests::static_loaded_charge_identity_is_exhaustive_through_dimension_four ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::multiplication_reaches_past_omega_omega ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::omega_cubed_is_two ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::nim_add_is_xor_below_omega ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::omega_squared_is_omega_squared ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::omega_plus_one_squared_and_cubed_by_hand ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::self_inverse_and_cancellation ... ok [INFO] [stdout] test scalar::big::ordinal::subfield::tests::common_degree_is_the_compositum_degree ... ok [INFO] [stdout] test scalar::big::ordinal::subfield::tests::detects_first_ordinal_windows ... ok [INFO] [stdout] test scalar::big::ordinal::subfield::tests::finite_values_reuse_nimber_degrees ... ok [INFO] [stdout] test scalar::big::ordinal::subfield::tests::inverse_uses_detected_finite_subfields ... ok [INFO] [stdout] test scalar::big::ordinal::subfield::tests::outside_represented_segment_returns_none ... ok [INFO] [stdout] test scalar::big::ordinal::support::tests::factor_helpers_share_one_prime_power_convention ... ok [INFO] [stdout] test scalar::big::ordinal::support::tests::prime_places_round_trip ... ok [INFO] [stdout] test scalar::big::ordinal::tests::cantor_normal_form_ordering ... ok [INFO] [stdout] test scalar::big::ordinal::tests::checked_inverse_covers_finite_and_f64_subfield ... ok [INFO] [stdout] test scalar::big::ordinal::tests::checked_square_root_covers_finite_and_transfinite_subfields ... ok [INFO] [stdout] test scalar::big::ordinal::tests::checked_square_root_refuses_outside_represented_segment ... ok [INFO] [stdout] test scalar::big::ordinal::tests::display_reads_as_cnf ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::consistency_with_below_omega3_path ... ok [INFO] [stdout] test scalar::big::ordinal::tests::fuzzy_is_distinctness_not_cnf_order ... ok [INFO] [stdout] test scalar::big::ordinal::tests::nim_pow_propagates_none_on_escape ... ok [INFO] [stdout] test scalar::big::ordinal::tests::nim_pow_omega_cubed_is_two ... ok [INFO] [stdout] test scalar::big::ordinal::tests::scalar_impl_matches_checked_nim_arithmetic ... ok [INFO] [stdout] test scalar::big::ordinal::tests::scalar_mul_panics_past_verified_tower - should panic ... ok [INFO] [stdout] test scalar::big::ordinal::tests::nim_pow_zero_is_one ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::alpha_excesses_descend_in_place ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::beyond_dimuro_table_rows_are_assembled_from_order_qset_and_finite_excess ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::cross_place_products ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::dimuro_rows_are_assembled_from_order_qset_and_finite_excess ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::excess_table_matches_vendored_b380496_in_full ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::f4_adjoin_omega_is_a_field ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::identity_preserves_large_valid_prime_digits ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::local_719_certificate_extends_the_tower_one_row ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::local_727_certificate_extends_the_tower_one_more_row ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::finite_excess_boundary_returns_none_past_prime_727 ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::locally_verified_alpha_47_landmark ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::place_primes_are_the_odd_primes ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::quintic_landmarks_from_dimuro ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::reproduces_cube_tower_below_omega_omega ... ok [INFO] [stdout] test games::partizan::tests::binary_integer_multiples_match_repeated_sum_and_cover_i128_min ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::septic_kummer_landmark ... ok [INFO] [stdout] test scalar::big::surreal::sign_expansion::tests::from_ordinal_inverts_as_ordinal ... ok [INFO] [stdout] test scalar::big::surreal::sign_expansion::tests::from_ordinal_rejects_coefficient_exceeding_i128 ... ok [INFO] [stdout] test games::heating::tests::heating_transforms_each_shared_source_node_once ... ok [INFO] [stdout] test scalar::big::surreal::sign_expansion::tests::sign_expansion_from_runs_normalizes ... ok [INFO] [stdout] test scalar::big::surreal::sign_expansion::tests::transfinite_sign_expansion_round_trips ... ok [INFO] [stdout] test scalar::big::surreal::tests::birthday_ordinal_is_finite_for_dyadics ... ok [INFO] [stdout] test scalar::big::surreal::tests::clifford_with_infinite_and_infinitesimal_squares ... ok [INFO] [stdout] test scalar::big::surreal::tests::display_is_canonical_grundy ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::excess_table_matches_oeis_a380496 ... ok [INFO] [stdout] test games::heating::tests::numeric_norton_units_descend_to_temperature_layers ... ok [INFO] [stdout] test scalar::big::surreal::tests::difference_of_two_infinites ... ok [INFO] [stdout] test scalar::big::surreal::tests::distributivity ... ok [INFO] [stdout] test scalar::big::surreal::tests::dyadic_recognition ... ok [INFO] [stdout] test scalar::big::surreal::tests::epsilon_is_a_positive_infinitesimal ... ok [INFO] [stdout] test scalar::big::surreal::tests::floor_and_frac ... ok [INFO] [stdout] test scalar::big::surreal::tests::monomial_inverse ... ok [INFO] [stdout] test scalar::big::surreal::tests::omega_squared_and_sqrt_omega ... ok [INFO] [stdout] test scalar::big::surreal::tests::omega_times_epsilon_is_one ... ok [INFO] [stdout] test scalar::big::surreal::tests::omega_is_bigger_than_every_integer ... ok [INFO] [stdout] test scalar::big::surreal::tests::recursive_exponent_omega_to_the_omega ... ok [INFO] [stdout] test scalar::big::surreal::tests::rational_constants_behave ... ok [INFO] [stdout] test scalar::big::surreal::tests::remainder_by_monic_omega_power_filters_cnf_tail ... ok [INFO] [stdout] test scalar::big::surreal::tests::remainder_rejects_non_monic_omega_power_moduli ... ok [INFO] [stdout] test scalar::big::surreal::tests::simplest_above_and_below ... ok [INFO] [stdout] test scalar::big::surreal::tests::simplest_between_picks_the_root ... ok [INFO] [stdout] test scalar::big::surreal::tests::surreal_nth_roots ... ok [INFO] [stdout] test scalar::big::surreal::tests::sign_expansion_round_trips ... ok [INFO] [stdout] test scalar::big::surreal::tests::dyadic_birthdays_match_construction ... ok [INFO] [stdout] test scalar::big::surreal::tests::transfinite_sign_expansions_and_birthdays ... ok [INFO] [stdout] test scalar::big::surreal::tests::surreal_square_roots ... ok [INFO] [stdout] test scalar::big::surreal::tests::truncated_inverse_neumann_series ... ok [INFO] [stdout] test scalar::exact::integer::tests::euclidean_division_uses_nonnegative_remainders ... ok [INFO] [stdout] test scalar::exact::integer::tests::exact_division_reports_the_remainder ... ok [INFO] [stdout] test scalar::exact::integer::tests::integer_add_overflows_loudly - should panic ... ok [INFO] [stdout] test scalar::exact::integer::tests::integer_basic_ops ... ok [INFO] [stdout] test scalar::exact::integer::tests::integer_mul_overflows_loudly - should panic ... ok [INFO] [stdout] test scalar::exact::integer::tests::integer_neg_overflows_loudly - should panic ... ok [INFO] [stdout] test scalar::exact::integer::tests::standard_order_is_the_integer_order ... ok [INFO] [stdout] test scalar::exact::rational::tests::add_panics_where_checked_add_returns_none - should panic ... ok [INFO] [stdout] test scalar::exact::rational::tests::checked_add_returns_none_on_overflow ... ok [INFO] [stdout] test scalar::exact::rational::tests::checked_mul_returns_none_on_overflow ... ok [INFO] [stdout] test scalar::exact::rational::tests::mul_panics_where_checked_mul_returns_none - should panic ... ok [INFO] [stdout] test scalar::exact::rational::tests::rational_adds_before_denominator_product_overflows ... ok [INFO] [stdout] test scalar::exact::rational::tests::rational_arithmetic ... ok [INFO] [stdout] test scalar::exact::rational::tests::standard_order_delegates_to_value_order ... ok [INFO] [stdout] test scalar::big::surreal::tests::surreal_exact_square_declines_nonrepresented_roots_without_panic ... ok [INFO] [stdout] test scalar::extension::tests::cyclic_galois_fpn ... ok [INFO] [stdout] test scalar::extension::tests::cyclic_galois_nimber ... ok [INFO] [stdout] test scalar::extension::tests::cyclic_galois_qq ... ok [INFO] [stdout] test scalar::extension::tests::cyclic_galois_surcomplex ... ok [INFO] [stdout] test scalar::extension::tests::f16_f4_quadratic_involution_has_an_exact_fixed_field_isomorphism ... ok [INFO] [stdout] test scalar::extension::tests::field_extension_is_generic ... ok [INFO] [stdout] test scalar::extension::tests::finite_field_trace_norm_match_the_galois_machinery ... ok [INFO] [stdout] test scalar::extension::tests::gaussian_trace_and_norm ... ok [INFO] [stdout] test scalar::extension::tests::nimber_is_a_field_extension_of_f2 ... ok [INFO] [stdout] test scalar::extension::tests::surreal_complex_trace_and_norm ... ok [INFO] [stdout] test scalar::exactness::tests::marker_traits_cover_the_table ... ok [INFO] [stdout] test scalar::extension::tests::unramified_local_trace_and_norm ... ok [INFO] [stdout] test scalar::finite_field::fp::tests::clifford_over_f3_monomorphises ... ok [INFO] [stdout] test scalar::finite_field::fp::tests::composite_modulus_is_rejected ... ok [INFO] [stdout] test scalar::finite_field::fp::tests::arithmetic_reuses_the_valid_operand_invariant ... ok [INFO] [stdout] test scalar::finite_field::fp::tests::field_axioms_f5_f7 ... ok [INFO] [stdout] test scalar::finite_field::fp::tests::inverse_matches_brute_force ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::bsgs_discrete_log_matches_linear_oracle_on_f16 ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::ceil_sqrt_handles_u128_boundaries ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::characteristic_is_p_not_order ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::clifford_over_f9_monomorphises ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::display_canonical_grundy ... ok [INFO] [stdout] test games::witt_fifo::tests::small_roots_realize_the_quadratic_zero_set ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::quintic_tower_field_axioms ... ok [INFO] [stdout] test scalar::finite_field::fp::tests::negation_is_genuine ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::galois_toolkit_f8_f9_f27 ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::from_coeffs_rejects_nonzero_high_terms ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::frobenius_is_an_automorphism ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::generated_metadata_opens_char2_extension_rows ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::generated_rows_match_independent_small_field_oracles ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::generator_satisfies_its_minimal_polynomial ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::single_pass_frobenius_orbits_match_divisor_oracle ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::generator_panics_at_n_1_instead_of_returning_zero ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::add_is_xor_and_self_inverse ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::artin_schreier_over_f256 ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::unsupported_parameters_are_rejected ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::associativity_spot_check_large ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::artin_schreier_solvable_iff_trace_zero ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::conjugates_and_min_poly ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::degree_is_smallest_containing_subfield ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::every_nonzero_has_inverse_in_f16 ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::from_int_is_the_z_embedding_not_a_bit_cast ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::field_axioms_over_f16 ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::fuzzy_is_distinctness_for_nimber_game_values ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::known_small_products ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::order_factors_are_2_128_minus_1 ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::inverse_round_trips ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::order_matches_brute_force_in_subfields ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::discrete_log_round_trips ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::order_factors_are_all_prime ... ok [INFO] [stdout] test scalar::big::ordinal::tower::tests::septic_tower_field_axioms ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::table_frobenius_agrees_with_multiplication_square ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::sqrt_is_inverse_frobenius ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::extension_components_are_teichmuller_digits ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::trace_is_in_f2_and_is_additive ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::invalid_parameters_are_rejected ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::large_modulus_arithmetic_reduces_without_wrapping ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::relative_trace_and_norm ... ok [INFO] [stdout] test scalar::finite_field::nimber::tests::primitive_element_generates_full_group ... ok [INFO] [stdout] test scalar::finite_field::fpn::tests::field_axioms_generated_small_fields ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::neg_reduces_out_of_range_representations_first ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::q_equals_p_is_z_mod_pn ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::p2_witt_addition_carry_formula ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::residue_is_the_field_fq ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::ring_axioms_w2_f4 ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::teichmuller_is_frobenius_fixed_for_f_greater_than_one ... ok [INFO] [stdout] test scalar::finite_field::wittvec::tests::witt_coordinate_roundtrip ... ok [INFO] [stdout] test scalar::functor::gauss::tests::composes_over_a_laurent_base ... ok [INFO] [stdout] test scalar::functor::gauss::tests::integrality_is_the_valuation_subring ... ok [INFO] [stdout] test scalar::functor::gauss::tests::gauss_valuation_is_min_of_coefficients ... ok [INFO] [stdout] test scalar::functor::gauss::tests::cross_multiplication_equality ... ok [INFO] [stdout] test scalar::functor::gauss::tests::is_a_field_inv_total_on_nonzero ... ok [INFO] [stdout] test scalar::functor::gauss::tests::teichmuller_lifts_rational_function_residue ... ok [INFO] [stdout] test scalar::functor::gauss::tests::mixed_characteristic_gauss_lift_is_not_multiplicative_on_polynomials ... ok [INFO] [stdout] test scalar::functor::gauss::tests::ring_axioms_on_a_sample ... ok [INFO] [stdout] test scalar::functor::gauss::tests::residue_field_is_rational_function_over_base_residue ... ok [INFO] [stdout] test scalar::functor::laurent::tests::characteristic_two_base_threads_neg_through_scalar ... ok [INFO] [stdout] test scalar::functor::gauss::tests::t_is_a_unit_p_is_the_uniformizer ... ok [INFO] [stdout] test scalar::functor::laurent::tests::every_nonzero_inverts_when_base_is_a_field ... ok [INFO] [stdout] test scalar::functor::laurent::tests::ring_basics_hold ... ok [INFO] [stdout] test scalar::functor::laurent::tests::equal_characteristic_local_field_over_finite_base ... ok [INFO] [stdout] test scalar::functor::laurent::tests::m2_huge_valuation_gap_does_not_panic_or_corrupt ... ok [INFO] [stdout] test scalar::functor::laurent::tests::valuations_add_under_multiplication ... ok [INFO] [stdout] test scalar::functor::ramified::tests::characteristic_is_inherited_from_the_base ... ok [INFO] [stdout] test scalar::functor::laurent::tests::zero_precision_is_rejected ... ok [INFO] [stdout] test scalar::functor::ramified::tests::e2_inverse_round_trips_via_norm ... ok [INFO] [stdout] test scalar::functor::ramified::tests::e3_inverse_round_trips_via_matrix_solve ... ok [INFO] [stdout] test scalar::functor::ramified::tests::invalid_parameters_are_rejected ... ok [INFO] [stdout] test scalar::functor::ramified::tests::pi_power_e_is_the_uniformizer ... ok [INFO] [stdout] test scalar::functor::ramified::tests::ramified_valuation_is_exact_and_unique ... ok [INFO] [stdout] test scalar::functor::ramified::tests::ring_of_integers_is_the_valuation_subring ... ok [INFO] [stdout] test scalar::functor::laurent::tests::inverse_is_the_neumann_series ... ok [INFO] [stdout] test scalar::functor::ramified::tests::teichmuller_lifts_base_residue_through_ramification ... ok [INFO] [stdout] test scalar::functor::laurent::tests::relative_precision_cancellation_is_intended ... ok [INFO] [stdout] test scalar::functor::ramified::tests::residue_field_is_the_base_residue ... ok [INFO] [stdout] test scalar::functor::ramified::tests::wild_ramification_is_still_a_field ... ok [INFO] [stdout] test scalar::functor::ramified::tests::valuation_is_additive_under_multiplication ... ok [INFO] [stdout] test scalar::functor::surcomplex::tests::gaussian_arithmetic ... ok [INFO] [stdout] test scalar::functor::surcomplex::tests::gaussian_inverse ... ok [INFO] [stdout] test scalar::functor::ramified::tests::valued_trait_uses_pi_as_uniformizer ... ok [INFO] [stdout] test scalar::functor::surcomplex::tests::nimber_surcomplex_is_degenerate ... ok [INFO] [stdout] test scalar::global::adele::tests::a_nonprincipal_idele_and_its_inverse ... ok [INFO] [stdout] test scalar::global::adele::tests::a_correction_to_zero_is_not_an_idele ... ok [INFO] [stdout] test scalar::global::adele::tests::absolute_values_factor_the_rational ... ok [INFO] [stdout] test games::heating::tests::positive_numeric_units_have_the_exact_affine_thermic_regrade ... ok [INFO] [stdout] test scalar::global::adele::tests::correction_precision_must_match_adele_policy - should panic ... ok [INFO] [stdout] test scalar::global::adele::tests::correction_prime_must_match_key - should panic ... ok [INFO] [stdout] test scalar::global::adele::tests::diagonal_embedding_is_a_ring_homomorphism ... ok [INFO] [stdout] test scalar::global::adele::tests::product_formula_on_principal_ideles ... ok [INFO] [stdout] test scalar::global::function_field::tests::canonical_structural_equality ... ok [INFO] [stdout] test scalar::global::function_field::tests::display_uses_parenthesized_fraction ... ok [INFO] [stdout] test scalar::global::function_field::tests::fractions_are_gcd_reduced_and_denominator_monic ... ok [INFO] [stdout] test scalar::global::function_field::tests::addition_reduces_a_shared_denominator_before_products ... ok [INFO] [stdout] test scalar::global::adele::tests::inv_is_total_on_principal_ideles ... ok [INFO] [stdout] test scalar::global::function_field::tests::num_den_accessors_expose_polys_for_the_forms_layer ... ok [INFO] [stdout] test scalar::global::local_qp::tests::from_rational_valuation ... ok [INFO] [stdout] test scalar::global::function_field::tests::is_an_exact_field ... ok [INFO] [stdout] test scalar::global::function_field::tests::multiplication_cross_cancels_before_forming_products ... ok [INFO] [stdout] test scalar::global::local_qp::tests::invalid_runtime_world_is_rejected_in_release_too - should panic ... ok [INFO] [stdout] test scalar::global::function_field::tests::ring_axioms_on_a_sample ... ok [INFO] [stdout] test scalar::global::local_qp::tests::matches_qp_oracle_p2 ... ok [INFO] [stdout] test scalar::global::adele::tests::additive_group_facts_hold_exactly ... ok [INFO] [stdout] test scalar::global::local_qp::tests::matches_qp_oracle_p3 ... ok [INFO] [stdout] test scalar::global::local_qp::tests::matches_qp_oracle_p5 ... ok [INFO] [stdout] test scalar::integrality::tests::omnific_surreal_pairing ... ok [INFO] [stdout] test scalar::global::local_qp::tests::mixed_runtime_worlds_are_rejected_in_release_too - should panic ... ok [INFO] [stdout] test scalar::global::local_qp::tests::one_over_p_and_field_property ... ok [INFO] [stdout] test scalar::global::local_qp::tests::oversized_runtime_modulus_is_rejected - should panic ... ok [INFO] [stdout] test scalar::integrality::tests::poly_rational_function_pairing ... ok [INFO] [stdout] test scalar::integrality::tests::integer_rational_pairing ... ok [INFO] [stdout] test scalar::integrality::tests::wittvec_qq_pairing ... ok [INFO] [stdout] test scalar::integrality::tests::qp_to_integer_uses_modular_multiplication_at_the_boundary ... ok [INFO] [stdout] test scalar::integrality::tests::surcomplex_transports_the_gaussian_pairing ... ok [INFO] [stdout] test scalar::integrality::tests::zp_qp_pairing ... ok [INFO] [stdout] test scalar::newton::tests::dumas_additivity ... ok [INFO] [stdout] test scalar::newton::tests::eisenstein_single_slope ... ok [INFO] [stdout] test scalar::newton::tests::flat_polygon_iff_unit_roots ... ok [INFO] [stdout] test scalar::newton::tests::laurent_leg_is_exact ... ok [INFO] [stdout] test scalar::ops_tests::checked_factorial_i128_has_the_grundy_roof ... ok [INFO] [stdout] test scalar::newton::tests::qq_unramified_extension_leg ... ok [INFO] [stdout] test scalar::newton::tests::zero_polynomial_is_none ... ok [INFO] [stdout] test scalar::newton::tests::zero_roots_are_tracked ... ok [INFO] [stdout] test scalar::ops_tests::operators_match_trait_methods ... ok [INFO] [stdout] test scalar::newton::tests::negative_slope_for_pole_root ... ok [INFO] [stdout] test scalar::ops_tests::modular_multiply_fast_and_overflow_paths_match_reference ... ok [INFO] [stdout] test scalar::newton::tests::sqrt_p_slope_half ... ok [INFO] [stdout] test scalar::ops_tests::scalar_power_operator_basic_cases ... ok [INFO] [stdout] test scalar::ops_tests::factorial_in_scalar_uses_the_world_ring_map ... ok [INFO] [stdout] test scalar::ops_tests::modular_helpers_cover_full_u128_range ... ok [INFO] [stdout] test scalar::poly::tests::arithmetic_basics ... ok [INFO] [stdout] test scalar::poly::tests::atomicity_rule ... ok [INFO] [stdout] test scalar::ops_tests::scalar_pow_default_matches_repeated_mul_generically ... ok [INFO] [stdout] test scalar::poly::tests::characteristic_two_sparse_squaring_matches_generic_square_and_multiply ... ok [INFO] [stdout] test scalar::poly::tests::compose_substitutes_polynomials_by_horner ... ok [INFO] [stdout] test scalar::poly::tests::euclidean_division ... ok [INFO] [stdout] test scalar::poly::tests::gcd_and_monic ... ok [INFO] [stdout] test scalar::poly::tests::display_is_canonical_grundy ... ok [INFO] [stdout] test scalar::poly::tests::karatsuba_requires_exact_reassociation_contract ... ok [INFO] [stdout] test scalar::poly::tests::sparse_nonmonic_divisor_reconstructs_dividend_exactly ... ok [INFO] [stdout] test scalar::poly::tests::sparse_large_products_stay_on_schoolbook_path ... ok [INFO] [stdout] test scalar::poly_factor::tests::odd_factorization_splits_equal_degree_products ... ok [INFO] [stdout] test scalar::poly::tests::modular_powers_for_eulers_criterion ... ok [INFO] [stdout] test scalar::poly_factor::tests::extension_field_coefficients_factor_too ... ok [INFO] [stdout] test scalar::poly_factor::tests::repeated_and_inseparable_support_is_deduped ... ok [INFO] [stdout] test scalar::residue::tests::laurent_residue_is_evaluation_at_zero ... ok [INFO] [stdout] test scalar::residue::tests::qp_residue_and_angular_component ... ok [INFO] [stdout] test scalar::residue::tests::teichmuller_section_is_multiplicative_not_additive ... ok [INFO] [stdout] test scalar::residue::tests::residue_field_is_generic ... ok [INFO] [stdout] test scalar::residue::tests::qq_residue_lands_in_the_extension_field ... ok [INFO] [stdout] test scalar::poly::tests::karatsuba_matches_schoolbook_on_dense_uneven_inputs ... ok [INFO] [stdout] test scalar::small::analytic::tests::qp_sqrt_handles_valuations ... ok [INFO] [stdout] test scalar::small::analytic::tests::dyadic_square_apis_are_checked_and_honest ... ok [INFO] [stdout] test scalar::small::analytic::tests::qq_f1_matches_qp ... ok [INFO] [stdout] test scalar::residue::tests::teichmuller_section_lifts_residues ... ok [INFO] [stdout] test scalar::small::analytic::tests::teichmuller_is_a_root_of_unity_lifting_the_residue ... ok [INFO] [stdout] test scalar::small::qp::tests::characteristic_is_zero_not_the_modulus ... ok [INFO] [stdout] test scalar::small::analytic::tests::wittvec_sqrt_over_f9 ... ok [INFO] [stdout] test scalar::ops_tests::ordinal_pow_default_method_has_no_operator_to_fall_back_on ... ok [INFO] [stdout] test scalar::small::analytic::tests::zp_sqrt_round_trips_and_matches_is_square ... ok [INFO] [stdout] test scalar::small::qp::tests::from_rational_matches_integer_embedding_and_denominator_inverse ... ok [INFO] [stdout] test scalar::small::qp::tests::h2_large_precision_mul_does_not_overflow ... ok [INFO] [stdout] test scalar::small::qp::tests::invalid_parameters_are_rejected ... ok [INFO] [stdout] test scalar::small::qp::tests::one_over_p_exists_and_is_a_field ... ok [INFO] [stdout] test scalar::small::qp::tests::p_times_one_over_p_is_one_each_prime ... ok [INFO] [stdout] test scalar::small::qp::tests::valuation_is_additive_under_multiplication ... ok [INFO] [stdout] test scalar::small::qp::tests::relative_precision_cancellation_is_intended ... ok [INFO] [stdout] test scalar::small::qq::tests::invalid_parameters_are_rejected ... ok [INFO] [stdout] test scalar::small::qq::tests::characteristic_is_zero_not_the_modulus ... ok [INFO] [stdout] test scalar::small::qq::tests::multiplicative_group_is_exact ... ok [INFO] [stdout] test scalar::small::qq::tests::one_over_p_exists_and_is_a_field ... ok [INFO] [stdout] test scalar::small::qq::tests::reduces_to_qp_when_residue_degree_is_one ... ok [INFO] [stdout] test scalar::small::qq::tests::residue_degree_two_has_genuine_fq_residues ... ok [INFO] [stdout] test scalar::small::zp::tests::characteristic_is_the_modulus_not_the_prime ... ok [INFO] [stdout] test scalar::small::qq::tests::valuation_is_additive_under_multiplication ... ok [INFO] [stdout] test scalar::small::analytic::tests::qq_sqrt_and_teichmuller_over_f9 ... ok [INFO] [stdout] test scalar::small::zp::tests::construction_enforces_the_canonical_residue_invariant ... ok [INFO] [stdout] test scalar::small::zp::tests::inverse_reduces_to_the_mod_p_inverse ... ok [INFO] [stdout] test scalar::small::zp::tests::clifford_over_z4_runs_with_a_nonunit_scalar ... ok [INFO] [stdout] test scalar::small::zp::tests::p_is_a_non_unit_the_defining_property ... ok [INFO] [stdout] test scalar::tropical::tests::display_smoke ... ok [INFO] [stdout] test scalar::tropical::tests::distributivity ... ok [INFO] [stdout] test scalar::tropical::tests::identities ... ok [INFO] [stdout] test scalar::tropical::tests::max_vs_min_hand_checked ... ok [INFO] [stdout] test scalar::tropical::tests::oplus_is_idempotent ... ok [INFO] [stdout] test scalar::tropical::tests::value_and_infinity_accessors ... ok [INFO] [stdout] test scalar::small::zp::tests::ring_axioms_z8_z9_z27_z16 ... ok [INFO] [stdout] test scalar::small::zp::tests::invalid_parameters_are_rejected ... ok [INFO] [stdout] test scalar::small::qp::tests::addition_exact_facts_hold ... ok [INFO] [stdout] test scalar::small::qp::tests::every_nonzero_inverts ... ok [INFO] [stdout] test scalar::valued::tests::tropicalize_equality_off_vanishing_locus ... ok [INFO] [stdout] test scalar::valued::tests::tropicalize_is_generic_over_legs ... ok [INFO] [stdout] test scalar::valued::tests::tropicalize_is_subadditive ... ok [INFO] [stdout] test scalar::valued::tests::uniformizers_have_valuation_one ... ok [INFO] [stdout] test scalar::tropical::tests::zero_absorbs_under_otimes ... ok [INFO] [stdout] test scalar::valued::tests::zero_valuation_is_none ... ok [INFO] [stdout] test scalar::valued::tests::tropicalize_is_multiplicative ... ok [INFO] [stdout] test scalar::valued::tests::trait_valuation_matches_inherent ... ok [INFO] [stdout] test scalar::small::qp::tests::multiplication_is_an_exact_abelian_group_on_nonzero ... ok [INFO] [stdout] test games::heating::tests::bounded_day_three_singleton_options_obey_numeric_regrade ... ok [INFO] [stdout] test scalar::big::surreal::tests::truncated_inverse_survives_deep_cancellation ... ok [INFO] [stdout] test games::coin_turning::tests::game_definition_equals_algebraic_nim_mul ... ok [INFO] [stdout] test scalar::big::ordinal::nim::tests::tower_multiplication_ring_axioms ... ok [INFO] [stdout] test scalar::big::surreal::tests::surreal_roots_survive_deep_cancellation ... ok [INFO] [stdout] test games::lexicode::tests::lexicode_24_8_is_golay_and_chains_to_a_lattice_with_roots ... ok [INFO] [stdout] test games::lexicode::tests::naive_and_production_agree_for_small_n ... ok [INFO] [stdout] test forms::integral::kneser::tests::rank16_report_finds_both_neighbor_classes_and_closes_mass ... ok [INFO] [stdout] test games::partizan::tests::canonical_string_is_a_value_key_on_a_bounded_day_le_3_sweep ... ok [INFO] [stdout] test forms::char2::brown::tests::reduction_matches_enumeration_at_rank_26 ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- forms::local_global::function_field::tests::finite_place_precondition_rejects_reducible_polynomial stdout ---- [INFO] [stdout] note: test did not panic as expected at src/forms/local_global/function_field.rs:775:8 [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] forms::local_global::function_field::tests::finite_place_precondition_rejects_reducible_polynomial [INFO] [stdout] [INFO] [stdout] test result: FAILED. 1128 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 15.39s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] running `Command { std: "docker" "inspect" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3", kill_on_drop: false }` [INFO] [stdout] ad212a78cb9d81984a00411e246acd58c83097686c53696b752e1a4238eb78f3