Go to file
m3ultra ae6e444996 Add contracts.js: the shared integration spine
Types, tuning constants ported from the prototype, a seeded PRNG and Emitter,
plus checkContract() — the tripwire that catches a lane drifting from its
interface at merge time instead of three lanes later.

createStubWind() ports the prototype's gust shape (telegraph 1.5s, ramp 0.8s,
hold 1.7s, fade 1.0s) so B and D can develop before Lane C lands weather.js.
Its schedule is precomputed at construction, which keeps sample() pure in t —
the selftest samples out of order and must get the same answer.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 21:33:42 +10:00
.claude Vendor three.js r175, add stdlib dev server and launch config 2026-07-16 21:33:42 +10:00
prototype Add side-systems to design doc + playable sail-storm prototype 2026-07-16 20:55:31 +10:00
tools/character Lane D: player rig assets — ped copy + anim-only clip pack 2026-07-16 21:27:04 +10:00
web/world Add contracts.js: the shared integration spine 2026-07-16 21:33:42 +10:00
.gitignore Vendor three.js r175, add stdlib dev server and launch config 2026-07-16 21:33:42 +10:00
DESIGN.md Add side-systems to design doc + playable sail-storm prototype 2026-07-16 20:55:31 +10:00
LANE_PROMPTS.md Add 3D execution plan, lane prompts, and THREADS log 2026-07-16 21:05:57 +10:00
PLAN3D.md Add 3D execution plan, lane prompts, and THREADS log 2026-07-16 21:05:57 +10:00
server.py Vendor three.js r175, add stdlib dev server and launch config 2026-07-16 21:33:42 +10:00
THREADS.md Add 3D execution plan, lane prompts, and THREADS log 2026-07-16 21:05:57 +10:00