Clears the owner's hard visual gate: a real gemini-2.5-flash reply rendered through the actual app components (MessageBubble→Markdown/CodeBlock, DiffView) via Expo web export, screenshotted in a real browser. Per-surface verdict (all PASS, no app code changes needed): - markdown: heading+bullets, high contrast light & dark - code block: 430-char single line horizontally scrolls (scrolled-right reveals the line END), not truncated/wrapped - diff: fenced ```diff + native DiffView render +/- coloring and scroll Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1.6 KiB
1.6 KiB
Reply→Render Visual Check (release gate)
Visual proof that a real agent reply renders correctly in the app's chat surfaces: markdown, fenced code blocks (long lines horizontally scroll, not truncated), and the diff view.
How these were produced
- A real Gemini (
gemini-2.5-flash) reply was captured from a live local opencode server (provider@ai-sdk/google, nested{providerID,modelID}), asking for a string-reverse function with a ~430-char single-line comment plus a unified diff. - The reply was rendered through the actual app components —
MessageBubble→Markdown/CodeBlockandDiffView(the edit-tool diff surface) — via an Expo web export (react-native-web), served and screenshotted in a real Chromium browser.
Verdict — ALL PASS (no app bugs)
| Surface | Result |
|---|---|
| Markdown (heading, bullets), light + dark | PASS — high contrast both themes |
| Code block, 430-char single line | PASS — horizontally scrolls; far-right reveals the line END (…display purposes.), so not truncated/wrapped |
Diff (fenced ```diff and native DiffView), light + dark |
PASS — +/- coloring, horizontal scroll |
Key screenshots
05-faithful-light.png,06-faithful-dark.png— production-faithful render (isDark= OS scheme, exactly as the chat screen derives it).07-dark-top-viewport.png— dark markdown/code contrast close-up.08-dark-scrolled-right.png— long code line scrolled to its END (horizontal-scroll proof).02-all-surfaces.png/03-scrolled-right.png— all surfaces at scroll-left=0 vs scrolled-right.
The reply→render path is bug-free and release-ready.