The priming hang: split oversized chord-bars into worker sub-windows

Root cause (docs/NEXT.md §5, mechanism not per-genre): the chord-bar is the stream-worker's feed/render QUANTUM — runLivePump renders one fed bar as ONE blocking renderChunk, posts "primed" only after that first chunk lands, and hard-openfails any chunk bigger than the 30s SAB ring.

• chalkvespers 38.4s / atlantidrone 33.7s / sourdough 32.5s > 30s ring -> "openfail gen1: chunk 1485504 > ring 1323000" (captured headless), swallowed into handle.errors, app spins "priming…" forever, rms 0…

• sourdough is the 4th member of the class (never in the original 22-genre scan); next-largest bar is mallsoft at 19.2s, which always fit.

• Fix: splitFeedWindows() in the ring conductor's feed() — any bar over MAX_FEED_SEC (6s) goes to the WORKER as contiguous [lo..hi) sub-windows.

• Residual (deliberate): the WAV-FIRST mobile conductor still feeds whole bars (runBarAccumPump has no ring cap — slow first segment, not a hang)

Verified: (headless, live-test.html?wavOut=0, seed 7, scratch/ probes): before: atlantidrone NEVER primes (openfail above)

▶ Play it: Hadal Vespers → Subduction Hymnal → Mother Culture Vigil — the three genres this change names, as one path https://stellate.app/?genre=atlantidrone&seed=1903&path=2133.13956,1579.13027,2141.12627&xdur=0.484

f7572aa https://github.com/aboard-io/stellate/commit/f7572aa76949e225e2ece878e946f2dd71dab06c