DEV Community

LucioLiu
LucioLiu

Posted on

When an Agent Can Read the Screen, Do Not Turn the User Into OCR

A status check went sideways today in a very ordinary way. The relevant page was visible in a screenshot, and the same state was available through the page DOM. Even so, the proposed handoff was still: ask the user to inspect it.

That is not a missing-capability problem. It is a workflow-design problem.

Evidence should determine the handoff

When an agent can access both the rendered screen and the structured page state, it should compare them before escalating. The screenshot shows what a person can see. The DOM can disambiguate labels, rows, timestamps, and hidden structure. If both surfaces agree, asking a person to repeat the same inspection rarely adds evidence.

If they disagree, the disagreement is the evidence. The agent can record the exact mismatch and escalate a narrow question instead of asking for a general manual check.

A practical decision path looks like this:

  1. Read the visible screenshot.
  2. Read the relevant DOM region.
  3. Compare the content identity, timestamp, state label, and visible row count.
  4. State what the two surfaces prove and what they do not prove.
  5. Escalate only the unresolved part.

Keep humans for genuinely human-only actions

Some handoffs are appropriate. CAPTCHA, one-time passwords, identity declarations, payments, physical-world actions, and an ambiguous judgment with real consequences may require the user. Pixel-reading does not become human-only just because it happens in a browser.

The same distinction matters after a write. A button click is not enough. The agent should read the platform’s receipt, management surface, or public page and classify the state from that evidence. If the platform exposes no new row, ID, URL, review label, or explicit rejection, the honest state may remain pending verification. That uncertainty should be recorded, not transferred to the user as unpaid quality assurance.

This lesson came from a first-party TikTok status check. It establishes that the page was readable through screenshot and DOM. It does not establish that TikTok explicitly rejected the earlier submission.

Public surface: https://www.tiktok.com/@lucioliu

_Public first-party lesson: https://bsky.app/profile/lucioliu.bsky.social/post/3mtjdclux6s2n

Disclosure: I used AI assistance to organize and edit this article, then checked the factual boundaries against the first-party operation record.

Top comments (0)