<p>This is the first-wave <strong>estate map</strong>. It describes how the Coulomb / Custodian estate is put together: canons, hubs, rails, and publication. System-level arc42 documents (Railiance, NetKingdom, State Hub, Policy Nexus) live in their owning repos. Chapter 9 lists estate ADRs; it does not paste them.</p>
</section>
<sectionid="s1"><h2><spanclass="sn">01</span>Introduction and Goals</h2>
<p>the-custodian holds meaning, boundaries, and continuity for a local-first agent estate. Implementation lives in product repos. Coordination state is a read-model of repository files, not the origin of those files.</p>
<h3>1.1 Requirements Overview</h3>
<ul><li>Work, decisions, and canon originate as files in the owning repo.</li><li>A publication surface keeps governing documents at permanent URLs.</li><li>Runtime (Rails, rApps, identity, storage) is consumed from platform packages, not reimplemented in the custodian.</li><li>Cross-repo work is coordinated, not owned, by a dedicated project repo when it does not belong to one product.</li></ul>
<h3>1.2 Quality Goals</h3>
<ol><li>Rebuildability — State Hub can be reconstructed from registered repository files (ADR-001).</li><li>Concept ownership — canons import, they do not redefine (ADR-006).</li><li>Permanence of published policy addresses (policy-nexus ADR-0001).</li><li>Honest currency — stale documents are visibly stale.</li></ol>
<h3>1.3 Stakeholders</h3>
<divclass="scroll"><table><thead><tr><th>Role</th><th>Concern</th></tr></thead><tbody><tr><td>Operator</td><td>What must be discussed in person; ratification.</td></tr><tr><td>the-custodian</td><td>Canon, values, constitution, estate ADRs.</td></tr><tr><td>Product repos</td><td>Implementation and per-repo ADRs.</td></tr><tr><td>railiance-platform</td><td>Substrate: DNS, TLS, ingress, hosting.</td></tr><tr><td>policy-nexus</td><td>Publication only.</td></tr><tr><td>info-tech-canon</td><td>Semantic model, not this estate's building blocks.</td></tr></tbody></table></div>
<p>N/A in this revision — local-first files, no second source of truth, stdlib-preferring tooling, single-node rail availability. To be written as first-wave complete.</p>
</section>
<sectionid="s3"><h2><spanclass="sn">03</span>System Scope and Context</h2>
<p><strong>In:</strong> estate canon (<code>constitution</code>, <code>standards</code>, <code>architecture</code> ADRs), the federation of canons, the publication contract, the hub-as-read-model rule, and the map of first-wave systems.</p>
<p><strong>Out:</strong> product implementation, InfoTechCanon's landscape model, regulatory intake (<code>risk-nexus</code>), and per-system deployment detail (those belong in the system arc42).</p>
<h3>3.1 Business Context</h3>
<p>The estate is a set of repositories that together run Coulomb products and the agent work-factory. Readers need one map of what governs what. Owners need a place that is not also the implementation.</p>
<h3>3.2 Technical Context</h3>
<divclass="scroll"><table><thead><tr><th>Neighbour</th><th>Interface</th></tr></thead><tbody><tr><td>Owning git repos</td><td>Source of workplans, ADRs, canon.</td></tr><tr><td>State Hub</td><td>Derived index / cache of those files.</td></tr><tr><td>policy.coulomb.social</td><td>Generated publication of canon and ADRs.</td></tr><tr><td>Railiance reef</td><td>Runtime for hubs, rApps, Forgejo.</td></tr><tr><td>NetKingdom</td><td>Identity, tenancy, IAM profile.</td></tr><tr><td>info-tech-canon</td><td>Imported semantics, not estate structure.</td></tr></tbody></table></div>
<ul><li><strong>Files first.</strong> Workplans and ADRs are markdown in git. The hub rebuilds from them (ADR-001, ADR-003).</li><li><strong>One registrar.</strong> Workplan identifiers are globally unique; this workstation is not the registrar (ADR-007).</li><li><strong>Three canons, federated.</strong> Custodian (governance), InfoTechCanon (information-system semantics), CommerceCanon (counterparty semantics). They import, they do not redefine (ADR-006).</li><li><strong>Publish, do not author.</strong> policy-nexus reads owning repos and emits static addresses. It never writes back.</li><li><strong>Project repos for cross-repo work</strong> (<code>prj-*</code>), not an unbound hub workplan (ADR-005).</li></ul>
<p>Estate ADRs in <code>the-custodian/canon/architecture/</code>. Publication ids still need repo prefixes (WP-0003). Status is the source front-matter.</p>
<divclass="scroll"><table><thead><tr><th>Id</th><th>Status</th><th>Decision</th></tr></thead><tbody><tr><td><code>CUST-ADR-001</code></td><td>accepted</td><td>Workplans and tasks originate as repo files; the hub is a read model.</td></tr><tr><td><code>CUST-ADR-002</code></td><td>accepted</td><td>Custodian agent runtime design.</td></tr><tr><td><code>CUST-ADR-003</code></td><td>accepted</td><td>Hub state is derived and fingerprint-invalidated.</td></tr><tr><td><code>CUST-ADR-004</code></td><td>accepted</td><td>Connectivity-first network posture.</td></tr><tr><td><code>CUST-ADR-005</code></td><td>accepted</td><td>Cross-repo work lives in a <code>prj-*</code> repo.</td></tr><tr><td><code>CUST-ADR-006</code></td><td>accepted</td><td>Three canons; import, do not redefine.</td></tr><tr><td><code>CUST-ADR-007</code></td><td>accepted</td><td>Globally unique workplan ids; one registrar.</td></tr><tr><td><code>adr-008</code></td><td>superseded</td><td>Relocated to NetKingdom Tenancy Posture.</td></tr><tr><td><code>CUST-ADR-010</code></td><td>proposed</td><td>Two kinds of hub data; local cache vs authority.</td></tr><tr><td><code>CUST-ADR-011</code></td><td>proposed</td><td>Federated namespaces and reconciliation limits.</td></tr></tbody></table></div>
<p>Related and published elsewhere: policy-nexus ADR-0001; Tenancy Posture and IAM Profile v0.3; railiance-master ADR-0001–0008; activity-core ACT-ADR-001–005; ops-warden ADR-0001–0005; railiance-platform RPLAT-ADR-0001–0003.</p>
<p>N/A in this revision — rebuildability and currency already have mechanical checks (<code>fix-consistency</code>, <code>make currency</code>).</p>
</section>
<sectionid="s11"><h2><spanclass="sn">11</span>Risks and Technical Debt</h2>
<p>N/A in this revision. Known residual: this workstation cannot mint hub UUIDs (ADR-007 registrar). Markitect <code>arc42-v1</code> is not registered yet.</p>
<divclass="scroll"><table><thead><tr><th>Term</th><th>Meaning</th></tr></thead><tbody><tr><td>Estate</td><td>The set of Coulomb / Custodian repos, canons, hubs, and rails.</td></tr><tr><td>Canon</td><td>Governing documents owned by one of the three federated canons.</td></tr><tr><td>Read model</td><td>A derived index. Never the origin of work or decisions.</td></tr><tr><td>Publication entry</td><td>One explicit object in policy-nexus <code>publication.json</code>.</td></tr><tr><td>First-wave complete</td><td>Chapters 1, 3, 4, 5.1, 9 and 12 are real; others real or N/A.</td></tr><tr><td>Project repo</td><td>A <code>prj-*</code> repo that coordinates cross-repo work (ADR-005).</td></tr></tbody></table></div>