server.py serves the repo root rather than web/, so the 2D prototype stays
reachable next to the 3D port — you want to flip between the reference
implementation and the thing you're porting without stopping the server.
--selfcheck verifies the tree and prints URLs; no node, no network.
three r175 is copied in from 90sDJsim rather than referenced, so the game has
no runtime dependency on a sibling checkout.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Prototype: spring-mass sail, quadratic wind with gust telegraphs and a
mid-storm wind change, per-corner hardware ratings with weakest-link
cascade failures, garden coverage scoring, and a runnable repair loop.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>