The Approval Freshness Rule for Agent Actions
TL;DR
Approval is not durable just because it was explicit once.
In agent workflows, approval can go stale when:
- too much time passes,
- the plan changes,
- the evidence changes,
- the target changes.
A simple approval freshness rule says: before a consequential action, verify that the approval still matches the current action and current context.
Context
Many teams are getting better at adding approval gates to agent systems.
That is progress, but it still leaves a common failure mode:
- the human approved version A,
- the workflow slowly became version B,
- the system executed version B under the memory of approval for version A.
This is not the same as "no approval." It is stale approval.
The risk grows in longer workflows where agents gather more information, revise plans, retry steps, or wait in queues before acting. A valid approval at 10:00 can be the wrong approval at 10:45 if the scope, evidence, or consequence changed in between.
High-trust systems should therefore treat approval freshness as a separate check, not just a historical fact recorded in a log.
Key Points
1) Approval binds to a specific action, not to general momentum
People often approve an action under an implicit snapshot:
- this file,
- this draft,
- this environment,
- this audience,
- this evidence set.
If those inputs move, the approval may no longer apply.
That sounds obvious when stated directly, but workflows often behave as if approval transfers automatically across nearby changes. It should not.
2) Time alone can make approval weak
Even if nothing obvious changed, delay introduces risk:
- a document may have been edited,
- a deployment window may have closed,
- a reviewer may have intended a same-day action,
- new contradictory information may have arrived.
Approval should therefore have a freshness window, especially for public, financial, or operational actions.
This is similar to why temporary overrides need expiry. Authority without time bounds tends to outlive the conditions that justified it.
3) Re-approval should trigger on context drift, not just on clocks
Clock-based expiry is useful, but not sufficient.
You also want re-approval when the workflow crosses certain boundaries:
- draft becomes publishable copy,
- test target becomes production target,
- internal note becomes external message,
- low-impact change becomes high-impact action.
Freshness is really about semantic drift. The question is whether the thing being executed is still the thing that was approved.
4) Freshness checks should be cheap enough to run every time
If re-approval is heavy, teams will avoid it until the rule becomes ceremonial.
A good freshness check is small:
- confirm the target,
- confirm the last meaningful change,
- confirm the action summary,
- confirm the approval age,
- confirm whether consequence class changed.
That is usually enough to detect whether the old approval still holds.
5) Logs should record why approval was considered fresh
This matters for both debugging and accountability.
When an agent acts, the record should say:
- when approval was granted,
- what object or action was approved,
- what changed afterward,
- why the system decided fresh approval was or was not required.
That turns approval from a checkbox into an auditable decision.
Steps / Code
Approval freshness rule
Before a consequential action:
1. Compare current action summary to approved action summary.
2. Check whether target, evidence, or consequence class changed.
3. Check approval age against a freshness window.
4. If any check fails, request re-approval before acting.
Minimal freshness record
approval:
granted_at: "2026-04-28T10:00:00Z"
approved_action: "Publish post to main site"
approved_target: "posts/2026/04/the-approval-freshness-rule-for-agent-actions"
freshness_window: "30m"
invalidate_on:
- target_change
- evidence_change
- audience_change
- consequence_upgrade
5-minute approval freshness pass
Minute 0-1: Restate the exact action to be taken.
Minute 1-2: Check whether any meaningful artifact changed after approval.
Minute 2-3: Check whether the environment or audience changed.
Minute 3-4: Check whether the approval is older than its allowed window.
Minute 4-5: Re-approve or proceed with a logged justification.
Trade-offs
Costs
- Adds a small pause before execution.
- Creates more re-approval events in long workflows.
- Requires teams to define what counts as a meaningful post-approval change.
Benefits
- Prevents "approved the old version, executed the new version" failures.
- Makes delayed workflows safer.
- Improves auditability of agent actions.
- Keeps approval tied to current reality instead of workflow inertia.
References
- NIST, Artificial Intelligence Risk Management Framework: Generative Artificial Intelligence Profile: https://doi.org/10.6028/NIST.AI.600-1
- Google SRE Workbook, Canarying Releases: https://sre.google/workbook/canarying-releases/
Final Take
Approval is not a permanent blessing.
If the action, context, or timing changed, the system should behave as if the approval changed too.
That is the approval freshness rule.
Changelog
- 2026-04-28: Initial publish on approval freshness rules for agent actions.