{"date":"2026-09-26","reviewer":"Codex visual review; no independent human review","scope":"64 selected source timestamps and both actual exports (128 output frames), in five windows across four scenarios. Other scenarios have playable evidence and export checks, not exhaustive face labels.","selection":"The same 64 diagnostic timestamps selected before the app update, reviewed again in the new actual exports. This is a regression check on development footage, not an independent accuracy sample.","frameIndex":"Zero-based at 24 fps; start inclusive, end exclusive; crops use original 1280×720 coordinates [left,top,right,bottom].","extraction":"FFmpeg selects decoded frames by integer frame index. Contact sheets crop the same rectangle from source and both actual exports; no detector rerendering.","criterion":"Covered means all visible facial features are obscured. Missing or partial masks count as missed. Hair/back-of-head with no face is ineligible. Ambiguous fragments are uncertain. Only the main subject in each selected crop is scored; background false positives are not exhaustively annotated.","windows":[{"clip":"head-turns","startFrame":72,"endFrameExclusive":88,"crop":[500,0,1000,450],"frames":[{"frame":72,"fast":"covered","thorough":"covered"},{"frame":73,"fast":"covered","thorough":"covered"},{"frame":74,"fast":"covered","thorough":"covered"},{"frame":75,"fast":"uncertain","thorough":"uncertain"},{"frame":76,"fast":"ineligible","thorough":"ineligible"},{"frame":77,"fast":"ineligible","thorough":"ineligible"},{"frame":78,"fast":"ineligible","thorough":"ineligible"},{"frame":79,"fast":"ineligible","thorough":"ineligible"},{"frame":80,"fast":"ineligible","thorough":"ineligible"},{"frame":81,"fast":"ineligible","thorough":"ineligible"},{"frame":82,"fast":"ineligible","thorough":"ineligible"},{"frame":83,"fast":"ineligible","thorough":"ineligible"},{"frame":84,"fast":"covered","thorough":"covered"},{"frame":85,"fast":"covered","thorough":"covered"},{"frame":86,"fast":"covered","thorough":"covered"},{"frame":87,"fast":"covered","thorough":"covered"}]},{"clip":"party","startFrame":0,"endFrameExclusive":8,"crop":[150,0,1100,720],"frames":[{"frame":0,"fast":"covered","thorough":"covered"},{"frame":1,"fast":"covered","thorough":"covered"},{"frame":2,"fast":"covered","thorough":"covered"},{"frame":3,"fast":"covered","thorough":"covered"},{"frame":4,"fast":"covered","thorough":"covered"},{"frame":5,"fast":"covered","thorough":"covered"},{"frame":6,"fast":"covered","thorough":"covered"},{"frame":7,"fast":"covered","thorough":"covered"}]},{"clip":"party","startFrame":58,"endFrameExclusive":78,"crop":[150,0,1100,720],"frames":[{"frame":58,"fast":"missed","thorough":"covered"},{"frame":59,"fast":"missed","thorough":"covered"},{"frame":60,"fast":"missed","thorough":"covered"},{"frame":61,"fast":"missed","thorough":"covered"},{"frame":62,"fast":"missed","thorough":"covered"},{"frame":63,"fast":"missed","thorough":"covered"},{"frame":64,"fast":"missed","thorough":"covered"},{"frame":65,"fast":"covered","thorough":"covered"},{"frame":66,"fast":"covered","thorough":"covered"},{"frame":67,"fast":"covered","thorough":"covered"},{"frame":68,"fast":"covered","thorough":"covered"},{"frame":69,"fast":"covered","thorough":"covered"},{"frame":70,"fast":"missed","thorough":"covered"},{"frame":71,"fast":"missed","thorough":"covered"},{"frame":72,"fast":"missed","thorough":"covered"},{"frame":73,"fast":"missed","thorough":"covered"},{"frame":74,"fast":"covered","thorough":"covered"},{"frame":75,"fast":"covered","thorough":"covered"},{"frame":76,"fast":"covered","thorough":"covered"},{"frame":77,"fast":"covered","thorough":"covered"}]},{"clip":"party-2x","startFrame":28,"endFrameExclusive":40,"crop":[150,0,1100,720],"frames":[{"frame":28,"fast":"covered","thorough":"covered"},{"frame":29,"fast":"covered","thorough":"covered"},{"frame":30,"fast":"missed","thorough":"covered"},{"frame":31,"fast":"missed","thorough":"covered"},{"frame":32,"fast":"covered","thorough":"covered"},{"frame":33,"fast":"covered","thorough":"covered"},{"frame":34,"fast":"missed","thorough":"covered"},{"frame":35,"fast":"missed","thorough":"covered"},{"frame":36,"fast":"missed","thorough":"covered"},{"frame":37,"fast":"covered","thorough":"covered"},{"frame":38,"fast":"covered","thorough":"covered"},{"frame":39,"fast":"covered","thorough":"covered"}]},{"clip":"breakdance","startFrame":112,"endFrameExclusive":120,"crop":[480,150,850,450],"frames":[{"frame":112,"fast":"ineligible","thorough":"ineligible"},{"frame":113,"fast":"uncertain","thorough":"uncertain"},{"frame":114,"fast":"uncertain","thorough":"uncertain"},{"frame":115,"fast":"uncertain","thorough":"uncertain"},{"frame":116,"fast":"covered","thorough":"covered"},{"frame":117,"fast":"covered","thorough":"covered"},{"frame":118,"fast":"covered","thorough":"covered"},{"frame":119,"fast":"covered","thorough":"covered"}]}],"findings":[{"clip":"head-turns","mode":"both","startFrame":84,"endFrameExclusive":85,"status":"fixed-in-reviewed-frame","confirmedUncoveredFrames":0,"description":"The face reappearing through hair at 3.500 seconds is now covered in both actual exports. Both also cover frames 85–87. Thorough still has its earlier unnecessary torso mask."},{"clip":"party","mode":"fast","startFrame":0,"endFrameExclusive":1,"status":"fixed-in-reviewed-frame","confirmedUncoveredFrames":0,"description":"Fast now covers the first frame; Thorough remains covered."},{"clip":"party","mode":"fast","startFrame":58,"endFrameExclusive":65,"status":"remaining-miss","confirmedUncoveredFrames":7,"durationSeconds":0.2916666666666667,"recoveredFrame":65,"otherMode":"thorough","otherModeCovered":true,"description":"The former eight-frame gap is now seven frames. Thorough covers the entire reviewed interval."},{"clip":"party","mode":"fast","startFrame":70,"endFrameExclusive":74,"status":"remaining-miss","confirmedUncoveredFrames":4,"durationSeconds":0.16666666666666666,"recoveredFrame":74,"otherMode":"thorough","otherModeCovered":true,"description":"The former five-frame gap is now four frames. Thorough covers the entire reviewed interval."},{"clip":"party-2x","mode":"fast","startFrame":30,"endFrameExclusive":32,"status":"remaining-miss","confirmedUncoveredFrames":2,"durationSeconds":0.08333333333333333,"recoveredFrame":32,"otherMode":"thorough","otherModeCovered":true,"description":"Lagging masks still leave facial features visible on frames 30–31."},{"clip":"party-2x","mode":"fast","startFrame":34,"endFrameExclusive":37,"status":"remaining-miss","confirmedUncoveredFrames":3,"durationSeconds":0.125,"recoveredFrame":37,"otherMode":"thorough","otherModeCovered":true,"description":"Partial coverage on frames 34–35, no mask on 36, and added coverage on 37. Thorough covers all four."}],"publicParagraphs":["Both modes now cover the reappearing face at 3.500 seconds in the head-turn clip. Fast also covers the previously missed first frame of the close-up party clip.","Thorough covers the reviewed head-roll and 2×-speed failure intervals. Fast still misses seven consecutive frames from 2.417 to 2.708 seconds and four from 2.917 to 3.083 seconds in the party clip (ends exclusive). At 2× speed, partial or missing Fast masks remain on frames 30–31 and 34–36.","We visually reviewed the same 64 selected source timestamps and 128 output frames again. Existing mask coordinates and tracking labels were unchanged across all 3,024 analyzed frames; the repair only added preceding-frame masks. This does not establish coverage of every face in the unreviewed frames."],"evidenceFiles":["window-breakdance-112-115.jpg","window-breakdance-116-119.jpg","window-head-turns-072-075.jpg","window-head-turns-076-079.jpg","window-head-turns-080-083.jpg","window-head-turns-084-087.jpg","window-party-000-003.jpg","window-party-004-007.jpg","window-party-058-061.jpg","window-party-062-065.jpg","window-party-066-069.jpg","window-party-070-073.jpg","window-party-074-077.jpg","window-party-2x-028-031.jpg","window-party-2x-032-035.jpg","window-party-2x-036-039.jpg"],"observations":["Thorough retains an unnecessary torso mask in the head-turn reappearance frame.","At 2× speed, a nonzero Fast mask count still does not guarantee face coverage.","The repair can add unnecessary masks; false positives were not exhaustively relabeled."],"limitations":["No overall motion coverage percentage.","These are correlated short stock excerpts, including three synthetic 2× variants.","Neither re-identification resistance nor demographic fairness is measured.","No claim that unreviewed frames or cases pass face coverage.","This same corpus guided the fix; there is no independent holdout validation."],"status":"current-motion-update"}