From 97d79e3b88b504cea18c221daab2860bb91dca8d Mon Sep 17 00:00:00 2001 From: Brett Lawson Date: Fri, 30 Oct 2026 04:44:41 +0100 Subject: [PATCH] smlib: the solidcore tag test names what still holds it back solidcore#1568 (#1462 P1) carries a B-rep's attributes through a boolean, but the tags `Brep::tagged` puts on the C++ body never reach solidcore: the crossing is the capi's flat arrays, which carry no attributes (smlib.h, smlib_flat.cpp), and the history is read back on the C++ body after the same crossing. tags_cross_a_solidcore_boolean stays ignored, its reason now that crossing rather than solidcore. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01MNXLXkZLQ6T7TSi4wswcmk --- crates/smlib/src/core/boolean_tests.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/smlib/src/core/boolean_tests.rs b/crates/smlib/src/core/boolean_tests.rs index 5764b07aae..7f35349009 100644 --- a/crates/smlib/src/core/boolean_tests.rs +++ b/crates/smlib/src/core/boolean_tests.rs @@ -367,7 +367,7 @@ mod history { } #[test] - #[ignore = "solidcore has no way to carry attributes through a boolean: tangency-labs/solidcore#1462"] + #[ignore = "the tags do not cross the flat arrays (smlib_flat.cpp carries no attributes), so the operands reach solidcore untagged; solidcore#1568 carries attributes through the boolean itself"] fn tags_cross_a_solidcore_boolean() { let (a, b) = (tagged_box([0.0; 3], 0), tagged_box([5.0; 3], 1)); let r = super::boolean(a.core().unwrap(), b.core().unwrap(), BooleanOp::Union).unwrap().unwrap();