bherbruck
cbbd152e39
fix: WR-211 opt-in flag ellipse_adjust_step_interval_keeps_turns (fork 5c0b5ed)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 18:16:19 -04:00
bherbruck
b787d0ec6c
Merge pull request #1841 from tangency-labs/difftest/face-closest-point-live
...
difftest: face closest point at box face centres through the bare library path (108 cases)
2026-10-30 18:15:38 -04:00
bherbruck
6ebdca5c5b
Merge pull request #1814 from brett19/fix/torus-rail-on-axis
...
fix: opt-in torus rail point on the arc's axis (WR-592, fork 994f129)
2026-10-30 18:13:25 -04:00
bherbruck
d150ecf9f4
Merge pull request #1813 from brett19/fix/loops-round-vertex
...
fix: loop ordering goes on round a vertex where loops touch (WR-591, opt-in, fork 9209e76)
2026-10-30 18:02:34 -04:00
bherbruck
d1221ad807
Merge pull request #1674 from brett19/fix/1670-1671-owner-identity
...
fix(offset, primitive): offset results and sweep wires named by their geometry owners (#1670 , #1671 )
2026-10-30 17:51:53 -04:00
bherbruck
748390e6b7
Merge pull request #1786 from tangency-labs/fix/brep-p3-delete-removes-records
...
fix: DeleteFace and SqueezeEdge remove their arena records (brep_p3)
2026-10-30 17:42:45 -04:00
bherbruck
b84bf3ca9b
difftest: query.api_queries face closest point at box face centres, through the bare library path (108 cases)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 17:35:28 -04:00
bherbruck
448273d061
Merge pull request #1832 from tangency-labs/fix/brep-writer-caller-naming
...
fix: brep writer keeps owned surfaces under a caller's naming
2026-10-30 17:30:04 -04:00
bherbruck
1b5f01090c
Merge pull request #1680 from brett19/difftest/arena-naming-imports
...
difftest: set arena naming on every imported B-rep
2026-10-30 17:27:59 -04:00
bherbruck
2e4f48e445
Merge pull request #1816 from brett19/fix/wr593-fillet-corner-tangent-edge-past-seam
...
fix: Nx1 corner takes a tangent edge past a tangent side edge as its corner edge (fork 1ff7353, WR-593) as opt-in flag
2026-10-30 17:25:42 -04:00
bherbruck
c9f081fc40
Merge pull request #1831 from flyboy-byte/fixture/solidcraft-9486-partial-revolve-join
...
difftest: SolidCraft #9486 case (a partial revolve of a triangle on the axis, joined to a tile)
2026-10-30 17:25:34 -04:00
Brett Lawson
3b7c73abe0
Merge origin/main into fix/torus-rail-on-axis
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MNXLXj2sJf943y2dDF36Vy
2026-10-30 22:24:25 +01:00
bherbruck
dfea1b85b0
Merge pull request #1594 from brett19/feat/brep-attributes-blend
...
Part of #1462 (P3: blend)
2026-10-30 17:09:44 -04:00
bherbruck
a2c0ebd42b
Merge pull request #1702 from brett19/wire/curve-assert-valid
...
wire: topology.assert_valid — curve AssertValid (offset, projected, Hermite, curve-on-surface, curve-in-volume)
2026-10-30 17:09:36 -04:00
Brett Lawson
d25ca410e8
Merge remote-tracking branch 'origin/main' into fix/loops-round-vertex
2026-10-30 22:08:10 +01:00
bherbruck
efd48ba05a
Merge pull request #1785 from brett19/fix/offset-fillet2-coincidence-hang
...
fix(offset): BuildOffsetOfFaceuse deletes the faces its lamina-edge test rejects (brepForFillet2 rounded outset hang)
2026-10-30 17:07:20 -04:00
bherbruck
e758555880
Merge pull request #1595 from brett19/port/brep-transform-matrix
...
port: SmBrep::Transform with a 4x4 matrix and SmMatrix::SVDecompose (#1570 )
2026-10-30 17:05:08 -04:00
bherbruck
ed90486dcc
fix: fillet corner insertion treats a removed patch-face record as deleted
...
The corner insertion recognised a patch face the fillet stitch had deleted by
reading its reset record (surface None). DeleteFace now removes the record,
so check for a missing record first; the same branch is taken, the same
dangling-surface registration as upstream's RegisterExistingSSI, which C++
stores but never dereferences. Fixes sweep4-brepForFillet2-all-r0.1.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 17:04:07 -04:00
bherbruck
136838774b
Merge pull request #1753 from brett19/fork/wire-edge-faceuse-shell
...
fix: opt-in MakeEdgeTopology keeps the faceuse shell joining a wire (WR-585, fork be8ac73)
2026-10-30 16:57:39 -04:00
bherbruck
762ec05ff4
Merge pull request #1793 from tangency-labs/difftest/issue-1528-volume-query-operand-state
...
difftest: #1528 — a volume query on the operand writes the same caches in Rust and C++ (operand state)
2026-10-30 16:51:05 -04:00
bherbruck
46f8fed693
Merge pull request #1830 from tangency-labs/test/arc-flags-compose
...
test: WR-576 and WR-565 compose on linear-sweep arcs (#1507 , #1477 )
2026-10-30 16:48:46 -04:00
bherbruck
4e59bfa987
Merge pull request #1784 from brett19/fix/offset-round-divergences
...
fix: rounded offset deletes the offset face its lamina edge puts too near the original
2026-10-30 16:46:59 -04:00
bherbruck
a41e38f4a1
test: issue_1474 counts live faces/edges/vertices (10/23/15); searches walk the lists
...
The old 13 counted 3 face records DeleteFace now removes; the round builds the
same body (live counts and volume bit-identical to main).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 16:38:40 -04:00
bherbruck
407304de80
fix: brep writer keeps owned surfaces under a caller's naming
...
BrepData::from_brep kept a face's surface only when its owner equalled the
caller's key_of(Face). A caller naming faces differently from the B-rep's
recorded owners (the smlib-api crate) had every surface dropped, and the read
failed with "surface index". Fall back to the B-rep's own owner identity of
the face (upstream GetOwner()==pFace); unowned surfaces are still skipped.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 16:37:00 -04:00
bherbruck
15e72dff9f
Merge pull request #1358 from Sloptimum/fix/brep-p3-offset-turn-nurbs-hang
...
fix: topology.brep_p3 — the runner refuses the HANG-16 regime on the Rust side too (nightly fuzz00282 timeout)
2026-10-30 16:36:07 -04:00
bherbruck
7ebe7ff048
Merge pull request #1571 from momysnow/fix/1525
...
fix: a plane within a face's zone tolerance of a cylinder wall touches it along one line (opt-in, #1525 )
2026-10-30 16:35:59 -04:00
bherbruck
901089a236
Merge pull request #1803 from brett19/fix/coincidence-checker-hang-extrusion-old
...
fix: resolve_overlapping_proto_edges stops an overlap group that re-forms forever (HANG-51)
2026-10-30 16:35:42 -04:00
bherbruck
7b0a52eee4
Merge pull request #1811 from momysnow/fix/1799
...
fix: a trimmed face's tight box is found inside its trim (opt-in, #1799 )
2026-10-30 16:35:35 -04:00
Logan Night
8eb7321e72
difftest: SolidCraft #9486 case: point pr at this PR (the loader requires a /pull/ URL)
...
Co-Authored-By: Claude Code <noreply@anthropic.com >
2026-10-30 14:34:01 -06:00
Logan Night
44f1a66733
difftest: SolidCraft #9486 case (a partial revolve of a triangle on the axis, joined to a tile)
...
Two cases built from primitives (box, revolve): a 120 degree fan of a cone
standing on a tile's top face, and the same fan sunk 1 mm into the tile. Expected
volumes are closed form (30000 + 1600 pi and 30000 + 1296 pi). Both pass on main.
Co-Authored-By: Claude Code <noreply@anthropic.com >
2026-10-30 14:32:43 -06:00
Brett Lawson
82fc7d62b6
Merge origin/main into difftest/arena-naming-imports
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MNXLXj2sJf943y2dDF36Vy
2026-10-30 21:31:08 +01:00
bherbruck
2c903890a3
Merge origin/main into feat/brep-attributes-blend (green base for difftest-baseline)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 16:25:38 -04:00
bherbruck
0b779b232b
Merge pull request #1824 from tangency-labs/difftest/p7-op13-real-faces
...
difftest: intersect.curve_class_p7 — compare face queries on real B-rep faces (op 13)
2026-10-30 16:24:40 -04:00
Brett Lawson
141b90a1ce
Merge origin/main into wire/curve-assert-valid
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MNXLXj2sJf943y2dDF36Vy
2026-10-30 21:21:36 +01:00
bherbruck
fb5bbac446
Merge pull request #1780 from brett19/plan/offset-cpp-crash-records
...
plan: offset sweep C++ crash and hang records (UB-274, UB-67 addendum, HANG-51)
2026-10-30 16:20:20 -04:00
bherbruck
79e26a3f9e
Merge pull request #1706 from brett19/wire/surface-assert-valid-offset-siv
...
wire: surface.surface_assert_valid — SmOffsetSurface and SmSrfInVolume AssertValid
2026-10-30 16:19:04 -04:00
Brett Lawson
5d2119b950
Merge #1784 's branch: take its BuildOffsetOfFaceuse lamina delete fix
...
#1784 makes the same with_lease_returned change in offset_executive/p1.rs,
found from the extrudeHoles1 rounded outsets. Keep its version, so this PR
stacks on #1784 and adds the brepForFillet2 regression test and fixtures.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MNXLXj2sJf943y2dDF36Vy
2026-10-30 21:18:07 +01:00
bherbruck
d677082f28
Merge pull request #1719 from altvnk/fix/1502-offset-seam-twin
...
test: original z=5 spherical-cap thickening regression (#1502 )
2026-10-30 16:10:14 -04:00
Brett Lawson
589028bf10
Merge origin/main into port/brep-transform-matrix
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MNXLXj2sJf943y2dDF36Vy
2026-10-30 21:09:29 +01:00
Brett Lawson
9b7c1fffba
Merge PR head
2026-10-30 21:09:29 +01:00
Brett Lawson
397ef3873b
Merge origin/main into plan/offset-cpp-crash-records
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MNXLXj2sJf943y2dDF36Vy
2026-10-30 21:09:12 +01:00
bherbruck
644fa5c6c9
difftest: method path instead of a redundant closure (clippy)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 16:09:10 -04:00
Brett Lawson
5f2916a075
Merge remote-tracking branch 'origin/main' into fix/offset-fillet2-coincidence-hang
2026-10-30 21:08:48 +01:00
Brett Lawson
4cd16cfb75
Merge remote-tracking branch 'origin/main' into fix/offset-round-divergences
2026-10-30 21:08:27 +01:00
bherbruck
8f2af6fea6
test: WR-576 and WR-565 compose on linear-sweep arcs ( #1507 , #1477 )
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 16:08:02 -04:00
bherbruck
be497085a7
Merge pull request #1820 from tangency-labs/feat/sweep-screw
...
sweep: screw sweep with exact walls and axial cylinders (#1162 , #1163 )
2026-10-30 16:07:50 -04:00
bherbruck
e5ab5a0249
Merge pull request #1495 from khanahmad4527/fix-1477-arc-sweep-cylinder
...
fix: linear sweep of an arc square to its plane makes a cylinder (fork 12918e9), behind UpstreamFixes
2026-10-30 16:05:43 -04:00
bherbruck
e605641b18
Merge pull request #1796 from tangency-labs/test/issue-1441-offset-surface-export
...
test: an offset surface exports through ApproximateSurface (#1441 )
2026-10-30 16:05:24 -04:00
bherbruck
895cc72b60
Merge pull request #1758 from tangency-labs/fix/wr578-offset-closes-loop-gaps
...
fix: offset closes loop gaps between offset faces (WR-578, opt-in)
2026-10-30 16:03:11 -04:00
bherbruck
091222f611
test: count live faces after DeleteFace removes records (issue_1170 = 15, issue_1073); GlueEdges backticks
...
The old 21 counted 6 deleted face records; the live body has 15 faces before
and after this PR (volumes bit-identical), and fillet_executive_p3's
corner-setback cases pass against C++.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-30 15:58:42 -04:00