The false-completion benchmark is the set of cases where an agent action looks complete and is not. Every service skill must pass every case, with zero false VERIFIED results, before Provely signs it.
The oracle of each case is independent from the contract under test. A harness simulator plays the provider. The cases come from the provider semantics, the chaos cases, and the version rules.
Which cases does the benchmark require?
This table is the specification. Each skill runs its own cases against these rules. The next table states the case classes that the last run covered.
| Case | Scenario | Required result | Class |
|---|---|---|---|
terminal_success | Action accepted, terminal success confirmed | VERIFIED | positive |
still_transitional | Action accepted, provider still transitional | PENDING | progress |
terminal_failure | Provider reports terminal failure | FAILED | failure |
wrong_subject | Correct resource, wrong amount or subject | CONTRADICTED | false success |
duplicate_effect | Duplicate side effect for one operation | CONTRADICTED | false success |
stale_readback | Readback stale inside the consistency window | PENDING | progress |
evidence_timeout | Evidence unavailable until the timeout | UNVERIFIABLE | insufficient |
pre_existing_state | Pre-existing matching state, no causal link | Must not verify | false success |
webhook_duplicate | Webhook duplicated | No duplicate transition | events |
webhook_out_of_order | Webhook out of order | Reconciled by provider semantics | events |
timeout_after_commit | Timeout after the provider committed | VERIFIED after readback, never FAILED | chaos |
five_xx_after_execution | 5xx after the provider executed | VERIFIED after readback, never a retry | chaos |
version_unsupported | Provider version outside valid_for | UNVERIFIABLE with version_unsupported | versions |
Which case classes did the last runs cover?
| Case class | Resend | Shopify Admin API | Stripe |
|---|---|---|---|
| duplicate side effect | 4 of 4 | 2 of 2 | 2 of 2 |
| error after execution | 4 of 4 | 1 of 2 | 1 of 2 |
| error before execution | 4 of 4 | 2 of 2 | 2 of 2 |
| evidence unavailable | 4 of 4 | 2 of 2 | 2 of 2 |
| idempotent retry | 3 of 4 | not run | 2 of 2 |
| pre existing state | 4 of 4 | 2 of 2 | 2 of 2 |
| stale readback | 4 of 4 | 2 of 2 | 2 of 2 |
| still transitional | 4 of 4 | 2 of 2 | 2 of 2 |
| terminal failure | 4 of 4 | 2 of 2 | 2 of 2 |
| terminal success | 3 of 4 | 2 of 2 | 2 of 2 |
| timeout after commit | 4 of 4 | 1 of 2 | 1 of 2 |
| version mismatch | 4 of 4 | 2 of 2 | 2 of 2 |
| webhook duplicate | 4 of 4 | 2 of 2 | 2 of 2 |
| webhook out of order | 4 of 4 | 2 of 2 | 2 of 2 |
| wrong amount | not run | 2 of 2 | 2 of 2 |
| wrong subject | 4 of 4 | 2 of 2 | 2 of 2 |
What are the results per skill?
The table reads the conformance summary of each signed skill manifest. A skill with one critical false VERIFIED is rejected. The numbers change when a skill is recompiled.
| Service | Skill version | Cases | Passed | Critical false VERIFIED | Certification | Last run | Source |
|---|---|---|---|---|---|---|---|
| Resend | 0.1.0 | 60 | 58 | 0 | Community | 2026-09-05T12:00:00Z | signed package |
| Shopify Admin API | 0.1.0 | 30 | 28 | 0 | Community | 2026-09-05T12:00:00Z | signed package |
| Stripe | 0.1.0 | 32 | 30 | 0 | Community | 2026-09-05T12:00:00Z | signed package |
How is the benchmark scored?
- A false VERIFIED on any case rejects the skill. There is no partial credit.
- The sandbox conformance dimension scores 0 to 10 points of the 100-point confidence score.
- Three hard caps apply before the level. Unknown terminal semantics cap at 49. No causal correlation caps at 69. Action-response-only evidence caps at 49.
- Community is the first level. Generated draft needs 50 or more. Verified needs 75 or more and the gates. Official needs 90 or more, every critical test, and every reviewed uncertainty.
Can I run the benchmark against my own contract?
Yes. The harness package runs the conformance matrix against any contract with the simulator or with record-and-replay fixtures. The oracle must not be the contract under test.
Where is the machine-readable result?
The /facts endpoint publishes the current cases, levels, and certification of every skill as JSON-LD.