Fetching from the wire…
Tools2026-07-18 · source-backed
Documented behavior says a hook exiting 2 blocks the tool call. In practice, if the hook's stdout JSON failed schema validation, the block got dropped and the tool ran anyway. Fixed in v2.1.214, alongside the v2.1.212 fix for continue:false halts being dropped when a tool failed or completed mid-stream. Across two releases, four separate fixes address guardrails that reported blocking but didn't. Harnesses reliably surface a hook's happy path and silently degrade its failure path. Treat any hook you use as a safety control as untested until you've verified it blocks under a malformed payload, a mid-stream tool failure, and a non-zero infrastructure error.
Each link below shares sources, entities, or timing with this story.
Shared entities / Shared topic / Earlier coverage
Both cover Fixed, JSON; overlapping topics (call, tool); earlier Fixed coverage from 2026-02-28.
Same source / Shared topic
Cite the same source (Fixed in v2.1.214); overlapping topics (behavior, call, code, tool).
Shared entity: Treat / Shared topic / Earlier coverage / Tension
Both cover Treat; overlapping topics (call, code, failure); earlier Treat coverage from 2026-06-14.
Shared entities / Earlier coverage / Tension
Both cover JSON, Treat; earlier JSON coverage from 2026-07-07; pushes against this story (against).
Shared entity: JSON / Shared topic / Earlier coverage
Both cover JSON; overlapping topics (block, call, code, hook); earlier JSON coverage from 2026-06-07.
Same source / Shared topic
Cite the same source (Fixed in v2.1.214); overlapping topics (block, code, hook).
Shared entity: JSON / Shared topic / Earlier coverage / Tension
Both cover JSON; overlapping topics (behavior, code); earlier JSON coverage from 2026-03-28.
Shared entity: Treat / Shared topic / Earlier coverage / Tension
Both cover Treat; overlapping topics (code, tool); earlier Treat coverage from 2026-03-23.