Skip to content

A corner pocket's boss follows a rounded plate corner instead of standing out past it - #90

Merged
Oliver-Johnson merged 10 commits into
mainfrom
claude/boss-rounded-corner
Oct 10, 2026
Merged

Oliver-Johnson merged 10 commits into
mainfrom
claude/boss-rounded-corner

Conversation

@Oliver-Johnson

@Oliver-Johnson Oliver-Johnson commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Requested by Oliver · project thread

What this changes

Before. With corner pockets, the boss at a rounded outer corner of the plate is a square: the plate rounds the corner and the boss was never cut to it. With no margin the boss's corner stood out past the arc by r(sqrt 2 - 1), a tab as tall as the boss (2.6 mm): 1.66 mm at the default 4 mm radius, 0.83 at 2, 1.99 at 4.8, at every pitch; 0.95 mm with margins of 0.5 mm. It stayed inside once both margins passed 1.17 mm, or once one margin was 0 and the other reached 4 mm. The default drawer with "No margin" and corner pockets had it on two of its four pieces (1.65 and 0.47 mm). The plate built with Download on.

After. A boss at a rounded corner follows the corner wherever the cut boss leaves the plate as whole as the square one did, and is the square boss, byte for byte as before, where it would not. In a sweep of 5,952 built designs, 3,737 had a boss out by 0.01 mm or more; 3,469 are now cut to the corner. 268 keep the square boss on every corner and 91 on some, because a magnet or screw bore there would stand under 1 mm from the arc: no margin, a corner of 3 mm or more, a pitch under 26 mm plus twice the radius (under 34 mm at the default corner) and a bore near its cap. Cut there, the bore opened a window in the outer wall. A boss that was already inside builds the same bytes as before, and so does one that stood out by under 0.01 mm. The page, the limits and the wording are unchanged.

How.

  • buildPiece cuts each corner boss's outline to the plate's outline polygon (clipToPlate, clipToConvex), so the boss's outer corner takes the outline's own chords, on the same points. The boss's pocket, its cut and a joint's housing are made from the clipped boss as before.
  • The clip leaves a boss that stands out by under 0.01 mm alone (its new points would stand a few microns from the cell's own and the weld opens edges), puts a point in the middle of a clipped side that runs along a chord (so the bottom edge is not the corner cell wall's, which would be used four times), and winds the clipped shape so the triangulation's fan starts across from the new points.
  • A boss is cut only where each of its bores stands MOUNT_WALL (1 mm, the wall mountLimits keeps from every cell edge) inside the arc and no joint's cut comes within MOUNT_WALL of the corner, and only if it comes out closed with nothing turned over: cut again when it is open or turned, then with its cutter turned a 28th of a turn; if no try is right, the boss is the square one. A boss is its own closed shell, so a check on the boss keeps its piece no more open and no more folded than before.
  • ENGINE.md says how a boss meets a rounded corner, when it stays square, and the four-use edges the cut leaves.

One cost for the reviewer. A cut boss and the corner cell beside it stand on the same points of the arc, and some edges are both shells', used four times: "a cut boss and the shell beside it on the same points of the arc", named in the audit and ENGINE.md. 69 of the 3,469 changed designs gain such edges, 517 in all, never an open edge, never a fold: 60 two-piece plates with a wall key or H-clip from beneath (vertical edges at the arc's points up to 2 mm, 1 to 22 each in the sweeps, 26 for a 2 x 2 with a wall bowtie at 40 mm), 7 with a corner of its own of 0.09 or 0.19 mm (9 or 10), 2 where a chord's middle point lands on a margin's side (1). Keeping them off would mean the boss standing off the cell's walls along the chords, a change to how the outline and the boss share points; not made. Accept them, or ask for that change.

The full write-up is /mnt/project-files/issue-batches/issue-86-report.md (round 1 at the end).

Checks

If this touches geometry

  • Bins: node test/bin-audit.js reports all cases clean
  • Baseplates: node test/plate-audit.js reports all plates watertight, and no case has picked up bad edges that were not already named as known. In a sweep of 5,952 built designs against main, 69 gain edges used four times, all of the named kind (never open); no design has more open edges, folds, turned shells or windows in the outer wall than main.
  • I added a case covering the new shape: the "corner boss stays inside a rounded plate corner" rows measure the farthest boss vertex past the outline (the issue's page, 0.5 mm margins with a 4.8 mm corner in two pieces at 36 mm, no margin at 34.5 mm with screws, a control, the sub-0.01 mm case), and every row also reads the outer wall for windows and must have no open edge and no fold. The review's four designs with open edges are rows (cut, closed), the window and the two fold designs are rows that must stay square, and three rows pin the named four-use kind at its count. Liveness: the old square tab and a skeleton plate's open wall. On main 10 rows fail, on 31629eb 7, here none.

Sweep: 7,649 designs in 11 families (the review's breach, band, joints, per-corner radii, one-cell pieces, half-cell strips and rim settings, a random set, the PR's own five sets, and a 2,000-design hunt of one-piece plates at any size the page takes); 5,952 built, each on main 1e1c48a and here. 3,737 had a boss out by 0.01 mm or more on main; 3,469 changed, every one with a boss cut; 268 kept square on every corner and 2,215 with no boss out by 0.01 mm build main's bytes. No design has more open edges, folds, inverted or wound shells or wall windows than main; 69 have more four-use edges (above). 11,760 bosses were cut, 6 needed the turned cutter, and none fell back to square on a failed try (the 268 and 91 above are kept square by the bore test).

Refs #86. The issue's own page is fixed, but where the cut would be worse (the 268 and 91 designs above, small pitches with a bore near its cap) the boss stays main's square one, and the tab with it, so the issue is not wholly closed.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY

…nstead of standing out past it

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
@Oliver-Johnson Oliver-Johnson self-assigned this Oct 10, 2026
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
…he plate as whole as the square boss did

The cut boss is taken only where each of its bores stands MOUNT_WALL inside the arc and
it comes out closed with nothing turned over, cut again and then with its cutter turned a
28th of a turn if need be; otherwise the boss is the square one, built as before. This
closes the window a magnet pocket opened in the outer wall at small pitches with a large
corner, and the open edges and folds some cut bosses had where the square one had none.
The audit reads the outer wall for holes, adds the review's designs and the ones left
square, and names the four-use edges a cut boss shares with the cell beside it.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
…uare, and the four-use edges it leaves

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
…with the 26 of a two-piece 2 x 2 at 40 mm

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uqqb1cvhXxrpb3P6y6ykBY
@Oliver-Johnson
Oliver-Johnson merged commit 7c2103d into main Oct 10, 2026
3 checks passed
@Oliver-Johnson
Oliver-Johnson deleted the claude/boss-rounded-corner branch October 10, 2026 22:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants