Offline where possible + the accessible link becomes untappable-proof

OFFLINE (Paul: "we need it to work offline — where possible. For example precache samples for instruments along a route"). sw.js splits strategy by the repo's own immutability law: CACHE-FIRST for /found/** and /engine/faust/dist/** (the deploy invariant already guarantees those classes never change…

• app/precache.js warms the ROUTE AHEAD of the traveler: on any path/seed change (debounced, keyed) it samples weightsAt along every leg, mixes the crossed genres once each, resolves the actual draw set

• THE ACCESSIBLE LINK (Paul: "tapping accessible text version goes nowhere"). Unreproducible in chromium at any viewport — iOS-Safari-side

Verified: explorer-ui, access-ui, share-url all green (one flaky explorer FAIL under fleet CPU contention, clean on re-run).

▶ Play it: Rail Replacement Rapture — a bed-heavy genre where the found-sound layer carries the room https://stellate.app/?genre=transitwave&seed=7455&path=749.12536,768.12569,730.12569&xdur=13.122

9cb9351 https://github.com/aboard-io/stellate/commit/9cb9351fdeea73a64c638a7b4cab39ce57a5d0a2