Skip to content

Add linearballbearing model contract with folder-local registration - #52

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

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

Conversation

@seveibar

@seveibar seveibar commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Adds generic recirculating linear ball-bearing contracts, with common de-facto sleeve envelopes for 8, 10 and 12 mm shafts. The string specifies dimensions and uses no supplier series identifiers.

Example: linearballbearing_bore8mm_od15mm_l24mm_seals(both).

Schema, strict parser, public exports and typed registration live in src/models/linearballbearing/; 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 ball bearing

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

linearballbearing_bore8mm_od15mm_l24mm_seals(both)

The canonical sleeve is 8 mm bore, 15 mm outside diameter and 24 mm long. Travel is along +Z between terminal planes Z=0 and Z=length. Loaded rows, offset return rows and relieved end chambers form a nominal recirculating assembly; these chosen internal dimensions do not claim supplier geometry, ISO 10285 fits, preload or load ratings.

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):

linearballbearing: 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