{"n":1,"t":"13:27","what":"installed remotion 4.0.538 + react 18.3.1 into build/cache/deps; 24-frame test render with Playwright chrome-headless-shell 1243","saw":"real Remotion renders here; no need to rebuild its primitives by hand"}
{"n":2,"t":"13:40","what":"first stills: capsule dog, porch, façade, person; camera (5.9,1.45,7.4)","saw":"reads as a dusk porch; dog small and hyena-like (high rump, thin legs); light tint washes the dog tan; tree line looked like mountains; door leaf hid the room when open"}
{"n":3,"t":"13:50","what":"refusal turned away from camera (180→300 via 270)","saw":"mid-turn frames 86-92 are a rear-view blob with the low head hidden: fails the turn lesson. Changed: turn through the camera side (180→5 via 90), head leading by 40-50°"}
{"n":4,"t":"13:55","what":"turn sheet 76-216 after change","saw":"front views of the face during both turns read as a dog; muzzle looked like an anteater tube -> rebuilt head: crown, tan cheeks, dark upper muzzle, pips, bigger ears"}
{"n":5,"t":"14:00","what":"door rehung on the near jamb; room furnished on the far wall; wall moved to X 0.34-0.50; dog line Z -0.12 -> -0.30","saw":"head inside the door frame was hidden by the near jamb at Z -0.12; at -0.30 the head is visible in the lit opening"}
{"n":6,"t":"14:22","what":"full film render 1 (static wide camera), 27 min","saw":"whole film plays; second half the dog is ~130 px long at the door: lying and looking in too small to read"}
{"n":7,"t":"14:25","what":"push-in by dolly to a near camera","saw":"first try: no near-plane clipping, porch fascia folded over the frame (brown screen); after clipping, the near camera saw the dog from behind and the head hid behind the wall. Rejected"}
{"n":8,"t":"14:28","what":"push-in by zoom along the wide camera's line (focal 1500->2550, small dolly) 15.4-23.6 s","saw":"head visible inside the lit doorway at 650 (look in), back of the head toward us; kept"}
{"n":9,"t":"14:40","what":"matte measurement pass + measure.py","saw":"lie onset +0.33..+0.71 s (height included neck and head), refuse->watch +0.25 (lying facing the door was labelled lie_down), approach head below back 21% (screen perspective puts a far head high)"}
{"n":10,"t":"14:50","what":"neck gets its own matte colour; body-only centroid for x_world_measured; lie_down only near the sill; head lower in approach (phi 0.45 -> -44°), ears carried lower with the head","saw":"check_handmade ALL OK; onsets 0.00, +0.08, +0.17, 0.00, -0.04, 0.00, look-in +0.10; head below back 94.5% of approach (fails only 14.71-15.0 and 22.29-22.42)"}
{"n":11,"t":"14:59","what":"film render 2","saw":"browser console full of 'path d: Expected number NaN': a code comment had swallowed the ear and tail fields of the manifest; the tail was missing in every frame. Added a manifest contract check (solve.ts) and a render guard that fails on any browser error"}
{"n":12,"t":"15:07","what":"end card said 31 capsules; counted 34 from dogParts → corrected before film render 3","saw":"claim now matches the rig"}
{"n":13,"t":"15:24","what":"film render 3, full-resolution still at 28 s","saw":"in the push-in the doorway hole and its clip path were stale (projected once at module load with the t=0 camera): the dog's head was cut off by a phantom wall. Made the opening paths per-frame functions; the head now reads inside the lit doorway, body and tail outside"}
{"n":14,"t":"15:40","what":"film render 4 + repro test (10 frames, two fresh bundles)","saw":"2 of 10 frames differed by 1 level on ~30 px/row below y=509 with gl=swangle. Hypothesis 1 (feGaussianBlur) rejected: removing every blur still differed. Hypothesis 2 (GL backend): gl=swiftshader → 10/10 equal in two separate runs and equal across runs. Made swiftshader the render contract and re-rendered matte, film and stills"}
{"n":15,"t":"15:46","what":"final: matte + measure + film + stills under gl=swiftshader; repro; check_handmade","saw":"ALL OK; onsets 0.000, +0.084, +0.166, 0.000, -0.041, +0.041, look-in +0.100; head below back 100% of approach; repro 10/10 equal; film 912 frames 38.016 s 3.97 MB; looked at contact sheets of the whole film and full-size stills"}
