{"version":"2.1.265","anchor":"permission-behavior-helpers-now-require-strict-stringboolea","canonical_anchor":"permission-behavior-helpers-now-require-strict-stringboolea","heading":"Permission-behavior helpers now require strict string\/boolean typing","tier":"internal","area":"Hooks","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.265\/e\/permission-behavior-helpers-now-require-strict-stringboolea","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.265","markdown":"### Permission-behavior helpers now require strict string\/boolean typing\n\nPermission decisions from hooks now require exact string and boolean types instead of loose truthy checks\n\n**What**\n\nHooks (custom scripts that can intercept and influence Claude Code's actions) can return values that tell Claude Code to allow, ask about, or deny an action. The code that builds these deny\/ask\/allow decisions now checks values more strictly: it requires `typeof e === \"string\"`, `typeof n === \"string\"`, and `r === true` explicitly, rather than accepting any value that happens to be truthy.\n\n**Why**\n\nThis tightens how hook output is validated, so a hook returning an unexpected value type (like a number or an object) won't be silently treated as if it meant \"allow\" or \"deny.\" It makes permission decisions driven by hooks more predictable.\n\n- Area: Hooks\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5"}