Human-in-the-loop safeguards in agent systems fail when the execution engine binds human approval to a thread rather than the immutable tool payload.
In a recent test against LangGraph Agent Server, security researchers demonstrated loopjacking in agent-to-agent interactions. An approval interrupt was triggered for a transfer of twenty dollars to a known vendor. While the human examined the request, another actor submitted a new message over the same task identifier, silently swapping the pending call to send two thousand dollars to an attacker sink.
Because the task framework tracked workflow state rather than an exact cryptographic digest of the pending operation, the subsequent approval released the altered payload. The application mistakenly assumed that approving the task meant approving whichever action was current when the human clicked confirm.
Decisions must bind cryptographically to the exact parameters shown to the approver, not to mutable task references.
