Self-healing browser QA
Delegate the build.
Keep the outcome in focus.
Code got cheap — agents write it on demand. What stays scarce is judgment: does the product do what you pictured? Scout is the gate that proves it, from one plain-language sentence, and re-checks itself when the UI moves. No test code to own, no human in the loop.
npm i -D @pcamarajr/scout - 0
- test files to own
- 1 sentence
- per scenario
- self-heal
- unattended
- verified
- partial
- failed
- blocked
Why this exists
The bottleneck moved.
// before
Code was the constraint
Shipping a feature meant weeks of engineering. Quality rode along with the people who wrote it.
// now
Code is the cheap part
Agents produce it on demand. The scarce thing is judgment — does the outcome match what you pictured?
// with scout
You hold the bar
State the expectation once, in plain language. Scout becomes the gate that proves the product still clears it — unattended.
The self-healing loop
Verified once. Healed on its own.
An agent confirms your intent in a real browser, then Scout records the path and replays it deterministically. When the UI drifts and that path breaks, Scout re-aims itself — re-verifies, re-records, hands you a partial to sign off. No human babysitting the suite. That unattended heal is what makes it safe to point at code an agent just wrote.
- 01
You write the intent
One sentence in plain English. No selectors, no waits, no fixtures to wire up by hand.
english → scenario - 02
Scout takes the first reading
The agent drives a real browser, confirms the intent holds, and records exactly what it did.
verified ~2s · 1 LLM pass - 03
It locks in a deterministic script
From then on, runs are pure replay — fast, free, and identical. No model in the loop.
replay · 0 tokens - 04
The UI drifts — scout re-focuses
When the script breaks because the page changed, the agent returns, re-verifies the intent, re-records, and hands you a partial to sign off. The loop closes back to 01.
partial self-heal → 01
The verdict system
One run, one verdict.
Every run resolves to a single verdict, each mapped to a stable exit code — the contract for scout report --check and dashboards.
| Verdict | Exit | What it means |
|---|---|---|
| verified | 0 | The flow held. A deterministic script was recorded or replayed. |
| partial | 0 | Scout healed a broken step on its own — review the new path before you trust it. |
| failed | 1 | A step no longer holds and could not be healed. The diff tells you which one. |
| blocked | 2 | Scout never got to observe — the app wouldn't start or the page wouldn't load. |
Stable across versions.