Repository navigation
difftest: topology.brep_p9 owns imported geometry under the keys it queries with - #649
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ueries with The shared import leaves edge curves unowned and owns face f's surface as 1 + f, while op 0 (FindInfiniteRegion) queries with BrepQuery::default() (arena keys), so its B-rep cache trees held no edges or faces. Own the geometry with util::own_arena_geometry and sync each face surface's tolerance, as the native B-rep and the api_queries import do. No case changes. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
erlis
marked this pull request as ready for review
October 23, 2026 18:32
oursland
added a commit
to oursland/solidcore
that referenced
this pull request
Oct 23, 2026
Picks up tangency-labs#649 (topology.brep_p9 import owners) and tangency-labs#650 (two-tier mutation harness) so the branch is current for the merge queue. Local checks after the merge: cargo fmt --all --check, cargo clippy -p difftest --all-targets -D warnings, cargo test -p difftest --lib (55 passed). Co-Authored-By: Claude Code <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
topology.brep_p9imports its B-rep throughtopology_vertexuse::import, which leaves edge curves unowned and owns face f's surface under key1 + f. That is the convention several runners' ownkey_ofuse, so the shared import stays as it is. Op 0 (FindInfiniteRegion) then queries withBrepQuery::default(), i.e. arena keys.BrepCache::build_treesadds an edge or face only when its curve's or surface's owner equals the caller's key, so the infinite-region ray fires ran on trees with 0 of 15 edges and 0 of 7 faces. Every face surface looked owned by the next face. In the C++ fixture each edge owns its curve and each face its surface.Fix (runner only): after the import,
util::own_arena_geometryandBrep::sync_face_surface_toleranceon every face, as thequery.api_queriesimport does. Without the sync, a face-owned surface reaches thetopology.face_p2SmFace::GetTolerancestub: owning alone movesreal_box_with_large_fillet_infinite_regionfrom pass to deferred. Same class as #618.Results (Linux, pinned reference c9c5979; tolerances and fixtures unchanged), base = main 0123d56:
build_treesthat reports calls skipping geometry whose owner is no key of the B-rep, run over all 261 green/partial units. On the branch it reports no call in this unit; on main it reported the one above. No other runner's import mismatches its keys. The remaining hits are the library's own two naming schemes (primitive builders vs stitch), filed as Two owner-naming schemes: primitive B-reps are queried under arena keys (stitch ray fires on empty trees) #651.Checks (on main 0123d56):
cargo fmt --all --check;cargo clippy --workspace --all-targets -- -D warnings;cargo clippy -p difftest -p solidcore-ffi --features difftest/cpp --all-targets -- -D warnings;cargo test -p difftest --features cpp(267 passed); difftest--unit topology.brep_p9. No library code changed.🤖 Generated with Claude Code