{
  "pr": "https://github.com/pingdotgg/t3code/pull/9727",
  "batch": "composer-chat-17b",
  "head": "a791ed7e682fa8394a70a3418668c40cc60f5d0e",
  "base": "02b794c78211a4cc35ec230a21f042698109b5ef",
  "verification": "Headless Linux source execution; no native-device or browser evidence",
  "fixture": {
    "type": "decodable 1px PNG padded with private ancillary chunk",
    "bytes": 8388608,
    "sha256": "f15c18c68d1a062a68348b934ae9e87a74b722487f5fa45ed5a86843535a1a5e"
  },
  "before": {
    "source": "actual main writer",
    "draftJsonBytes": 22369916,
    "inlineBytesMatch": true
  },
  "after": {
    "source": "integrated candidate writer",
    "draftJsonBytes": 528,
    "queueJsonBytes": 656,
    "maxReadChunk": 65536,
    "checks": [
      "clipboard PNG bytes round-trip",
      "source draft decoder accepts metadata-only JSON",
      "source queue encoder writes v4 and decoder round-trips",
      "source inline send reader retains file during blocked async read",
      "source preview retains file until dispose",
      "unretained file is deleted",
      "picked GIF original matches",
      "native-pasted PNG persists before temporary source deletion",
      "share GIF copy survives temporary source deletion",
      "unknown-size content copy awaits 64 KiB chunks",
      "oversized streamed copy removes partial file"
    ]
  },
  "tests": {
    "preservedCandidatePassed": 283,
    "integratedPassed": 284,
    "failed": 0,
    "files": [
      {
        "file": "src/lib/composerAttachmentFiles.test.ts",
        "passed": 12
      },
      {
        "file": "src/lib/composerFiles.test.ts",
        "passed": 46
      },
      {
        "file": "src/lib/composerImages.test.ts",
        "passed": 18
      },
      {
        "file": "src/lib/filePreview.test.ts",
        "passed": 7
      },
      {
        "file": "src/lib/filePreviewGallery.test.ts",
        "passed": 4
      },
      {
        "file": "src/lib/localAttachmentPreview.test.ts",
        "passed": 9
      },
      {
        "file": "src/state/composer-attachment-uploads.test.ts",
        "passed": 7
      },
      {
        "file": "src/state/thread-outbox-removal.test.ts",
        "passed": 7
      },
      {
        "file": "src/state/thread-outbox.test.ts",
        "passed": 45
      },
      {
        "file": "src/state/use-composer-drafts.test.ts",
        "passed": 88
      },
      {
        "file": "src/features/sharing/incoming-share-inbox.test.ts",
        "passed": 11
      },
      {
        "file": "src/features/sharing/incoming-share-model.test.ts",
        "passed": 28
      },
      {
        "file": "src/features/sharing/incoming-share-storage.test.ts",
        "passed": 2
      }
    ],
    "note": "One additional existing draft test arrived from main. No new tests authored in this resume."
  },
  "checks": {
    "mobileTypecheck": "passed",
    "targetedLint": "passed, zero errors; 26 warnings on unchanged main lines",
    "format": "passed",
    "diffWhitespace": "passed"
  },
  "limitations": [
    "Expo native APIs are replaced by Node fs",
    "native rendering/HEIC, media pickers, clipboard bridge and navigation were not executed",
    "no EAS/OTA baseline evidence",
    "No jsdom tests or scratch lifecycle harness ran in this batch.",
    "Review-sheet native timing, queued-thumbnail UI and actual iOS container move were not exercised.",
    "No iOS, Android, macOS, Windows or Electron desktop client was exercised.",
    "Exact delivered iOS/Android embedded guards/readers, build IDs/revisions/fingerprints and OTA rollback remain human merge/deployment verification."
  ]
}
