Skip to content

fix(gridfinity): align baseplate_scad depth_units default with manifest - #107

Merged
aldoruizluna merged 1 commit into
mainfrom
fix/default-drift-gridfinity
Oct 2, 2026
Merged

aldoruizluna merged 1 commit into
mainfrom
fix/default-drift-gridfinity

Conversation

@aldoruizluna

@aldoruizluna aldoruizluna commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

What changed

param mode manifest default source literal (before) source literal (after) file:line
depth_units baseplate_scad 1 2 1 gridfinity/baseplate.scad:31

Direction and why

The source literal now follows the manifest default. Studio always sends the manifest-resolved set, so baseplate_scad users already see a 2 × 1 plate. These also say 1:

  • README.md:57;
  • docs/README.md:89 ("all three | 1");
  • the sibling OpenSCAD modes cup.scad:29 and lid.scad:33.

The 2 × 2 plate is still available as the baseplate_std_scad preset (depth_units: 2).

Licence note (NOTICE.md). baseplate.scad is the clean-room OpenSCAD re-creation (#2). This PR edits one literal in MADFAM's own authoring. No upstream file is involved and no provenance changes.

Clean-room record. docs/CLEANROOM-VERIFICATION.md records baseplate_scad/default at 84 × 84 (the old bare literal) and is a dated acceptance record, so I did not rewrite it. The new bare default reproduces that record's own baseplate_scad/p_depth_units_min row exactly: 2808.10 mm³ (recorded 2808.099, 84 × 42 × 5).

How this maps to GOC-1

GOC-1 (Digital Twins MES, Phase 2) variables.json is only complete once yantra4d injects every declared parameter (RENDER_INJECT_FULL_PARAMS). This PR removes the default-drift note for this cartridge (rule from hyperobjects-spec#30). Turning that flag on can then no longer change this cartridge's geometry for callers that send {}.

Evidence

hyperobjects-spec at 510efba (the #30 branch; CI pins 3ff3736, which lacks the rule), CadQuery 2.8.0, OpenSCAD 2026.02.13 (Manifold), macOS:

$ y4d-spec check ./gridfinity
y4d-spec check: cartridges=1 failures=0 notes=0 ...            # before: notes=1 (default-drift depth_units)

$ y4d-spec check ./gridfinity --render --require-openscad --parity --openscad-path libs --openscad-path . -v
       (baseplate_scad, baseplate_scad, openscad): ok — volume 2808.10mm³, 1 body/bodies, watertight
       (baseplate_scad, baseplate_scad, preset 'baseplate_std_scad', openscad): ok — volume 21066.06mm³, 1 body/bodies, watertight
  ok gridfinity (./gridfinity, 15 render(s) verified (10 preset), no comparable pair)
y4d-spec check: cartridges=1 failures=0 notes=2 geometry=verified renders=15 presets=10 skipped=0 parity=0/0 ok, warn=0, exempt=0, placement=0, failures=0

The 2 notes are the existing thin-wall printability measurement on the CadQuery baseplate mode, which this PR does not touch. verification is unchanged. One cartridge, one file.

A green macOS run does not prove the Linux result (AGENTS.md rule 4). CI's Linux render lane is the verdict, and it is still pending at the time of writing.

CI status (updated)

Linux CI on this head: manifest conformance (all cartridges): pass; render (cartridges changed in this PR) (gridfinity): pass; render scope (which cartridges changed): pass.

🤖 Generated with Claude Code

baseplate.scad fell back to depth_units = 2 while the manifest, both
README tables, cup.scad and lid.scad all use 1. The top-level literal now
states the manifest default, so a render that injects no parameters builds
the 2 x 1 plate Studio shows (GOC-1 default-drift). The 2 x 2 plate stays
one click away as the baseplate_std_scad preset.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Aldo Ruiz Luna <aldo.ruiz.luna@gmail.com>
@aldoruizluna
aldoruizluna marked this pull request as ready for review October 2, 2026 22:26
@aldoruizluna
aldoruizluna merged commit a17d326 into main Oct 2, 2026
6 checks passed
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