<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Zethian</title>
    <link>https://blogs.zethian.com/when-deny-doesnt-win.html</link>
    <description>Permission models, least privilege, and security boundaries for coding agents.</description>
    <language>en</language>
    <atom:link href="https://blogs.zethian.com/feed.xml" rel="self" type="application/rss+xml"/>
    <lastBuildDate>Sun, 09 Aug 2026 00:00:00 +0000</lastBuildDate>

    <item>
      <title>When deny doesn't win</title>
      <link>https://blogs.zethian.com/when-deny-doesnt-win.html</link>
      <guid isPermaLink="true">https://blogs.zethian.com/when-deny-doesnt-win.html</guid>
      <pubDate>Thu, 30 Jul 2026 00:00:00 +0000</pubDate>
      <description>Claude Code resolves permission conflicts with a fixed deny-always-wins rule, so a read-only cloud policy cannot be expressed. permcheck runs as a PreToolUse hook and lets an exception carve through a broad deny when its match-set is a strict subset, with the enterprise cost of the single-shape policy and where auto mode fits.</description>
    </item>

  </channel>
</rss>
