<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Bounded Blog</title>
    <link>https://bounded.sh/blog</link>
    <atom:link href="https://bounded.sh/blog/rss.xml" rel="self" type="application/rss+xml" />
    <description>Notes from building Bounded, the provable backend: proofs, fail-closed enforcement, agent boundaries, and postmortems. Written by founder Amit Ishairzay.</description>
    <language>en-us</language>
    <managingEditor>amit@bounded.sh (Amit Ishairzay)</managingEditor>
    <webMaster>amit@bounded.sh (Amit Ishairzay)</webMaster>
    <lastBuildDate>Tue, 07 Jul 2026 00:00:00 GMT</lastBuildDate>
    <pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>

    <item>
      <title>Letting strangers edit production</title>
      <link>https://bounded.sh/blog/letting-strangers-edit-production</link>
      <guid isPermaLink="true">https://bounded.sh/blog/letting-strangers-edit-production</guid>
      <author>amit@bounded.sh (Amit Ishairzay)</author>
      <pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[An open app is one the public can prompt-edit without you losing sleep. Gates run before any spend, some parts of the UI are locked, a second model audits the diff, and the prompter pays. Here is what actually ships.]]></description>
    </item>

    <item>
      <title>The immortal alarm</title>
      <link>https://bounded.sh/blog/the-immortal-alarm</link>
      <guid isPermaLink="true">https://bounded.sh/blog/the-immortal-alarm</guid>
      <author>amit@bounded.sh (Amit Ishairzay)</author>
      <pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[A Durable Object alarm that rescheduled itself forever quietly burned about 2,300 times the cost it should have. Our own dashboards showed nothing. A postmortem on paying for idle loops in serverless.]]></description>
    </item>

    <item>
      <title>Observability that never captures PII</title>
      <link>https://bounded.sh/blog/observability-that-never-captures-pii</link>
      <guid isPermaLink="true">https://bounded.sh/blog/observability-that-never-captures-pii</guid>
      <author>amit@bounded.sh (Amit Ishairzay)</author>
      <pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[Most logging pipelines capture everything and promise to redact later. Bounded's observe path records the shape of an action, not its contents. Raw payloads never leave the process. Here is how, and where the line is.]]></description>
    </item>

    <item>
      <title>Agents need limits, not lectures</title>
      <link>https://bounded.sh/blog/agents-need-limits-not-lectures</link>
      <guid isPermaLink="true">https://bounded.sh/blog/agents-need-limits-not-lectures</guid>
      <author>amit@bounded.sh (Amit Ishairzay)</author>
      <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[You give an agent work by giving it limits. A sentence in a system prompt is advice the model can ignore. A cap proven at deploy is a write that gets rejected. Only one of those lets you go to sleep.]]></description>
    </item>

    <item>
      <title>Fail-closed is a feature</title>
      <link>https://bounded.sh/blog/fail-closed-is-a-feature</link>
      <guid isPermaLink="true">https://bounded.sh/blog/fail-closed-is-a-feature</guid>
      <author>amit@bounded.sh (Amit Ishairzay)</author>
      <pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[A guardrail that fails open is decoration. In Bounded every write is checked atomically, app code cannot route around the check, and when something breaks the answer is no. Here is what that means mechanically.]]></description>
    </item>

    <item>
      <title>Prove your backend can't lose money</title>
      <link>https://bounded.sh/blog/prove-your-backend-cant-lose-money</link>
      <guid isPermaLink="true">https://bounded.sh/blog/prove-your-backend-cant-lose-money</guid>
      <author>amit@bounded.sh (Amit Ishairzay)</author>
      <pubDate>Tue, 21 Apr 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[Tests sample the inputs you thought of. A proof checks every input there is. Here is how Bounded turns a spend cap or a conservation rule into a thing a solver signs off on before it ships.]]></description>
    </item>
  </channel>
</rss>
