SCENEGOD/scenegod/web
type-two a15612eed0 [sync4] applyState camera/light hotfix, M4 verified (audio mux + graft), viseme/audio-UI round unlocked
- stage.js: applyState no longer skips camera/light entities (source
  'upload' but no bytes needed) — loaded scenes were silently losing the
  directing rig; PLAN schema adds source.type 'none' for the clean fix
- lane files: A session-3 + C M4 accepted; A→absorb hotfix + viseme lane
  (M4-A), B→audio rows + Web Audio sync + morphs track (M4-B), C complete

Verified: 6/6 entities restored on scene load, PiP 178x99 capped+visible,
lady 26/26 textured, audio-muxed render h264+aac 8.000s both streams,
graft_limb --selftest green under Blender 5.0.1, node+server suites green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-18 21:04:09 +10:00
..
dock.js [laneA] M2: PiP + cameras/lights toolbar, eventized clip drops, onChange-on-add 2026-07-18 20:14:52 +10:00
index.html [sync1] wire TimelineUI to real Stage, null-mixer guard, M2 unlock + orchestrator updates 2026-07-18 18:36:16 +10:00
render.js [laneC] M4: audio mux, graft_limb.py, MODELBEAST proxy 2026-07-18 20:47:31 +10:00
room3d.js [laneA] M3-polish: PiP cap+swap, spec-gloss GLB fix (lady renders textured) 2026-07-18 20:49:22 +10:00
stage.js [sync4] applyState camera/light hotfix, M4 verified (audio mux + graft), viseme/audio-UI round unlocked 2026-07-18 21:04:09 +10:00
stagestub.js [laneB] M2 session 3: absorb _mirror + tests, setDuration, snap-step, param capture 2026-07-18 20:41:39 +10:00
style.css [laneA] M3-polish: PiP cap+swap, spec-gloss GLB fix (lady renders textured) 2026-07-18 20:49:22 +10:00
timeline_test.mjs [laneB] M2 session 3: absorb _mirror + tests, setDuration, snap-step, param capture 2026-07-18 20:41:39 +10:00
timeline.js [laneB] M2 session 3: absorb _mirror + tests, setDuration, snap-step, param capture 2026-07-18 20:41:39 +10:00
tlui.js [laneB] M2 session 3: absorb _mirror + tests, setDuration, snap-step, param capture 2026-07-18 20:41:39 +10:00