The Rust ifc-lite-geometry kernel does the production work.
Until the kernel is wired into the collab pipeline, this module
ships a pure-TypeScript reference implementation for the most
common parametric primitives:
extruded-area-solid (rectangle + circle profiles)
box (length × width × height)
cylinder (radius, height)
revolved-area-solid (circle profile around an axis)
Output is deterministic given identical params. Hashing the
Mesh (positions + indices) gives the same bytes on every machine
because we use only deterministic float arithmetic — no Math.random,
no transcendentals beyond Math.cos/sin which are IEEE-754 specified
but not strictly reproducible across architectures. For tests we
accept the small chance of cross-platform drift; the
determinism harness flags it explicitly so consumers know when to
fall back to mesh-blob upload.
Parametric mesh primitives (spec §11.2 — v0.3 reference impl).
The Rust
ifc-lite-geometrykernel does the production work. Until the kernel is wired into the collab pipeline, this module ships a pure-TypeScript reference implementation for the most common parametric primitives:Output is deterministic given identical params. Hashing the
Mesh(positions + indices) gives the same bytes on every machine because we use only deterministic float arithmetic — no Math.random, no transcendentals beyond Math.cos/sin which are IEEE-754 specified but not strictly reproducible across architectures. For tests we accept the small chance of cross-platform drift; thedeterminismharness flags it explicitly so consumers know when to fall back to mesh-blob upload.