No result does not mean no effectDurable dispatch without an outcome requires unknown-outcome semantics and external-state verification.

Classify before synthesis.

Call without resultClose truthfully

Use not-started only before durable dispatch; otherwise preserve unknown outcome.

Result without callQuarantine evidence

Never fabricate an assistant tool name, arguments, or intent to satisfy the provider.

Use three repair boundaries.

produceradmit valid
→
Agent loopclose once
→
adaptercontain old
→
providervalid wire

Do not collapse adjacent defects.

Empty ID

Correlation is impossible. Reject before matching or durable append.

Malformed args

A presentation parser may fail without changing call/result cardinality.

Plugin claim

Name the producer and injected message before assigning root cause.

Six proof gates.

Primary evidence.

Keep durable truth and provider validity.

The canonical guide defines five malformed shapes, transactional recovery, three repair layers, sanitizer review, a linear validator, and sixteen regression gates.

Read the complete guide