Skip to content

Dividers in bins (F18): one center divider in every generated bin STL - #159

Merged
ntindle merged 1 commit into
mainfrom
poteto/dividers-20261030-0710
Oct 30, 2026
Merged

ntindle merged 1 commit into
mainfrom
poteto/dividers-20261030-0710

Conversation

@ntindle

@ntindle ntindle commented Oct 30, 2026

Copy link
Copy Markdown
Owner

Dividers in bins (F18): one center divider in every generated bin STL

Bin options gains a "Dividers in bins" switch. When on, every generated bin STL gains one center divider down the middle of its long side (square bins: along x), 1.2 mm thick, from the bin floor up to the top of the bin units, below the stacking lip so bins still stack. Persisted as gridfinity_dividers, local-only (not in share links, same precedent as label tabs and test fit). Estimates include the divider volume; the Download files README notes it. The divider changes neither part height nor footprint, so 3MF plate packing and the printer-Z limit are untouched.

Feature map: F18 ❌→🟡 (one fixed divider, not configurable counts or positions), parity 49.0% → 50.0% (23 ✅ + 4 🟡 / 50). F15 cell wording updated (dividers no longer in its missing list).

Evidence

  • Local gates on the branch commit: npm test 51 files, 603 passed / 11 skipped; npm run lint clean; npx tsc --noEmit clean; npm run build green (index chunk 236,207 → 237,001 B, +0.3%; lazy export chunk 22,147 → 22,830 B, +3.1%).
  • Mesh: divider box stays inside the bin footprint (bounds unchanged, 0..83.5 for a 2×1 bin), top at height×7 mm below the stacking lip; closed/outward-facing in all tested shapes; mesh volume equals analytic volume to 1e-6, with the orientation test pinning divider corners (not wall vertices) for both along-x and along-y bins.
  • Perf vs trunk, same box/day, node scripts/measure.mjs --n=15 --lh=3 × 2 pairs (branch then trunk; trunk then branch): branch LH 73/71, TTI 3630/3772 ms, input-to-preview 62.5/43.7 ms, layout 562/515 ms, share 113/93 ms; trunk LH 72/65, TTI 3696/4127 ms, input-to-preview 38.4/47.2 ms, layout 558/509 ms, share 91/90 ms. Verdict: no credible regression — pair 1's interaction gaps did not reproduce in the reversed pair, and trunk's own swing exceeds every branch–trunk gap. The diff touches no measured code path.
  • Independent review: SHIP IT on the code (commit 093541a), then SHIP IT on the docs-only amend (scoreboard section + F18 tie-break wording) that produced the final head. Non-blocking nits recorded in the goal backlog: square-bin tie-break wording (closed in this PR), divider/wall fuse overlap convention (same as tabs), a dead settings helper that does not expose dividers, and no standalone partVolume-with-divider unit test (covered transitively).
  • Trunk expectations for Lane B (deploy preview): core tasks 1–3 pass as on trunk; the "Dividers in bins" switch is present in Bin options with the stated description; OFF persists across reload; with a placed bin, turning it ON raises the Print plan estimate line by exactly the divider volume and leaves plate rows/counts unchanged; ON persists across reload; Download files still succeeds.

Scoreboard

docs/scoreboard.md updated with the 2026-10-30 section (parity 50.0%, both perf pairs, bundle delta).

…#159)

Bin options switch adds a 1.2 mm divider down the middle of each bin's long side, from the bin floor up to the top of the bin units, below the stacking lip so bins still stack. Persisted as gridfinity_dividers, local-only, not in share links. Estimates include the divider volume; the Download files README notes it. Feature map: F18 not present to partial, parity 49.0% to 50.0%.
@netlify

netlify Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for gridfinity-drawer-planner ready!

Name Link
🔨 Latest commit 0ecad61
🔍 Latest deploy log https://app.netlify.com/projects/gridfinity-drawer-planner/deploys/6ae48eebb49e885970a7e45d
😎 Deploy Preview https://deploy-preview-159--gridfinity-drawer-planner.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions

Copy link
Copy Markdown

PR Quality Report 📊

Check Status
TypeScript ✅
ESLint ✅
Tests ✅
Build ✅

View detailed results

@codecov

codecov Bot commented Oct 30, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.43590% with 1 line in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (main@1b6e799). Learn more about missing BASE report.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
src/utils/partVolumes.ts 87.50% 1 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #159   +/-   ##
=======================================
  Coverage        ?   93.99%           
=======================================
  Files           ?       71           
  Lines           ?     3644           
  Branches        ?     1067           
=======================================
  Hits            ?     3425           
  Misses          ?      198           
  Partials        ?       21           
Flag Coverage Δ
unittests 93.99% <97.43%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@ntindle
ntindle merged commit 3822f6d into main Oct 30, 2026
33 checks passed
@ntindle
ntindle deleted the poteto/dividers-20261030-0710 branch October 30, 2026 13:09
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.

1 participant