[
  {
    "region_id": "r001",
    "status": "pass",
    "check_results": [
      {
        "check": "text_content",
        "passed": true,
        "message": "text matches '10 Squats'"
      }
    ],
    "orig_url": "/data/p2/7-render/en/regression_frames/original/orig_r001.jpg",
    "trans_url": "/data/p2/7-render/en/regression_frames/translated/trans_r001.jpg",
    "bbox": {
      "x": 562,
      "y": 864,
      "w": 1274,
      "h": 192
    },
    "summary": "Exercise counter '10 Squats'. OCR missed leading '1' — override corrects '0 Squats' to '10 Squats'."
  },
  {
    "region_id": "r019",
    "status": "pass",
    "check_results": [
      {
        "check": "bbox_centered",
        "passed": true,
        "message": "x=1193, expected=1193, offset=0px"
      },
      {
        "check": "frame_bounds",
        "passed": true,
        "message": ""
      }
    ],
    "orig_url": "/data/p2/7-render/en/regression_frames/original/orig_r019.jpg",
    "trans_url": "/data/p2/7-render/en/regression_frames/translated/trans_r019.jpg",
    "bbox": {
      "x": 514,
      "y": 890,
      "w": 1358,
      "h": 160
    },
    "summary": "Off-center coaching '4回ワイドスクワット'→'4 Wide Squats'. Center on bbox, right-align only if overflow."
  },
  {
    "region_id": "r022",
    "status": "pass",
    "check_results": [
      {
        "check": "concurrent_text_contains",
        "passed": true,
        "message": "matched concurrent text: '16 Half Squats (arms forward)'"
      },
      {
        "check": "within_bounds",
        "passed": true,
        "message": "text block [886..1054] within bbox [890..1050]"
      },
      {
        "check": "within_bbox_x",
        "passed": true,
        "message": "text within bbox x [92..1816]"
      }
    ],
    "orig_url": "/data/p2/7-render/en/regression_frames/original/orig_r022.jpg",
    "trans_url": "/data/p2/7-render/en/regression_frames/translated/trans_r022.jpg",
    "bbox": {
      "x": 92,
      "y": 890,
      "w": 1724,
      "h": 160
    },
    "summary": "During the 'half squat' cue, the concurrent right-side exercise counter should also say half squat. Style uses render_scale=1.2 so text intentionally overflows bbox by ~50px."
  },
  {
    "region_id": "r025",
    "status": "pass",
    "check_results": [
      {
        "check": "not_in_ass",
        "passed": true,
        "message": "not in ASS (passthrough)"
      }
    ],
    "orig_url": "/data/p2/7-render/en/regression_frames/original/orig_r025.jpg",
    "trans_url": "/data/p2/7-render/en/regression_frames/translated/trans_r025.jpg",
    "bbox": {
      "x": 1590,
      "y": 244,
      "w": 222,
      "h": 48
    },
    "summary": "Passthrough: countdown '8'. Burned as pixel crop from sub.mp4."
  }
]