Files
Vance Ingalls 93ce61aba2 fix(engine): static dedup drawElement-path only + anchor-based verification
Two dedup-safety fixes found via full-stack corpus eval:

1. Arm dedup ONLY on the drawElement path (armStaticDedup, called after gates pass
   + before canvas injection). Gated/screenshot comps are gated precisely because
   they carry compositor animation (stacked fades, 3D, flashes) the static predictor
   mispredicts and a sparse backstop can't catch — dedup there froze frames. The
   drawElement path animates via GSAP transforms the predictor handles cleanly.

2. Backstop verifies against the ANCHOR each run reuses, not the predecessor. Dedup
   chains a whole static run back to one buffer; a slow sub-quantization drift is
   byte-identical frame-to-frame (passes f-vs-(f-1)) yet drifts far from the anchor by
   the run end. Now captures each run's anchor once and compares the run END + midpoint
   to it; any drift disables dedup whole-comp.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 04:14:47 -07:00
..
2026-06-15 02:33:31 -04:00
2026-06-15 02:33:31 -04:00
2026-06-15 02:33:31 -04:00
2026-06-15 02:33:31 -04:00
2026-06-15 02:33:31 -04:00