<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>decision on SOW</title>
    <link>https://sow.pgsty.com/tags/decision/</link>
    <description>Recent content in decision on SOW</description>
    <generator>Hugo</generator>
    <language>en</language>
    
    
    
      <lastBuildDate>Fri, 28 Aug 2026 00:00:00 +0000</lastBuildDate>
    
    
      <atom:link href="https://sow.pgsty.com/tags/decision/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
        <title>Coordinated Publication Decision</title>
        <link>https://sow.pgsty.com/blog/design/coordinated-publication/</link>
        <pubDate>Fri, 14 Aug 2026 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/blog/design/coordinated-publication/</guid>
        <description>&lt;div class=&#34;td-callout td-callout--important&#34; role=&#34;note&#34;&gt;&#xA;  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-circle-exclamation&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;Decision finalized for SOW 0.4.0&lt;/span&gt;&lt;/div&gt;&#xA;  &lt;div class=&#34;td-callout__body&#34;&gt;&#xA;&lt;p&gt;An earlier version of this record proposed an rclone executor, &lt;code&gt;publish --dry-run&lt;/code&gt;, and a&#xA;separate &lt;code&gt;sow audit&lt;/code&gt; command. None of those surfaces shipped in 0.4.0. SOW has no&#xA;rclone dependency, &lt;code&gt;publish&lt;/code&gt; has no &lt;code&gt;--dry-run&lt;/code&gt;, and &lt;code&gt;sow audit&lt;/code&gt; is not a command.&lt;/p&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;This page preserves the decision boundary so a historical proposal cannot be mistaken for the&#xA;current product. The normative behavior is documented in&#xA;&lt;a href=&#34;https://sow.pgsty.com/docs/command/publish/&#34;&gt;&lt;code&gt;sow publish&lt;/code&gt;&lt;/a&gt; and&#xA;&lt;a href=&#34;https://sow.pgsty.com/blog/design/publication/&#34;&gt;Publication &amp;amp; Recovery&lt;/a&gt;.&lt;/p&gt;</description>
      </item>
    <item>
        <title>SOW Design Evolution: From Route Graphs to the Repository Core</title>
        <link>https://sow.pgsty.com/blog/design/evolution/</link>
        <pubDate>Mon, 10 Aug 2026 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/blog/design/evolution/</guid>
        <description>&lt;p&gt;This record dates to the 2026-08-10 consolidation of SOW around its Repository core. It&#xA;distills the useful decisions from the earlier planning, ADR, review, migration, and&#xA;verification trees without turning every intermediate artifact into maintained product&#xA;documentation.&lt;/p&gt;&#xA;&lt;p&gt;Some sealed folders use “v0.2” and “v0.3” for consecutive pre-release design lines. The&#xA;version labels below refer only to released Git tags: the C2 hardlink line was replaced&#xA;before v0.2.0 was tagged.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-short-history&#34;&gt;The short history&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Line&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Design center&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Historical status&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;v0.1&lt;/td&gt;&#xA;      &lt;td&gt;Git/CAS ownership, route-aware materialization, edge authorization, provider workflows, and Pigsty migration&lt;/td&gt;&#xA;      &lt;td&gt;Released as v0.1.0; superseded&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;v0.2&lt;/td&gt;&#xA;      &lt;td&gt;Local Plain/Managed engine, Repository-scoped single-payload tree, metadata-only views, retained Generations, and target-scoped publication&lt;/td&gt;&#xA;      &lt;td&gt;Released as v0.2.0; public layout remains current&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;v0.3&lt;/td&gt;&#xA;      &lt;td&gt;V1 removal, package-facts caching, one-pass Plain builds, and bounded payload commits&lt;/td&gt;&#xA;      &lt;td&gt;Released as v0.3.0; same public layout&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;v0.4&lt;/td&gt;&#xA;      &lt;td&gt;Single-pass verification, independent RPM trust rings, explicit target rebind, and migration/recovery hardening&lt;/td&gt;&#xA;      &lt;td&gt;Current released baseline when this record was updated&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;The exact code and claims for each released line remain available in the&#xA;&lt;a href=&#34;https://github.com/pgsty/sow/tree/v0.1.0&#34;&gt;v0.1.0&lt;/a&gt;,&#xA;&lt;a href=&#34;https://github.com/pgsty/sow/tree/v0.2.0&#34;&gt;v0.2.0&lt;/a&gt;,&#xA;&lt;a href=&#34;https://github.com/pgsty/sow/tree/v0.3.0&#34;&gt;v0.3.0&lt;/a&gt;, and&#xA;&lt;a href=&#34;https://github.com/pgsty/sow/tree/v0.4.0&#34;&gt;v0.4.0&lt;/a&gt; source tags.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Why SOW Uses One Payload Tree per Repository</title>
        <link>https://sow.pgsty.com/blog/design/single-payload/</link>
        <pubDate>Wed, 05 Aug 2026 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/blog/design/single-payload/</guid>
        <description>&lt;p&gt;This decision was drafted on 2026-08-05 during the pre-v0.2 release design consolidation&#xA;and shipped in SOW v0.2.0 on 2026-08-08. It remains the layout contract in v0.3 and v0.4.&#xA;It records an architecture choice, not a blanket compatibility claim: protocol closure,&#xA;ordinary package clients, mirror tools, static hosting, and object storage are verified as&#xA;separate evidence layers.&lt;/p&gt;&#xA;&lt;h2 id=&#34;decision&#34;&gt;Decision&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Each SOW Repository owns one public tree:&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d78f7449-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;text&#34; data-td-line-count=&#34;5&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d78f7449-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;repository&amp;gt;/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  pool/                         # canonical package bytes&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  dists/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &amp;lt;dist&amp;gt;/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &amp;lt;architecture&amp;gt;/           # protocol metadata only&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;A Package Object has one canonical payload path inside one Repository. Adding the same&#xA;object to several Dists or architecture views adds membership and metadata references; it&#xA;does not create another canonical package file.&lt;/p&gt;</description>
      </item>
    
  </channel>
</rss>
