Scarlet Riverboat Masquerade

repo: ~/Projects/scarlet-riverboat-masquerade · 36 commits · 0 in last 24h, 0 in last 7d ·

Search the build

36 commits indexed

  1. a5a2c5a 2026-09-04 snapshot before restart: preserve in-flight work
  2. ab81288 2026-09-02 riverboat: Phase 1 archive.org reliability — cap year-count fetches at 5 concurrent, polite retry/backoff/breaker, localStorage count cache (kills the false "0" tiles)
  3. 9899b13 2026-09-02 contrarian FIX FIRST: per-build AbortController cancels stale year-fetch batch on source-switch; drop dead sort ternary; report reflects BLOCKED-on-live-verify not DONE
  4. 111f196 2026-09-02 5x: report — 2 sweeps clean after archive.org fetch-timeout hardening (sweep 2 fix)
  5. d2d1341 2026-09-02 5x sweep 2: abort-timeout on archive.org fetches so a hung/down archive fails into the graceful error state (no infinite '…'); accurate error copy
  6. 6b0db05 2026-09-02 riverboat: rebuild year browse per UX review — tappable 44px year-tile grid (no more 11px bars), Source selector (Grateful Dead + Dead & Company), heat-colored tiles, loading/error states, mobile one-tap player, bigger transport controls
  7. 6ceafcc 2026-09-02 riverboat: interactive touring-history year map (bars sized by shows/year) replaces year dropdown
  8. 394ecd1 2026-09-02 Music controller: full-archive browse — loads the most-played Dead shows by default (18k+ shows), a Year selector (1965-1995) to browse any year, plus search; shows total count
  9. ced8032 2026-09-02 Back-link: room now links '← The Main Stage' (stage.agentabrams.com) instead of the DEAD homepage
  10. 4adfed7 2026-09-02 Add 3D Three.js orb floating over the riverboat — beat-reactive wireframe icosahedron that pulses to the LIVE Dead stream (via the react analyser), warm ember palette; gentle idle when music is off
  11. 88dc7e0 2026-09-01 Riverboat room: searchable full Grateful Dead archive — type anything (date/city/venue/song) to search the entire archive.org GratefulDead collection and play any show; curated 5 kept as quick picks; venue marquee shows searched venues
  12. 546a5e7 2026-09-01 Replace emoji motifs with original DRAWN animated song-items: flickering flames, spinning flowers, twinkling stars, rotating snowflakes, water drops, spinning wheels, flapping birds, + musical notes default — keyed to the current track title, floating up through the scene
  13. c67e4f5 2026-09-01 Concert venue backdrops (per-show stage-light beams + venue marquee: Fillmore/Veneta/Jai-Alai/Barton Hall/Nassau, key v) + song-motif layer that floats item glyphs matching the current track title (fire/mountain, sugar/rose, cat, train, rain/snow...)
  14. 91da570 2026-09-01 Beef up the bear dance: bigger sway + always-grooving bounce + bigger arm waves/leg steps + stronger beat hop; more sensitive beat detector so hops fire more often against live music
  15. cf28d81 2026-09-01 Collapse all control panels on load; add master ☰ Controls toggle (key c) to reveal/hide the dock, cameras, chapters, and music room — art leads first, user opens controls
  16. ab9d551 2026-09-01 Bears spread onto the boat decks too: 3 dancing bears join the revelers on deck (density-gated, beat-synced) alongside the shoreline troupe
  17. 7a9cd0e 2026-09-01 Add Dancing Bears slider (1-10): user-sized troupe auto-distributed + scaled across the shoreline, 10-color palette, each dancing + beat-synced
  18. ef794b8 2026-09-01 Colorful dancing-bear troupe synced to the music: rose/gold/teal bears, arms raised overhead, hip sway + dance steps, HOP on the beat when React is on. Original design (not the GD trademark)
  19. 77a4578 2026-09-01 Restyle bear puppet festive + original (brighter cinnamon fur, cream belly, chunkier, big cute eyes w/ highlights, rosy cheeks, smile) — captures the joyful dancing-bear spirit without copying the trademarked Grateful Dead bear. Rig intact
  20. 09054a7 2026-09-01 Rig fix: connect head-to-body with a neck, raise arms to proper shoulders (add Left/Right Shoulder joints) so the bear reads as one connected puppet
  21. 5f0a7a7 2026-09-01 Add Character-Animator-ready rigged bear puppet .psd (assets/dancing-bear-puppet.psd): per-part named layers (Head/Body/Left+Right Arm+Leg, eyes with pupils+blinks+eyebrows, 14 mouth visemes for lip-sync, +draggable handles). Adobe-source asset, not part of the web build
  22. 00634a9 2026-09-01 Upgrade cubs to articulated puppet-style dancing bears: jointed swinging arms/legs, hip sway, head bob, muzzle+ears+belly, beat-reactive. Adobe-Character-Animator-style articulation, done live in-canvas (original bears, not the GD trademark)
  23. cda7b3e 2026-09-01 Museum label completeness: document A (react), P (pterodactyl), click-to-fire in the keyboard help; describe the full cutout cast (cubs, songbirds, pterodactyl) + paper-grain style
  24. b44db4f 2026-09-01 Add singing songbirds: cutout shoreline birds with ♪♫♬ note-bubbles that pop rhythmically (and on the beat when reactive). Original glyphs, no lyrics — copyright-safe
  25. 9486ed3 2026-09-01 Full cutout pass: flat-fill + bold outlines on dancers (with mask bands) and the riverboat (hull/decks/stacks/pilot house). Complete South-Park-cutout art direction across the cast + boat
  26. 1842974 2026-09-01 Cutout/South-Park art pass: flat-color fills + bold dark outlines on the animal cast (fox/heron/rabbit/bear/cubs) + construction-paper grain overlay. Dancers stay silhouettes per the brief
  27. 1043c03 2026-09-01 Keep animals/cubs grounded (lower hop/bounce); add pterodactyl fly-over (button + key p) soaring across the canyon
  28. b8b147f 2026-09-01 Add Photoshop-composited canyon-backdrop.png asset + two dancing bear cubs beside the conductor bear (bob/rock, beat-reactive)
  29. 6f9809b 2026-09-01 Sync objects to the music: beat detection drives pulsating lamps + fireworks bursts on the beat; click/tap anywhere launches a firework (Model Arena style). Additive, react-gated
  30. 3e917c7 2026-09-01 Add optional 'React to Music' mode: Web Audio AnalyserNode on the live archive.org stream (CORS-open) drives lantern bloom, firefly flare, dancer bounce + boat bob on the beat. Additive — authored motion stays the default; museum note updated
  31. 6aa7d78 2026-09-01 Harden music room per codex review: fetch race-token guard, per-track audio-error skip (ignore benign ABORTED), keyboard guard for form fields, drop role=application
  32. 2b38b3c 2026-09-01 Add conditional DEAD back-link (shown only when served as /room of dead.agentabrams.com)
  33. 85c6c77 2026-09-01 Add Music Room: stream the Grateful Dead Live Music Archive (archive.org) — reuses the dead-agentabrams curated catalog; native transport, set list, seek, source attribution, embed fallback. Motion stays authored (no audio analysis).
  34. 8187692 2026-09-01 Harden shade(): clamp t to [0,1] and channels to [0,255] (codex review)
  35. f968af5 2026-09-01 Fix NaN-color crash that froze the render loop (pal() rgb strings fed to hexToRgb); add shade() helper, deeper canyon parallax, favicon
  36. a1ca1d2 2026-09-01 Scarlet Riverboat Masquerade: working single-file animated gallery

