mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-08 13:01:52 +00:00
ddec10be10
An input that crashes or hangs the C++ reference is rejected, decided from the inputs or the Rust side, never deferred (as for topology.face_p1's UB-137 trap). The three units whose guards still deferred such inputs now return Output::rejected from run_cpp, naming the upstream issue: - offset.offset_geometry_creation: run_cpp follows the Rust script first and rejects a script that stops at the HANG-26 (FaceuseOffset self-intersection of a surface of revolution) or HANG-27 (EdgeuseOffset distance bound) op. The shim's -6 stop stays as a safety net. - primitive.api_primitives: run_cpp rejects a pyramid whose Rust build returns find_outer_loops' "index out of range", exactly where upstream reads past sOutLoops (UB-119). The C++ no longer runs these inputs. - topology.brep_p7: run_cpp rejects MakeFaceWithCurves with a curve on surface, 3D curves and no UV curves past its input checks (UB-165), the shim's -2 predicate with the Rust degeneracy tests. 16, 5 and 3 rejected: exactly the former guard deferrals; no other outcome changed. Unit notes, upstream-issues and findings updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>