DEV Community

Pascal Matthiesen
Pascal Matthiesen

Posted on

My Agent Swore It Fixed the UI. The Button Disagreed. 🫠

Hey tech adventurers! πŸ‘‹

My coding agent told me it fixed the UI. Tests green. Lint green. A very confident little summary with a βœ… at the end.

The button was off-screen. 🫠

So I built Pawprint. Agents now have to bring pics.

Green checks can't see πŸ‘€

Here's the thing nobody puts on the slide. Your CI is blind. It knows the function returns true. It has no idea the modal now covers the whole checkout page, or that "dark mode fix" means white text on a white background.

For backend work, tests get you most of the way. For anything a human actually looks at, the only real proof is... looking at it.

And I'm not pulling every branch, running the app, and clicking around to check an agent's homework. That was supposed to be the agent's job. That's the whole deal. 🀝

So the agent shows its work πŸ“Έ

With Pawprint, the agent publishes evidence for the change and links it in the PR. Each publish has:

  • a description of what changed πŸ“
  • the list of changes πŸ“‹
  • before and after comparisons, side by side πŸ”€
  • screenshots and video when a still frame isn't enough 🎬

You open the PR, click the pawprint, and know in about ten seconds whether "fixed" means fixed. No checkout. No npm run dev. No vibes.

Your staging app is not public content πŸ”

Here's the part I cared about most. Agents screenshot everything, and everything includes your unreleased app.

So the evidence sits behind GitHub sign-in. Share it with your org and the people in it can see it. Leave the org out and only you can. GitHub itself just shows a generic Pawprint card, so the internet sees a dog and nothing else. πŸ•

You can make a page public when you actually want to show it off. You can't do it by accident.

"Done" should look like something 🧾

I keep saying it, and I'll keep saying it: agents love the word "done." Done is cheap. Done is a token.

Evidence is expensive in the right way. It's the agent proving it actually opened the thing it changed. And it's the only kind of review that still scales when agents are opening more PRs than you have hours.

Pawprint doesn't replace reviewers. It just means that when someone does look, there's something to look at.

Here's an example evidence page if you want to see what a receipt looks like.

P.S. Yes, everything I build is named after my dog. No, I will not be taking questions. 🐾

Top comments (1)

Collapse
 
bickov profile image
Alex @Bickov •

Screenshots handed to an agent get squeezed way harder than people expect before the model even sees them. Claude caps the long edge at 2576px on 4.7 and later, 1568px on older models. A typical scrolling capture, say 2540 by 18410, lands at 355x2576 on current Claude. Body text comes out around 2.2px tall.

On older models it's worse, closer to 1.4px. Basically unreadable.

So the pixel evidence from a long page can already be gone before Pawprint or any PR pipeline adds its own compression on top. I ran into this exact thing building SlimSnap.ai, my own tool so take that with a grain of salt, which hands agents structured capture data instead of a flat image for that reason. Worth checking what resolution actually survives before trusting a screenshot as proof of anything.