OpenCode2 image verification at local head3a3ab2eeedc6a4a39a1f89dba53cff62529f819c Original https://github.com/pingdotgg/t3code/pull/16145 Merged main baselineab6be13d438abeace7617e8d789d59cf2e880f42, headless Linux, Node24. All original contributor commits and credit retained; ordinary fast-forward fork push planned, no history rewrite. Main100 adapter tests -> contributor103 -> rewritten image suite102 -> stale image steer regression103 -> held Stop interleaving104. One existing adapter test file, existing replay fixture extended only. Removed exported helper API and three original helper/happy-path tests. Real serialized managed/external prompts cover normal and steer supported local PNG/WebP, missing/unsupported files, path text and escaped file URLs. Main production fails missing native files in managed test; external compatibility passes. Stale-prompt test red before fix sent2 prompts instead of1. Held-Stop variant red before fix completed full replay but observed[completed,completed] instead of[interrupted,completed]. Current full file104pass. Scope provider/servertypecheck, lint, fmt and diff checks pass; existing suggestions only, no errors. Fresh complete parallel review round3: Both Sol and Opus found no blockers. Opus withdrew its round2 keep-as-is objection after tracing the discarded-steer follow-up path.. Earlier clean round1 missed asynchronous attachment gap; Macroscope found stale send after Stop; round2 Sol exposed held completed end while Stop pending. Both substantive findings now have meaningful red/green evidence. Cleanup rechecks turn identity/interruption after lookup, removes never-sent pending/stranded ID, rejects through existing protocol error, and converts held end to interrupted for active pending Stop before settlement. Exact filesystem/Stop overlaps are replay-tested, not claimed as browser timing proof. Latest-head CI/bot gates remain after publication. Current-head actual isolated T3 web app with native OpenCode2.0.28, isolated XDG state, existing disposable thread. Native model catalog refreshed immediately before calls: opencode/mimo-v2.6-flash-free enabled, image-capable, input/output/cache read/cache write all0. No paid account invoked. Normal composer redPNG -> Red, terminal21s. Ordinary no-edit shell-wait turn -> bluePNG submitted withCtrlEnter while Working -> UI marks Steer, model Blue, terminal26s, submit restored. Screenshots inspected and contain no credentials. The attachment picker was exercised, not literal clipboard paste. Captures demonstrate runtime behavior, not a frontend redesign. All owned app/probe servers stopped using tracked sessions/PIDs. External-server text-only compatibility is replay-tested, not live. macOS, Windows file URLs, iOS, Android, Electron desktop, remote/relay and tunnel clients unverified. Shared server adapter and unchanged wire contract serve those clients. Attachment ownership/lifetime after existence lookup and inline external-server image delivery remain out of scope. Nothing merged.