Wait on PENDING. Retry the check on UNVERIFIABLE. Retry the action with the first idempotency key on FAILED. Stop and ask a person on CONTRADICTED. The runtime never performs the correction.

verdictwhat the agent may do nextwhy
PENDINGWait. Do not retry the action.The action can still succeed. A retry refunds twice.
UNVERIFIABLERetry the check. Do not retry the action.The action is not in doubt. The evidence has not arrived.
FAILEDRetry the action with the first idempotency key.The provider refused. The key stops a double effect.
CONTRADICTEDStop. Ask a person.Reality already differs from the promise.

The verifier never acts.

Provely returns a directive and nothing else. Your host carries it out: a Claude Code hook, a framework node or the CI gate. A verifier that acts is no longer independent.

Every directive carries the idempotency key of the first attempt and a retry budget. An executor that reaches the budget stops and asks a person.

The directive is also feedback. It names the step with no evidence and the evidence that step needs. Pass it into the next agent turn, and the agent finishes what it dropped.

Why is an acknowledgement not an outcome?

Each state returns a refund object and HTTP 200. From the response they look the same.

Five states. One state moves the money.
StateWhat it meansMoney
pendingThe bank holds the refund in a queue. No money leaves the account.NO MONEY
requires_actionA person outside your system must act first.NO MONEY
failedThe bank refused the refund. The object still reads 200.NO MONEY
canceledSomeone withdrew the refund before settlement. The customer waits.NO MONEY
succeededThe money moved. Only this state earns the word “done”.MONEY MOVED

Which evidence supports a verdict?

Provely ranks evidence from E0 to E5 by its independence from the action path. E0 is the agent word and is never sufficient. Read the evidence hierarchy and the evidence level definition.