Skip to content

Add linearbearingblock model contract with folder-local registration - #53

Closed
seveibar wants to merge 2 commits into
mainfrom
codex/motion-linearbearingblock
Closed

seveibar wants to merge 2 commits into
mainfrom
codex/motion-linearbearingblock

Conversation

@seveibar

@seveibar seveibar commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Adds a generic four-hole linear-bearing block contract with explicit housing, shaft and cartridge dimensions. The independent nominal cartridge contract avoids a dependency on another unmerged family.

Example: linearbearingblock_bore8mm_bearingod15mm_w34mm_l24mm_h24mm_mount(clearance)_hole4.5mm_pitchx24mm_pitchy16mm.

Schema, strict parser, public exports and typed registration live in src/models/linearbearingblock/; no shared registry or export file changes. Documentation distinguishes nominal visual internals from the overall dimensional envelope.

Schema, strict parser, public schema/type exports and typed registration remain in each src/models/<name>/ folder; generated discovery owns shared unions and barrels.

linear bearing block

Paired renderer: tscircuit/jscad-electronics#441. Direct full-string fixture; verified browser preview.

linearbearingblock_bore8mm_bearingod15mm_w34mm_l24mm_h24mm_mount(clearance)_hole4.5mm_pitchx24mm_pitchy16mm

The canonical housing is 34×24×24 mm, with 4.5 mm clearance holes on a 24×16 mm pattern. Its mounting face is Z=0; the shaft travels along Y at X=0 and Z=height/2. Housing dimensions and nominal cartridge internals are independently specified generic geometry, without manufacturer-interchangeability, preload or fit claims.

Contract tests, typecheck, formatting, build and diff checks passed locally. Source-group result: 83 pass, 0 fail, 2400 assertions.

Four-view snapshots (isometric, top, front and side):

linearbearingblock: four views

Contract test workflow passed in CI at this exact head. Other passing checks: preview.

The combined contract union passed tests (105 tests, 0 failures, 2,994 assertions), typecheck, formatting and build.

Manual review only; auto-merge is not enabled. Geometry remains in the paired renderer PRs.

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