From 8550ac7e4045afbb2df7c1ba5bc204a0216d65de Mon Sep 17 00:00:00 2001 From: jyviko <2501648+jyviko@users.noreply.github.com> Date: Sat, 31 Oct 2026 01:28:23 -0400 Subject: [PATCH] Kernel rig: the trough and the pocket whose floors fall to a drain build SMLib now offsets a vertex where four faces meet (two walls and two facets at the floor's corners, four facets at the drain) to two vertices joined by a new edge (tangency-labs/smlib branch smlib-shells). Both volumes match their closed forms. The pocket's lining, hanging from the top's rim round the pocket, stands apart from the slab's outer walls with the cavity rising between them to the open top: the case says two shells in the one body. Co-Authored-By: Claude Opus 5.5 --- tests/kernel-cases/shell/KNOWN_FAILING | 2 -- .../expected.json | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/tests/kernel-cases/shell/KNOWN_FAILING b/tests/kernel-cases/shell/KNOWN_FAILING index 224e4bf005..491e3688dd 100644 --- a/tests/kernel-cases/shell/KNOWN_FAILING +++ b/tests/kernel-cases/shell/KNOWN_FAILING @@ -8,6 +8,4 @@ 616-shell-open-a-rib-side-face-of-a-lid SMLib status 1001 cov-shell-again-open-at-an-inner-wall-of-a-shelled-box SMLib status 1001 cov-shell-plate-with-a-hole-through-its-arc-side SMLib status 1001 where the hole's wall meets the arc side -cov-shell-pocket-whose-floor-falls-to-a-drain SMLib status 1001 where four faces meet at the pocket floor's corners -cov-shell-trough-whose-floor-falls-to-a-drain SMLib status 1001 where four faces meet at a corner cov-shell-up-down-joined-squares-open-at-a-side-wall SMLib status 1001 diff --git a/tests/kernel-cases/shell/cov-shell-pocket-whose-floor-falls-to-a-drain/expected.json b/tests/kernel-cases/shell/cov-shell-pocket-whose-floor-falls-to-a-drain/expected.json index a2c6c676f2..1c60969ae9 100644 --- a/tests/kernel-cases/shell/cov-shell-pocket-whose-floor-falls-to-a-drain/expected.json +++ b/tests/kernel-cases/shell/cov-shell-pocket-whose-floor-falls-to-a-drain/expected.json @@ -2,8 +2,9 @@ "sources": [], "what": "a slab 140 x 90 x 50 with a 30 mm pocket whose floor falls 1 deg from its edges to a central drain (four faces meet at each of the pocket floor's concave corners), shelled 3 mm open at the top", "source": "analytic", - "method": "The floor below z = 0 is a pyramid, apex at the centre h = 30 tan 1 deg = 0.523652 below: two triangular prisms (a triangle on XZ swept along y, one on YZ swept along x) intersected. Slab 140 x 90 x 50 less the pocket x 20..120, y 15..75 down to z = 20 and the pyramid below it: V0 = 630000 - (100 60 30 + 100 60 h/3). Shell 3 open at the top, offset faces extended to meet: the cavity is x 3..137, y 3..87 from z = 3 up to the top, except over the pocket's walls moved 3 out (x 17..123, y 12..78), where it rises only to the pocket's floor facets moved 3 down (their max, exactly over the cells where each is highest): cavity 297136.906075. V = 151815.790029", + "method": "The floor below z = 0 is a pyramid, apex at the centre h = 30 tan 1 deg = 0.523652 below: two triangular prisms (a triangle on XZ swept along y, one on YZ swept along x) intersected. Slab 140 x 90 x 50 less the pocket x 20..120, y 15..75 down to z = 20 and the pyramid below it: V0 = 630000 - (100 60 30 + 100 60 h/3). Shell 3 open at the top, offset faces extended to meet: the cavity is x 3..137, y 3..87 from z = 3 up to the top, except over the pocket's walls moved 3 out (x 17..123, y 12..78), where it rises only to the pocket's floor facets moved 3 down (their max, exactly over the cells where each is highest): cavity 297136.906075. The pocket's lining (its walls and floor, 3 thick, hanging from the top's rim round the pocket) stands apart from the slab's outer walls, the cavity rising between them to the open top: two lumps in the one body. V = 151815.790029", "body_count": 1, + "shells": 2, "volume_mm3": 151815.7900294403, "tolerance": { "rel": 1e-05