II.
TestableClaim overview
Reference · liveclaim:stop-hook-claude-interactive-blocks
Claude Code stop hook can block (deny) at end-of-turn overview
A hooks-mux handler returning decision: deny at turn.stop propagates the deny decision in the output for Claude Code, since the Claude adapter supports the blockCapability. This allows hooks to prevent the agent from stopping (e.g., to enforce a review step before turn completion).
Attributes
displayName
Claude Code stop hook can block (deny) at end-of-turn
description
A hooks-mux handler returning decision: deny at turn.stop propagates the
deny decision in the output for Claude Code, since the Claude adapter
supports the blockCapability. This allows hooks to prevent the agent
from stopping (e.g., to enforce a review step before turn completion).
testStatus
pending
testType
integration
testCommand
npx vitest run packages/atlas/tests/claims/stop-hook-control.test.ts -t "claude adapter.*deny decision propagates"
category
hooks
priority
high
Outgoing edges
asserts_about2
- agent:claude-code·AgentProductClaude Code
- hook-surface:stop·HookSurfaceStop (canonical)
tests_hook_surface1
- hook-surface:claude.stop·HookSurfaceStop (Claude)
Incoming edges
backed_by_evidence1
- evidence:hooks-mux-stop-hook-test-suite·EvidenceSourcehooks-mux stop-hook control test suite
tests_claim1
- experiment:stop-hook-control-interactive·ExperimentStop Hook Control — Interactive Mode