Yash Khoury — Index 2026
pearl
000
Exhibit 06 — Agent tooling / browser verification← All work

Verify AI browser agents and Playwright workflows with explicit assertions, evidence hashes, HTML reports and CI-ready pass/fail results.

Stack
TypeScript · Playwright
Year
2026
Last updated
Source ↗
BrowserProof: iridescent glass study

Why it exists

Autonomous browser runs can confidently report success while the wrong page is open, a save never happened, or the attached screenshot does not prove the requested outcome. Execution and verification need to be separate concerns.

How it’s built

BrowserProof is a small verification layer for AI browser agents and Playwright workflows that turns “done” into an observable, testable browser state.

  1. Define browser success as explicit URL, title, text, selector and value assertions.
  2. Capture the final rendered state instead of trusting an agent-generated summary.
  3. Hash screenshot evidence so the report carries a stable artifact fingerprint.
  4. Return a machine-readable pass/fail result that can gate CI or a larger autonomous workflow.

Capabilities

URL and title assertionsText and selector verificationInput-value checksPlaywright executionFinal screenshot captureSHA-256 evidence hashJSON and HTML reportsCI-ready exit codes

Principles

Proof after execution
Observable state over agent confidence
Portable artifacts over opaque logs
Fail loudly when the browser does not match the claim

Questions

Is BrowserProof another browser agent?

No. It is deliberately downstream of the agent. The agent or Playwright flow acts; BrowserProof verifies the resulting browser state and emits evidence.

What can it verify?

URL and title conditions, required text, visible selectors and input values, then JSON and HTML proof reports.

Can it gate CI?

Yes. Failed assertions produce a failed proof and a non-zero process exit code.

Next exhibit — 07
RunLedger →