found: never fetch from archive.org again

The player resolved a source url through found-manifest.json's byUrl map and, on a miss, streamed the original from archive.org in escalating Range requests. 79 of 192 sources were unmapped -- and every one of them already had a local twin on disk, deployed, unused.

• localCacheFor becomes a convention resolver: url -> SOURCES id -> found/.mp3, with byUrl kept only as an override for names that don't follow it.

Verified: no-remote-sources.test.js makes it permanent: every source must resolve to a found/ path that exists on disk, and the decoder must contain no remote path.

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

22608f8 https://github.com/aboard-io/stellate/commit/22608f864f8b672c92429e4cea583038853f3358