The problem
Your agent prepares a release announcement based on deployment statussuccess. By the time the message is approved and ready to send, the deployment has rolled back to failed. Without state revalidation, the agent posts a false announcement.
Solution: approval-bound Slack actions
Classifyslack.post_message as approval-bound. Invoke stages the message, waits for a reviewer to approve, then revalidates deployment state before the message goes out:
What happens step by step
- Agent calls
slack.post_message→ Invoke returnspending_approval - Reviewer sees the staged message in the Invoke dashboard
- Reviewer approves
- Invoke checks current deployment status against the conditions at approval time
- If status is still
success→ message sends - If status changed to
failed→ Invoke returnsreplan_required, message blocked
Next steps
- Approvals — full approval lifecycle documentation
- Tool Safety Classes — classify tools as approval-bound
- Traces — inspect the approval timeline in execution traces