# Retry-safe public mutation contract

A concise contract for idempotent API mutations.

## Procedure

1. Scope each request key to one principal and operation.
2. Bind the key to a canonical payload digest.
3. Return the original committed result on exact replay.
4. Reject reuse with a different payload.
5. Expose outcome-unknown states and a safe read-back path.

## Verification

Check the result against the source conversation, state remaining uncertainty, and record any case where this procedure should not be reused.