Remediation transaction
A BLOCK is not a dead end.
A BLOCK is not a dead end: the envelope names the required contract fixes; the same input re-submitted is still a BLOCK (deterministic); a modified input triggers a NEW preflight, not permission; disputes escalate to human review.
What the transaction carries
The agent-facing contract names these response fields.
remediation_transaction
Present on BLOCK only; not on ALLOW/WARN/REQUIRE_APPROVAL.
required_changes[]
The named contract fixes.
resubmission
unchanged_input -> deterministic_block; modified_input -> preflight_required; modified_is_not_permission: true; next_preflight_required: true.
recheck_scope / escalation
recheck_scope; escalation: human_review.
Re-submission is not permission
The same input re-submitted is still a BLOCK (deterministic). A modified input triggers a NEW preflight, not permission.
modified_is_not_permission: truenext_preflight_required: true
Post-execution proof
For post-execution proof boundaries, see Execution attestations → and Proof boundaries →.