Commit Graph

  • 5f8b8f14e6 claim human-experience-filter-art session 0029 (placeholder) + sessions.json entry BenStullsBets 2026-06-30 08:12:39 -07:00
  • bcae35b63e test(static): E2E — static boot with no API + dream shader survives cross-origin CORS BenStullsBets 2026-06-30 07:48:22 -07:00
  • a93c0d57c8 chore(static): Cloudflare deploy artifacts — R2 CORS policy + deploy runbook BenStullsBets 2026-06-30 07:45:20 -07:00
  • 77cb04bb8c feat(static): build script — dist/<app>/ + manifest-only media tree, baked API JSON, _redirects BenStullsBets 2026-06-30 07:43:49 -07:00
  • 271586625c feat(static): config-driven media base, baked-JSON boot, client pick/alteration, crossOrigin BenStullsBets 2026-06-30 07:43:49 -07:00
  • be13248bdd feat(static): client-side alteration engine (port of player.alteration/audio) BenStullsBets 2026-06-30 07:25:24 -07:00
  • 7ef3e0ccc6 plan: Cloudflare static publish — implementation plan BenStullsBets 2026-06-30 07:23:57 -07:00
  • 59c1c3a895 add sessions/0028/SESSION-0028.0-TRANSCRIPT-2026-06-30T06-53--2026-06-30T07-21.md + replace placeholder/variant SESSION-0028.0-TRANSCRIPT-2026-06-30T06-53--INPROGRESS.md BenStullsBets 2026-06-30 07:23:18 -07:00
  • 7a51d8f6d4 design: publish to benstull.art via Cloudflare Pages + R2 (fully static) BenStullsBets 2026-06-30 07:15:41 -07:00
  • 582183db2f Merge pull request 'fix(sim): kill the reverse-landing frame jump (D3)' (#30) from fix/d3-reverse-landing-jump into main benstull 2026-06-30 14:17:56 +00:00
  • c13ce36787 fix(sim): kill the reverse-landing frame jump (D3) BenStullsBets 2026-06-30 07:16:47 -07:00
  • 21830069ad claim human-experience-filter-art session 0028 (placeholder) + sessions.json entry BenStullsBets 2026-06-30 06:56:42 -07:00
  • 50366c056e add sessions/0027/SESSION-0027.0-TRANSCRIPT-2026-06-29T22-04--2026-06-30T06-47.md + replace placeholder/variant SESSION-0027.0-TRANSCRIPT-2026-06-29T22-04--INPROGRESS.md BenStullsBets 2026-06-30 06:49:13 -07:00
  • 934f60cbd2 Merge feat/left-brain-annotations: factual labels + localization for 28 pool clips BenStullsBets 2026-06-30 06:44:37 -07:00
  • 7995ba4069 feat(content): left-brain factual labels for the 28 pool clips that lacked them BenStullsBets 2026-06-30 06:44:36 -07:00
  • 7bd6c9a57b Merge fix/boot-silent-no-autostart: boot silent, no un-gestured auto-start BenStullsBets 2026-06-30 06:32:12 -07:00
  • e5fe00e948 fix(sim): boot silent (video off, audio 0) — no un-gestured auto-start BenStullsBets 2026-06-30 06:31:38 -07:00
  • 020219f9a6 Merge remote-tracking branch 'origin/main' BenStullsBets 2026-06-30 06:30:55 -07:00
  • 534c54fe12 claim human-experience-filter-art session 0027 (placeholder) + sessions.json entry BenStullsBets 2026-06-29 22:14:22 -07:00
  • 5beee55119 Merge fix/video-loop-ended-safety-net: base loop never freezes BenStullsBets 2026-06-29 21:52:55 -07:00
  • ec660c4880 fix(sim): add ended safety net so the base loop never freezes BenStullsBets 2026-06-29 21:52:50 -07:00
  • a2d8179507 Merge feat/localization-language-dropdown: language dropdown (en/es/fr/ja) BenStullsBets 2026-06-29 21:26:26 -07:00
  • 7090d3a836 test(i18n): e2e for language dropdown chrome + reset on reload BenStullsBets 2026-06-29 18:55:36 -07:00
  • 8df7859c5a feat(i18n): author es/fr/ja annotation translations + merge into manifest BenStullsBets 2026-06-29 18:54:37 -07:00
  • dcdc3d62f7 feat(i18n): manifest translation extract/merge tool + en catalog BenStullsBets 2026-06-29 18:49:52 -07:00
  • 1977e679ee feat(i18n): live language switching for chrome + annotations BenStullsBets 2026-06-29 18:48:48 -07:00
  • 49b77e0700 feat(i18n): tag controls with data-i18n + add language dropdown BenStullsBets 2026-06-29 18:47:03 -07:00
  • 00534e116c feat(i18n): language registry + UI-string catalog module BenStullsBets 2026-06-29 18:45:33 -07:00
  • 696f8f0901 docs(i18n): implementation plan for language dropdown BenStullsBets 2026-06-29 18:44:11 -07:00
  • 43370292e3 docs(i18n): localization + language-dropdown design spec BenStullsBets 2026-06-29 18:38:05 -07:00
  • eff43bd148 Merge pull request 'feat(sim): sky scale + auto-start experience + drop reef_hawaiian' (#29) from feat/sky-scale-expanded-pools into main benstull 2026-06-29 14:01:46 +00:00
  • 73d92b90d0 feat(sim): sky scale + auto-start experience + drop reef_hawaiian BenStullsBets 2026-06-29 06:56:25 -07:00
  • ed5ce09a3c add sessions/0026/SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--2026-06-27T18-48.md + replace placeholder/variant SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--INPROGRESS.md BenStullsBets 2026-06-27 18:50:09 -07:00
  • 108e6207ba Merge pull request 'feat(sim): scrub-driven altitude transitions' (#28) from session-0026 into main benstull 2026-06-28 01:46:54 +00:00
  • b710b259f2 update sessions/0026/SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--INPROGRESS.md BenStullsBets 2026-06-27 17:39:07 -07:00
  • 0e401c9a42 feat(sim): auto-scrub at constant per-altitude speed, 2x slower BenStullsBets 2026-06-27 17:36:45 -07:00
  • 7f99c3cdc4 update sessions/0026/SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--INPROGRESS.md BenStullsBets 2026-06-27 17:08:39 -07:00
  • 4b1d3afe7b fix(sim): cancel in-flight volume fades so audio isn't silenced after landing BenStullsBets 2026-06-27 17:07:52 -07:00
  • 153681a402 update sessions/0026/SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--INPROGRESS.md BenStullsBets 2026-06-27 17:03:10 -07:00
  • e862fb498b feat(sim): audio on/off toggle -> 0-10 level dial; first video lifts it to 3/10 BenStullsBets 2026-06-27 17:02:19 -07:00
  • ea530b3df6 fix(sim): double-buffer video so morph->loop handoff doesn't stall BenStullsBets 2026-06-27 16:58:08 -07:00
  • 80952d7b8e update sessions/0026/SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--INPROGRESS.md BenStullsBets 2026-06-27 16:33:42 -07:00
  • 0752746f7b fix(content): strip NOAA title card from reef_snapper base + re-bake its morphs BenStullsBets 2026-06-27 16:32:14 -07:00
  • 614411b5e4 fix(sim): loop base from morph-tail offset so landed morphs don't jitter BenStullsBets 2026-06-27 16:29:22 -07:00
  • a5e44ea9c7 update sessions/0026/SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--INPROGRESS.md BenStullsBets 2026-06-27 16:18:33 -07:00
  • 70fc9a46ab feat(pipeline): re-bake 154 morphs all-intra for smooth scrub seeking (LFS) BenStullsBets 2026-06-27 15:51:53 -07:00
  • f2f242a411 feat(pipeline): all-intra ffmpeg builders for seekable morph re-bake BenStullsBets 2026-06-27 15:50:31 -07:00
  • ad0a59ac04 update sessions/0026/SESSION-0026.0-TRANSCRIPT-2026-06-27T15-26--INPROGRESS.md BenStullsBets 2026-06-27 15:49:02 -07:00
  • 31a3fd733f test(e2e): scrub tier — currentTime + gains track dial, reverse, commit-lock, wheel BenStullsBets 2026-06-27 15:47:25 -07:00
  • 8458ab59eb feat(sim): wheel + label-tap auto-scrub then lock; retire discrete advance() BenStullsBets 2026-06-27 15:45:37 -07:00
  • 20f49e936a feat(sim): scrub engine — drag drives pos, seeks morph, commits+locks+re-rolls BenStullsBets 2026-06-27 15:43:48 -07:00
  • 0548e9a82b feat(sim): two-element audio crossfade keyed by scrub fraction BenStullsBets 2026-06-27 15:40:04 -07:00
  • 3dc3e3491f feat(sim): pure altitude-scrub math module + node unit suite BenStullsBets 2026-06-27 15:37:27 -07:00
  • 937461e3ba docs(plan): scrub-driven altitude transitions implementation plan BenStullsBets 2026-06-27 15:35:23 -07:00
  • cf74d2c70a claim human-experience-filter-art session 0026 (placeholder) + sessions.json entry BenStullsBets 2026-06-27 15:28:02 -07:00
  • 6781e40c94 add sessions/0024/SESSION-0024.0-TRANSCRIPT-2026-06-26T21-12--2026-06-27T15-23.md + replace placeholder/variant SESSION-0024.0-TRANSCRIPT-2026-06-26T21-12--INPROGRESS.md BenStullsBets 2026-06-27 15:25:28 -07:00
  • 66c65e78b8 update sessions/0024/SESSION-0024.0-TRANSCRIPT-2026-06-26T21-12--INPROGRESS.md BenStullsBets 2026-06-27 15:24:43 -07:00
  • 528fb5c438 Merge origin/main (session-history commits 0023-0025) into 0024 feature work BenStullsBets 2026-06-27 15:22:13 -07:00
  • c2cc503a9c Merge session-0024: altitude clip-pair morph + lock; scrub-driven design spec BenStullsBets 2026-06-27 15:21:31 -07:00
  • 972ad8832b spec(design): scrub-driven altitude transitions (knob position drives morph + audio) session-0024 BenStullsBets 2026-06-27 15:19:32 -07:00
  • 9b4884b466 feat(sim): sweep the Altitude needle in sync with the morph (no pre-move) BenStullsBets 2026-06-27 14:47:19 -07:00
  • d7e9fea1d3 feat(media): graduate used experience media into git via LFS (coast_birdrock transcoded) BenStullsBets 2026-06-27 14:21:55 -07:00
  • e8cd783258 test(e2e): Playwright tier asserts altitude lock + matching morph (in & out) BenStullsBets 2026-06-27 07:33:33 -07:00
  • 5382995931 feat(sim): play chosen morph, lock clip per altitude, drop secondary swap BenStullsBets 2026-06-27 07:15:03 -07:00
  • 7855718f74 feat(ring,api): pick destination clip then resolve matching chained morph BenStullsBets 2026-06-27 07:12:25 -07:00
  • e2b54dd0cc add sessions/0025/SESSION-0025.0-TRANSCRIPT-2026-06-27T06-05--2026-06-27T07-05.md + replace placeholder/variant SESSION-0025.0-TRANSCRIPT-2026-06-27T06-05--INPROGRESS.md BenStullsBets 2026-06-27 07:05:51 -07:00
  • cc469b5298 feat(pipeline): per-clip-pair morph manifest + member-pair baking (154 clips) BenStullsBets 2026-06-27 07:04:29 -07:00
  • 3b3d30e8e0 plan(0024): add zoom-out E2E case; resolve review-gate open items BenStullsBets 2026-06-27 06:17:42 -07:00
  • 441645ae7a plan(0024): altitude clip-pair morph + lock per altitude BenStullsBets 2026-06-27 06:09:06 -07:00
  • a581fa41ed claim human-experience-filter-art session 0025 (placeholder) + sessions.json entry BenStullsBets 2026-06-27 06:05:49 -07:00
  • afec816bb0 claim human-experience-filter-art session 0024 (placeholder) + sessions.json entry BenStullsBets 2026-06-26 21:13:13 -07:00
  • df869d6978 add sessions/0023/SESSION-0023.0-TRANSCRIPT-2026-06-26T09-05--2026-06-26T09-20.md + replace placeholder/variant SESSION-0023.0-TRANSCRIPT-2026-06-26T09-05--INPROGRESS.md BenStullsBets 2026-06-26 18:59:46 -07:00
  • 8aa5ee4019 claim human-experience-filter-art session 0023 (placeholder) + sessions.json entry BenStullsBets 2026-06-26 18:59:05 -07:00
  • 6427ab4a49 chore(audio): tuck audio diagnostics (status + native player) under Dev Mode BenStullsBets 2026-06-26 18:58:22 -07:00
  • 56d08d5c60 fix(video): client tolerates a stale server (old /api/alteration shape + payload) BenStullsBets 2026-06-26 13:46:49 -07:00
  • 97d2ddd573 fix(audio): client soundtrack fallback when /api/ring lacks audio (stale server) BenStullsBets 2026-06-26 13:42:12 -07:00
  • 56e352fe65 diag(audio): status shows resolved url + ring source + scale (pinpoints null soundtrack url) BenStullsBets 2026-06-26 13:34:16 -07:00
  • 2564168ac3 Merge origin/main (0022 transcript) into 0023 diagnostics BenStullsBets 2026-06-26 13:28:37 -07:00
  • deb7c34df9 Merge session-0023: audio diagnostics (status readout + native test player) BenStullsBets 2026-06-26 13:28:19 -07:00
  • 625d32c0f3 diag(audio): live audio-status readout + native test player; stop swallowing play errors session-0023 BenStullsBets 2026-06-26 13:28:17 -07:00
  • 58a6ee4644 add sessions/0022/SESSION-0022.0-TRANSCRIPT-2026-06-26T08-40--2026-06-26T08-50.md + replace placeholder/variant SESSION-0022.0-TRANSCRIPT-2026-06-26T08-40--INPROGRESS.md BenStullsBets 2026-06-26 13:20:59 -07:00
  • fd1da791bf claim human-experience-filter-art session 0022 (placeholder) + sessions.json entry BenStullsBets 2026-06-26 13:20:20 -07:00
  • 4ac39c9034 Merge session-0022: Loading Universe splash + Safari-safe single-element audio + video/audio coupling BenStullsBets 2026-06-26 13:19:39 -07:00
  • 30ec0c9c26 fix(audio): Loading Universe splash; single-element in-gesture audio (Safari); first-video-on couples audio session-0022 BenStullsBets 2026-06-26 13:19:15 -07:00
  • 3d46b96ecb add sessions/0021/SESSION-0021.0-TRANSCRIPT-2026-06-26T08-12--2026-06-26T08-20.md + replace placeholder/variant SESSION-0021.0-TRANSCRIPT-2026-06-26T08-12--INPROGRESS.md BenStullsBets 2026-06-26 12:57:38 -07:00
  • 3b19d3eb92 claim human-experience-filter-art session 0021 (placeholder) + sessions.json entry BenStullsBets 2026-06-26 12:56:57 -07:00
  • fddb6d65d4 Merge session-0021: off/on Audio+Video toggles; Safari autoplay + GPU video-off fixes BenStullsBets 2026-06-26 12:56:20 -07:00
  • 2722949805 fix(audio): off/on Audio + Video toggles; fix Safari autoplay + GPU video-off session-0021 BenStullsBets 2026-06-26 12:55:50 -07:00
  • d446238b79 add sessions/0020/SESSION-0020.0-TRANSCRIPT-2026-06-26T06-47--2026-06-26T07-58.md + replace placeholder/variant SESSION-0020.0-TRANSCRIPT-2026-06-26T06-47--INPROGRESS.md BenStullsBets 2026-06-26 08:06:49 -07:00
  • c51fdc422a update sessions/0020/SESSION-0020.0-TRANSCRIPT-2026-06-26T06-47--INPROGRESS.md BenStullsBets 2026-06-26 08:06:25 -07:00
  • aa76cd1c9f Merge session-0020: Audio + separated Visual/Audio controls BenStullsBets 2026-06-26 08:02:45 -07:00
  • c07067492b test(audio): Playwright E2E (3 tests, skip-if-no-browser) + client robustness session-0020 BenStullsBets 2026-06-26 08:00:44 -07:00
  • fd0aad6610 docs(audio): reframe control-surface spec content->visual+audio; record §12 decisions + roadmap BenStullsBets 2026-06-26 07:50:34 -07:00
  • 68f9d7342a feat(audio): client — split Content into Visual+Audio controls + audio crossfade layer BenStullsBets 2026-06-26 07:48:03 -07:00
  • 29c6d822bd feat(audio): Visual×Audio Python contract — resolver, controls, state, API BenStullsBets 2026-06-26 07:46:22 -07:00
  • 1f9b2a0bec feat(audio): Scale.audio field + per-scale soundtrack wiring through the manifest BenStullsBets 2026-06-26 07:42:40 -07:00
  • 39fb9108db feat(audio): ffmpeg production pass — loop/loudnorm builders, runner, build script BenStullsBets 2026-06-26 07:41:34 -07:00
  • 062a283de4 docs(plan): audio+video separated Visual/Audio controls implementation plan BenStullsBets 2026-06-26 07:01:06 -07:00
  • adc39fe648 claim human-experience-filter-art session 0020 (placeholder) + sessions.json entry BenStullsBets 2026-06-26 06:48:09 -07:00
  • 99a751cb46 Merge origin/main (session 0018/0019 transcripts) into audio-controls merge BenStullsBets 2026-06-26 06:39:28 -07:00