<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Tade — writing</title>
    <link>https://tade.sh/blog/</link>
    <atom:link href="https://tade.sh/rss.xml" rel="self" type="application/rss+xml" />
    <description>Posts from the people building Tade — running coding agents, and keeping the books.</description>
    <language>en</language>
    <docs>https://www.rssboard.org/rss-specification</docs>
    <lastBuildDate>Mon, 28 Sep 2026 00:00:00 GMT</lastBuildDate>
    <item>
      <title>A check nobody ran is not one that passed</title>
      <link>https://tade.sh/blog/a-check-nobody-ran-is-not-a-check-that-passed/</link>
      <guid isPermaLink="true">https://tade.sh/blog/a-check-nobody-ran-is-not-a-check-that-passed/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>checks</category>
      <category>ci</category>
      <description>An agent runs the checks and then commits, so HEAD moves under the run. Carrying it forward honestly means comparing trees rather than commit ids.</description>
    </item>
    <item>
      <title>A queue that holds, and says why it did</title>
      <link>https://tade.sh/blog/a-queue-that-holds-and-says-why/</link>
      <guid isPermaLink="true">https://tade.sh/blog/a-queue-that-holds-and-says-why/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>queue</category>
      <category>agents</category>
      <category>design</category>
      <description>Three agents built this blog in order. Six times in September a fourth was held because another was already mid-edit in the files it planned to change.</description>
    </item>
    <item>
      <title>From a red main to green in thirty-six minutes</title>
      <link>https://tade.sh/blog/a-red-main-fixed-before-anybody-noticed/</link>
      <guid isPermaLink="true">https://tade.sh/blog/a-red-main-fixed-before-anybody-noticed/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>ci</category>
      <category>watches</category>
      <category>checks</category>
      <category>agents</category>
      <description>On 28 September ubuntu-latest went red on Tade&apos;s own main at 08:15. A watch found it at 08:20, an agent removed the race, and CI was green again by 08:51.</description>
    </item>
    <item>
      <title>A watch may only ever add work</title>
      <link>https://tade.sh/blog/a-watch-may-only-ever-add-work/</link>
      <guid isPermaLink="true">https://tade.sh/blog/a-watch-may-only-ever-add-work/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>watches</category>
      <category>safety</category>
      <category>sentry</category>
      <category>dependencies</category>
      <description>Nine watch schedules looked 1,447 times in four days here. Four findings started an agent, 425 looks could not look at all, and none of them may push or merge.</description>
    </item>
    <item>
      <title>Every picture on this site is drawn by the program</title>
      <link>https://tade.sh/blog/every-picture-is-drawn-by-the-program/</link>
      <guid isPermaLink="true">https://tade.sh/blog/every-picture-is-drawn-by-the-program/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>screens</category>
      <category>how-this-is-built</category>
      <description>A screenshot starts going out of date the day after it is taken. Every screen in a post here is rendered by Tade itself, from the scenarios its own tests protect.</description>
    </item>
    <item>
      <title>Forty-eight findings, nine of them real</title>
      <link>https://tade.sh/blog/forty-eight-findings-nine-of-them-real/</link>
      <guid isPermaLink="true">https://tade.sh/blog/forty-eight-findings-nine-of-them-real/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>jev</category>
      <category>review</category>
      <category>calibration</category>
      <description>A judge that flags things is easy. This is the table saying how often ours was right, which question turned out to be noise, and what was done about it.</description>
    </item>
    <item>
      <title>Three kinds of dollar, each one marked</title>
      <link>https://tade.sh/blog/three-kinds-of-dollar-each-one-marked/</link>
      <guid isPermaLink="true">https://tade.sh/blog/three-kinds-of-dollar-each-one-marked/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>spend</category>
      <category>cost</category>
      <description>In seven days this machine spent $200.77 that a harness priced exactly, plus 3,177 million tokens no dollar figure covers. Tade never adds those together.</description>
    </item>
    <item>
      <title>What Tade will not do, and why not</title>
      <link>https://tade.sh/blog/what-tade-will-not-do-and-why-not/</link>
      <guid isPermaLink="true">https://tade.sh/blog/what-tade-will-not-do-and-why-not/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>design</category>
      <category>safety</category>
      <category>refusals</category>
      <description>Ten refusals that are the design rather than a backlog, including the three that will cost somebody something and the one that is only true if they choose tmux.</description>
    </item>
    <item>
      <title>Why a task never spans two repositories</title>
      <link>https://tade.sh/blog/why-a-task-never-spans-two-repositories/</link>
      <guid isPermaLink="true">https://tade.sh/blog/why-a-task-never-spans-two-repositories/</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <dc:creator>The Tade project</dc:creator>
      <category>multi-repo</category>
      <category>design</category>
      <category>agents</category>
      <description>One orchestrator runs agents in every repository at once. What it refuses to do is let a single task span two of them, and the reason is git rather than tidiness.</description>
    </item>
  </channel>
</rss>
