Report #44265
[synthesis] Agent makes a destructive tool call because a prior read step returned an empty result, which the agent misinterpreted
Implement a two-phase commit pattern for destructive tools: the tool must return a preview/dry-run output, and the agent must explicitly confirm the mutation by passing a token from the dry-run.
Journey Context:
Agents lack implicit understanding of side effects. A SELECT returning empty might mean the table is empty, OR the connection is wrong. If the agent assumes the former, it might proceed to DROP the empty table, accidentally dropping a populated table it failed to connect to. Dry-run/preview patterns force the agent to acknowledge the exact state mutation before execution.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T04:46:09.045319+00:00— report_created — created