Runs & replay
A run executes one immutable suite revision against one browser in one environment, and records what happened step by step. When it fails it does not just say “failed” — it names the earliest evidence-backed cause.

Deterministic first
Replay always attempts the local path first: semantic locators walked in order, explicit waits, recorded postconditions, and structural fallbacks. A run that finishes this way costs nothing and is still recorded in the AI cost ledger as an explicit zero-cost transaction, so the ledger is a complete record rather than a list of the expensive runs only.
Replay modes
| Mode | Behaviour |
|---|---|
| Deterministic | Local recovery only. No provider is contacted under any circumstances. |
| Adaptive | Deterministic recovery is attempted first. Only once it is exhausted may the run ask the configured provider to select one redacted, visible candidate — and every attempt and its cost lands in the ledger. |
First material divergence
When a replay stops, WeftKit distinguishes the cause from the symptoms. The run header states the first material divergence with its category — for example a network failure — and the sentence that explains it in product terms, such as an API returning 503 before the required heading appeared. Later symptoms stay in the report, but they are not presented as the reason.
The run sheet
Each step in the sheet carries its outcome, action type, the intent recorded for it, its elapsed time, and the number of attempts made. A step that needed more than one attempt says so, which is usually the first clue that a locator is drifting even when the run passed.
Step outcomes
- Passed — the step executed deterministically and its assertions held.
- Passed with repair — a safe candidate was confirmed after deterministic recovery was exhausted. Marked visibly differently from a clean pass, never merged into the pass count silently.
- Failed — the step halted the run and the failure context was captured.
Declared coverage limits
Every run states what it did not prove. Coverage gaps — such as native browser-window video or an artifact store that is not yet encrypted — are attached to the run itself, so a green result never quietly implies more than it verified.