Authors

Agents used

  • none detected

Skills used

  • /claude2
  • /code2
  • /cubs2
  • /backoff1
  • /breaker1
  • /painted1
  • /status1
  • /zero1
  • /negative1
  • /mock-reliability1
  • /live-happy1
  • /playback1
  • /down1
  • /error1
  • /year1
  • /city1
  • /venue1
  • /song1
  • /mountain1
  • /rose1
  • /snow1
  • /leg1
  • /hide1
  • /gold1
  • /teal1
  • /dancing-bear-puppet1
  • /legs1
  • /decks1
  • /stacks1
  • /pilot1

Creative ideas + design notes

Commits with substantial prose (≥120 chars) — the rationale behind each move.

a5a2c5a · 2026-09-04 · snapshot before restart: preserve in-flight work
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gbmuMHgCLDEPM4TpfAr4G
ab81288 · 2026-09-02 · riverboat: Phase 1 archive.org reliability — cap year-count fetches at 5 concurrent, polite retry/backoff/breaker, localStorage count cache (kills the false "0" tiles)
buildMap fired all 31 per-year count queries at archive.org at once; archive
drops ~40% of that burst as steady-state, so ~40% of tiles rendered a false "0"
(a failed fetch became n:-1 then cached/painted as 0). Phase 1:

- mrPool: cap the count-fetch burst at 5 concurrent (was unbounded Promise.all).
- mrFetchCount: max 2 retries, jittered backoff, 429 backs off HARDER than a
  timeout; r.ok/status===429 checked BEFORE r.json() so a 429 is never parsed as
  success; batch-shared circuit breaker opens after 6 consecutive failures and
  short-circuits the rest instead of hammering a struggling nonprofit. Count
  timeout tightened to 6s (counts return in ~0.18s) to bound time-to-error.
- mrCacheLoad/Save: per-source+year localStorage cache; NEVER persists a
  failed/zero/negative count (a cached 0 is a poisoned read), current calendar
  year always re-fetches, ~30-day TTL. buildMap paints known-good cached counts
  instantly then refreshes live via the capped pool; a live failure NEVER
  overwrites a good cached value with 0.
- failed tiles show a non-destructive "—" error state, never a false 0.

Tests (global playwright via PW env, no npm deps):
- tests/mock-reliability.cjs: route-interception mock proving concurrency cap
  (saturates at 5, never exceeds), no false "0" under a 40% failure mix, bounded
  retries + circuit-breaker halt (no retry storm), and 429 backing off harder
  than a timeout. 14/14.
- tests/live-happy.cjs: real archive.org, no regression — 31 GD tiles populate
  (1994=460), D&C source loads, no false 0, no page errors. 7/7.

Audio/playback, source selector, and UI markup unchanged. No Relisten (Phase 2).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012k4CBzSCAmou3w8SYxQJLb

File tree

8 files tracked. Click any to browse the source at HEAD.

Other build journals

← Sanderson Onboard  ·  all 4 projects  ·  Schumacher Internal →

Export

commits.csv · feed.atom · project.json · commits.json

rendered in 1ms