{
  "started": "2026-10-07T14:32:04.510Z",
  "finished": "2026-10-07T14:32:10.983Z",
  "machine": "DESKTOP-OC01O77",
  "system": "10.0.28000",
  "runtime": "v24.19.0",
  "scope": "Local project handler + a controlled fake downloader. No Instagram fetch, production media request, browser download or external quota manipulation.",
  "sourceSha256": "3c537b7b4b35d54f2ddc0bec2b3cc79fad2bbe01714016d8f8984927f82edbad",
  "fixtureMethod": "Generate a 2-second black H.264 MP4 locally, then append a valid free box to control container size without changing decoded frames or duration. Padding is artificial, not a normal Instagram file.",
  "generateCommand": [
    "-y",
    "-f",
    "lavfi",
    "-i",
    "color=c=black:s=320x240:r=25:d=2",
    "-an",
    "-c:v",
    "libx264",
    "-pix_fmt",
    "yuv420p",
    "original.mp4"
  ],
  "fixtures": [
    {
      "bytes": 209715199,
      "duration": "00:00:02.00",
      "decodedFrameLedgerSha256": "320dcff9869e245bb0068707ec6a980feb2e6df9ba0493c4eb277198b4355455"
    },
    {
      "bytes": 209715200,
      "duration": "00:00:02.00",
      "decodedFrameLedgerSha256": "320dcff9869e245bb0068707ec6a980feb2e6df9ba0493c4eb277198b4355455"
    },
    {
      "bytes": 209715201,
      "duration": "00:00:02.00",
      "decodedFrameLedgerSha256": "320dcff9869e245bb0068707ec6a980feb2e6df9ba0493c4eb277198b4355455"
    },
    {
      "bytes": 104857600,
      "duration": "00:00:02.00",
      "decodedFrameLedgerSha256": "320dcff9869e245bb0068707ec6a980feb2e6df9ba0493c4eb277198b4355455"
    },
    {
      "bytes": 104857601,
      "duration": "00:00:02.00",
      "decodedFrameLedgerSha256": "320dcff9869e245bb0068707ec6a980feb2e6df9ba0493c4eb277198b4355455"
    }
  ],
  "results": [
    {
      "name": "below boundary",
      "fixtureBytes": 209715199,
      "outputs": 1,
      "status": 200,
      "contentLength": "209715199",
      "firstChunkBytes": 65536,
      "transferScope": "Response accepted, first chunk read, then stream cancelled locally; not a completed browser save.",
      "cleaned": true
    },
    {
      "name": "exact boundary",
      "fixtureBytes": 209715200,
      "outputs": 1,
      "status": 200,
      "contentLength": "209715200",
      "firstChunkBytes": 65536,
      "transferScope": "Response accepted, first chunk read, then stream cancelled locally; not a completed browser save.",
      "cleaned": true
    },
    {
      "name": "one byte over",
      "fixtureBytes": 209715201,
      "outputs": 1,
      "status": 500,
      "contentLength": null,
      "error": {
        "code": "FILE_TOO_LARGE",
        "message": "The downloaded media is over the 200 MB limit."
      },
      "cleaned": true
    },
    {
      "name": "two outputs at total boundary",
      "fixtureBytes": 104857600,
      "outputs": 2,
      "status": 200,
      "contentLength": "104857600",
      "firstChunkBytes": 65536,
      "transferScope": "Response accepted, first chunk read, then stream cancelled locally; not a completed browser save.",
      "cleaned": true
    },
    {
      "name": "two individually small outputs above total boundary",
      "fixtureBytes": 104857601,
      "outputs": 2,
      "status": 500,
      "contentLength": null,
      "error": {
        "code": "FILE_TOO_LARGE",
        "message": "The downloaded media is over the 200 MB limit."
      },
      "cleaned": true
    },
    {
      "name": "nonzero size-abort exit",
      "fixtureBytes": 209715201,
      "outputs": 0,
      "status": 500,
      "contentLength": null,
      "error": {
        "code": "FILE_TOO_LARGE",
        "message": "This file is over the 200 MB MVP limit. Please try a shorter video."
      },
      "cleaned": true
    },
    {
      "name": "zero size-abort exit without output",
      "fixtureBytes": 209715201,
      "outputs": 0,
      "status": 400,
      "contentLength": null,
      "error": {
        "code": "UNSUPPORTED_MEDIA",
        "message": "No downloadable reels media was returned. The post may be private, unavailable or unsupported."
      },
      "cleaned": true
    }
  ],
  "capturedSizeArgument": "--max-filesize 200M"
}