<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1180" font-family="'Source Serif Pro', 'Georgia', 'Times New Roman', serif">
  <title>El Mundo — Methodology Versioning</title>
  <desc>Each Asiento track in the Contaduría carries two attributes — active/inactive and current/superseded — but they are not independent: at most one version of a lineage may be active at any time, enforced by atomic Cabildo edits. This yields three legitimate states (active-current, inactive-superseded, inactive-dormant) and one forbidden combination (active-superseded). Soft-delete is a derived predicate: every version in the lineage is inactive. A worked example shows the three legitimate states across four atomic events.</desc>

  <defs>
    <style type="text/css"><![CDATA[
      .doc-title { font-size: 22px; font-weight: 600; fill: #0f172a; }
      .doc-sub { font-size: 13px; font-weight: 400; fill: #475569; font-style: italic; }
      .band-name { font-size: 16px; font-weight: 700; font-style: italic; }
      .band-mode { font-size: 10.5px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .band-keeper { font-size: 10px; font-style: italic; fill: #64748b; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .axis-label { font-size: 11px; font-weight: 600; letter-spacing: 0.04em; fill: #334155; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .version-label { font-size: 12px; font-weight: 700; fill: #1f2937; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .version-detail { font-size: 10px; fill: #475569; font-family: 'Inter', 'Helvetica Neue', sans-serif; font-style: italic; }
      .annotation { font-size: 11px; fill: #334155; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .footer { font-size: 10px; fill: #64748b; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .pulperia-text { fill: #78350f; }
      .contaduria-text { fill: #1e3a8a; }
      .cabildo-text { fill: #6b21a8; }
      .panel-title { font-size: 13px; font-weight: 600; fill: #0f172a; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .panel-text { font-size: 11px; fill: #334155; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .matrix-axis-label { font-size: 10px; font-weight: 700; letter-spacing: 0.04em; fill: #475569; font-family: 'Inter', 'Helvetica Neue', sans-serif; text-transform: uppercase; }
      .matrix-cell-text { font-size: 10.5px; fill: #1f2937; font-family: 'Inter', 'Helvetica Neue', sans-serif; }
      .deferred-fill { fill: #fffbeb; stroke: #ca8a04; }
      .deferred-text { fill: #78350f; }
    ]]></style>
  </defs>

  <!-- Background -->
  <rect width="1200" height="1180" fill="#ffffff"/>

  <!-- Title -->
  <text x="60" y="44" class="doc-title">El Mundo — Methodology Versioning</text>
  <text x="60" y="64" class="doc-sub">Each Asiento track has two attributes — active/inactive and current/superseded — bound by an atomicity rule: at most one version of a</text>
  <text x="60" y="82" class="doc-sub">lineage may be active at any time. Three legitimate states; one forbidden combination. Diagram 5 — Methodology Versioning.</text>

  <!-- Time axis at top -->
  <text x="60" y="118" class="axis-label">TIME →</text>
  <line x1="180" y1="113" x2="1140" y2="113" stroke="#334155" stroke-width="1.5"/>
  <polygon points="1140,113 1132,109 1132,117" fill="#334155"/>

  <!-- Time markers t₁, t₂, t₃, t₄ -->
  <line x1="320" y1="108" x2="320" y2="130" stroke="#334155" stroke-width="1"/>
  <text x="320" y="145" font-size="11" font-weight="600" fill="#334155" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">t₁</text>
  <text x="320" y="160" font-size="9" font-style="italic" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">PdC v1 registered + activated</text>

  <line x1="560" y1="108" x2="560" y2="130" stroke="#334155" stroke-width="1"/>
  <text x="560" y="145" font-size="11" font-weight="600" fill="#334155" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">t₂</text>
  <text x="560" y="160" font-size="9" font-style="italic" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">v2 registered &amp; activated;</text>
  <text x="560" y="172" font-size="9" font-style="italic" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">v1 deactivated (atomic)</text>

  <line x1="800" y1="108" x2="800" y2="130" stroke="#334155" stroke-width="1"/>
  <text x="800" y="145" font-size="11" font-weight="600" fill="#334155" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">t₃</text>
  <text x="800" y="160" font-size="9" font-style="italic" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">v3 registered &amp; activated;</text>
  <text x="800" y="172" font-size="9" font-style="italic" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">v2 deactivated (atomic)</text>

  <line x1="1060" y1="108" x2="1060" y2="130" stroke="#334155" stroke-width="1"/>
  <text x="1060" y="145" font-size="11" font-weight="600" fill="#334155" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">t₄</text>
  <text x="1060" y="160" font-size="9" font-style="italic" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">v3 deactivated</text>
  <text x="1060" y="172" font-size="9" font-style="italic" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">(no successor)</text>

  <!-- Vertical guide lines at each event -->
  <line x1="320" y1="190" x2="320" y2="850" stroke="#cbd5e1" stroke-width="1" stroke-dasharray="3,3"/>
  <line x1="560" y1="190" x2="560" y2="850" stroke="#cbd5e1" stroke-width="1" stroke-dasharray="3,3"/>
  <line x1="800" y1="190" x2="800" y2="850" stroke="#cbd5e1" stroke-width="1" stroke-dasharray="3,3"/>
  <line x1="1060" y1="190" x2="1060" y2="850" stroke="#cbd5e1" stroke-width="1" stroke-dasharray="3,3"/>

  <!-- ============== BAND 1: PULPERÍA ============== -->
  <rect x="60" y="200" width="1080" height="130" rx="10" fill="#fef7ed" stroke="#a16207" stroke-width="2"/>
  <text x="80" y="226" class="band-name pulperia-text">Pulpería</text>
  <text x="80" y="244" class="band-mode pulperia-text">Operational ledger — observed</text>
  <text x="80" y="260" class="band-keeper">kept by the Pulpero</text>
  <text x="180" y="282" class="annotation" font-style="italic">Postas arrive continuously. Methodology lifecycle does not affect the operational ledger:</text>

  <g fill="#a16207" opacity="0.7">
    <circle cx="200" cy="304" r="3"/><circle cx="222" cy="310" r="3"/><circle cx="244" cy="302" r="3"/><circle cx="266" cy="308" r="3"/>
    <circle cx="288" cy="304" r="3"/><circle cx="310" cy="310" r="3"/><circle cx="332" cy="303" r="3"/><circle cx="354" cy="309" r="3"/>
    <circle cx="376" cy="305" r="3"/><circle cx="398" cy="311" r="3"/><circle cx="420" cy="303" r="3"/><circle cx="442" cy="307" r="3"/>
    <circle cx="464" cy="310" r="3"/><circle cx="486" cy="302" r="3"/><circle cx="508" cy="308" r="3"/><circle cx="530" cy="305" r="3"/>
    <circle cx="552" cy="311" r="3"/><circle cx="574" cy="303" r="3"/><circle cx="596" cy="309" r="3"/><circle cx="618" cy="304" r="3"/>
    <circle cx="640" cy="310" r="3"/><circle cx="662" cy="302" r="3"/><circle cx="684" cy="308" r="3"/><circle cx="706" cy="305" r="3"/>
    <circle cx="728" cy="311" r="3"/><circle cx="750" cy="303" r="3"/><circle cx="772" cy="307" r="3"/><circle cx="794" cy="310" r="3"/>
    <circle cx="816" cy="302" r="3"/><circle cx="838" cy="308" r="3"/><circle cx="860" cy="305" r="3"/><circle cx="882" cy="311" r="3"/>
    <circle cx="904" cy="303" r="3"/><circle cx="926" cy="307" r="3"/><circle cx="948" cy="310" r="3"/><circle cx="970" cy="302" r="3"/>
    <circle cx="992" cy="309" r="3"/><circle cx="1014" cy="304" r="3"/><circle cx="1036" cy="310" r="3"/><circle cx="1058" cy="305" r="3"/>
    <circle cx="1080" cy="311" r="3"/><circle cx="1102" cy="303" r="3"/><circle cx="1124" cy="308" r="3"/>
  </g>

  <!-- ============== BAND 2: CONTADURÍA ============== -->
  <rect x="60" y="350" width="1080" height="320" rx="10" fill="#eef2ff" stroke="#1e40af" stroke-width="2"/>
  <text x="80" y="376" class="band-name contaduria-text">Contaduría</text>
  <text x="80" y="394" class="band-mode contaduria-text">Corporate ledger — derived</text>
  <text x="80" y="410" class="band-keeper">kept by the Contador</text>

  <!-- Track 1 -->
  <text x="180" y="438" class="version-label">Track 1 — Asientos under PdC v1</text>
  <text x="180" y="452" class="version-detail">active &amp; current at t₁; transitions to inactive &amp; superseded at t₂ (atomic); remains so afterward</text>
  <line x1="320" y1="468" x2="560" y2="468" stroke="#1e40af" stroke-width="3"/>
  <line x1="560" y1="468" x2="1140" y2="468" stroke="#94a3b8" stroke-width="1.5" stroke-dasharray="5,4"/>
  <circle cx="380" cy="468" r="5" fill="#1e40af"/>
  <circle cx="440" cy="468" r="5" fill="#1e40af"/>
  <circle cx="500" cy="468" r="5" fill="#1e40af"/>
  <text x="380" y="486" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="440" y="486" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="500" y="486" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="440" y="430" font-size="9" font-weight="600" fill="#1e40af" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">[ACTIVE · CURRENT]</text>
  <text x="850" y="462" font-size="9" font-weight="600" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">[INACTIVE · SUPERSEDED]</text>

  <!-- Track 2 -->
  <text x="180" y="528" class="version-label">Track 2 — Asientos under PdC v2</text>
  <text x="180" y="542" class="version-detail">begins at t₂; active &amp; current until t₃; transitions to inactive &amp; superseded (atomic at t₃)</text>
  <line x1="320" y1="558" x2="560" y2="558" stroke="#cbd5e1" stroke-width="1" stroke-dasharray="2,4"/>
  <line x1="560" y1="558" x2="800" y2="558" stroke="#1e40af" stroke-width="3"/>
  <line x1="800" y1="558" x2="1140" y2="558" stroke="#94a3b8" stroke-width="1.5" stroke-dasharray="5,4"/>
  <circle cx="620" cy="558" r="5" fill="#1e40af"/>
  <circle cx="680" cy="558" r="5" fill="#1e40af"/>
  <circle cx="740" cy="558" r="5" fill="#1e40af"/>
  <text x="620" y="576" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="680" y="576" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="740" y="576" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="440" y="552" font-size="9" font-style="italic" fill="#94a3b8" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">— track does not yet exist —</text>
  <text x="680" y="520" font-size="9" font-weight="600" fill="#1e40af" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">[ACTIVE · CURRENT]</text>
  <text x="970" y="552" font-size="9" font-weight="600" fill="#64748b" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">[INACTIVE · SUPERSEDED]</text>

  <!-- Track 3 -->
  <text x="180" y="618" class="version-label">Track 3 — Asientos under PdC v3</text>
  <text x="180" y="632" class="version-detail">begins at t₃; active &amp; current until t₄; deactivated at t₄ with no successor → inactive &amp; dormant</text>
  <line x1="320" y1="648" x2="800" y2="648" stroke="#cbd5e1" stroke-width="1" stroke-dasharray="2,4"/>
  <line x1="800" y1="648" x2="1060" y2="648" stroke="#1e40af" stroke-width="3"/>
  <line x1="1060" y1="648" x2="1140" y2="648" stroke="#b45309" stroke-width="1.5" stroke-dasharray="5,4"/>
  <circle cx="870" cy="648" r="5" fill="#1e40af"/>
  <circle cx="930" cy="648" r="5" fill="#1e40af"/>
  <circle cx="990" cy="648" r="5" fill="#1e40af"/>
  <text x="870" y="666" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="930" y="666" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="990" y="666" font-size="9" fill="#1e3a8a" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Cierre</text>
  <text x="560" y="642" font-size="9" font-style="italic" fill="#94a3b8" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">— track does not yet exist —</text>
  <text x="930" y="610" font-size="9" font-weight="600" fill="#1e40af" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">[ACTIVE · CURRENT]</text>
  <text x="1100" y="642" font-size="9" font-weight="600" fill="#b45309" text-anchor="middle" font-family="'Inter', 'Helvetica Neue', sans-serif">[INACTIVE · DORMANT]</text>

  <!-- ============== BAND 3: CABILDO ============== -->
  <rect x="60" y="690" width="1080" height="160" rx="10" fill="#fdf4ff" stroke="#7e22ce" stroke-width="2"/>
  <text x="80" y="716" class="band-name cabildo-text">Cabildo</text>
  <text x="80" y="734" class="band-mode cabildo-text">Audit ledger — administrative</text>
  <text x="80" y="750" class="band-keeper">kept by the Secretario</text>
  <text x="180" y="772" class="annotation" font-style="italic">Two shapes of atomic Cabildo edit govern the lifecycle. The first registers a new version (and atomically deactivates its predecessor, if any).</text>
  <text x="180" y="786" class="annotation" font-style="italic">The second deactivates a version without a successor — the only mechanism that can leave a lineage dormant.</text>

  <!-- t₁: simple registration -->
  <rect x="270" y="800" width="100" height="36" rx="3" fill="#7e22ce" stroke="#6b21a8" stroke-width="1.5"/>
  <text x="320" y="814" font-size="9" fill="#fff" text-anchor="middle" font-weight="700" font-family="'Inter', 'Helvetica Neue', sans-serif">register v1</text>
  <text x="320" y="826" font-size="8" fill="#fff" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">activate</text>

  <!-- t₂: compound atomic -->
  <rect x="490" y="800" width="140" height="36" rx="3" fill="#7e22ce" stroke="#6b21a8" stroke-width="1.5"/>
  <text x="560" y="814" font-size="9" fill="#fff" text-anchor="middle" font-weight="700" font-family="'Inter', 'Helvetica Neue', sans-serif">register v2 + activate</text>
  <text x="560" y="826" font-size="8" fill="#fff" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">deactivate v1 (atomic)</text>

  <!-- t₃: compound atomic -->
  <rect x="730" y="800" width="140" height="36" rx="3" fill="#7e22ce" stroke="#6b21a8" stroke-width="1.5"/>
  <text x="800" y="814" font-size="9" fill="#fff" text-anchor="middle" font-weight="700" font-family="'Inter', 'Helvetica Neue', sans-serif">register v3 + activate</text>
  <text x="800" y="826" font-size="8" fill="#fff" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">deactivate v2 (atomic)</text>

  <!-- t₄: deactivation without successor -->
  <rect x="1010" y="800" width="100" height="36" rx="3" fill="#fff" stroke="#6b21a8" stroke-width="2"/>
  <text x="1060" y="814" font-size="9" fill="#6b21a8" text-anchor="middle" font-weight="700" font-family="'Inter', 'Helvetica Neue', sans-serif">deactivate v3</text>
  <text x="1060" y="826" font-size="8" fill="#6b21a8" text-anchor="middle" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">no successor</text>

  <!-- ============== STATE MATRIX (left) ============== -->
  <rect x="60" y="880" width="540" height="220" rx="10" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.5"/>
  <text x="80" y="906" class="panel-title">The State Matrix</text>
  <text x="80" y="924" class="panel-text" font-style="italic">Two attributes, bound by atomicity: at most one version of a lineage may be active.</text>

  <!-- Column headers -->
  <text x="288" y="954" class="matrix-axis-label" text-anchor="middle">CURRENT</text>
  <text x="456" y="954" class="matrix-axis-label" text-anchor="middle">SUPERSEDED</text>

  <!-- Row labels -->
  <text x="92" y="996" class="matrix-axis-label">ACTIVE</text>
  <text x="92" y="1070" class="matrix-axis-label">INACTIVE</text>

  <!-- Active × Current (legitimate) -->
  <rect x="208" y="966" width="160" height="50" rx="4" fill="#dbeafe" stroke="#1e40af" stroke-width="1.5"/>
  <text x="288" y="987" class="matrix-cell-text" text-anchor="middle" font-weight="600" fill="#1e40af">in force</text>
  <text x="288" y="1003" class="matrix-cell-text" text-anchor="middle" font-style="italic">currently writing Cierres</text>

  <!-- Active × Superseded (FORBIDDEN) -->
  <rect x="376" y="966" width="160" height="50" rx="4" fill="#fef2f2" stroke="#b91c1c" stroke-width="1.5" stroke-dasharray="4,3"/>
  <text x="456" y="987" class="matrix-cell-text" text-anchor="middle" font-weight="600" fill="#991b1b">forbidden</text>
  <text x="456" y="1003" class="matrix-cell-text" text-anchor="middle" font-style="italic" fill="#991b1b">atomic edits prevent this</text>
  <line x1="380" y1="970" x2="532" y2="1012" stroke="#b91c1c" stroke-width="1.5" opacity="0.4"/>
  <line x1="532" y1="970" x2="380" y2="1012" stroke="#b91c1c" stroke-width="1.5" opacity="0.4"/>

  <!-- Inactive × Current (DORMANT — soft delete) -->
  <rect x="208" y="1040" width="160" height="50" rx="4" fill="#fef3c7" stroke="#b45309" stroke-width="1.5"/>
  <text x="288" y="1061" class="matrix-cell-text" text-anchor="middle" font-weight="600" fill="#92400e">dormant</text>
  <text x="288" y="1077" class="matrix-cell-text" text-anchor="middle" font-style="italic" fill="#92400e">no successor → soft-deleted</text>

  <!-- Inactive × Superseded (HISTORICAL) -->
  <rect x="376" y="1040" width="160" height="50" rx="4" fill="#f1f5f9" stroke="#64748b" stroke-width="1.5"/>
  <text x="456" y="1061" class="matrix-cell-text" text-anchor="middle" font-weight="600" fill="#475569">historical</text>
  <text x="456" y="1077" class="matrix-cell-text" text-anchor="middle" font-style="italic" fill="#475569">queryable, no new writes</text>

  <!-- ============== NO-DELETE / ROLLBACK / DEFERRED PANEL (right) ============== -->
  <rect x="620" y="880" width="520" height="220" rx="10" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.5"/>
  <text x="640" y="906" class="panel-title">No Delete State. Soft-Delete Is Derived.</text>
  <text x="640" y="924" class="panel-text">A version is "soft-deleted" iff it is inactive and no successor lineage is current.</text>
  <text x="640" y="938" class="panel-text">Deletion is computed by walking the Cabildo, never stored as a flag. The append-only</text>
  <text x="640" y="952" class="panel-text">commitment is preserved: dormant Asientos remain queryable for audit under the</text>
  <text x="640" y="966" class="panel-text">methodology in force when sealed; they simply accept no new Cierres.</text>

  <text x="640" y="994" class="panel-title">Rollback Is Re-registration, Not Reactivation.</text>
  <text x="640" y="1012" class="panel-text">A superseded version cannot be reactivated. To return to v1's rules after running v2,</text>
  <text x="640" y="1026" class="panel-text">register a new PdC v3 mirroring v1 (atomically deactivating v2). The old v1 track stays</text>
  <text x="640" y="1040" class="panel-text">inactive-superseded; a fresh v3 begins. The Cabildo records a deliberate choice.</text>

  <!-- Deferred question -->
  <rect x="640" y="1056" width="480" height="36" rx="6" class="deferred-fill" stroke-width="1.5"/>
  <text x="654" y="1074" font-size="11" font-weight="700" class="deferred-text" font-family="'Inter', 'Helvetica Neue', sans-serif">Deferred:</text>
  <text x="724" y="1074" font-size="11" class="deferred-text" font-family="'Inter', 'Helvetica Neue', sans-serif">physical erasure for GDPR / regulatory right-to-be-forgotten —</text>
  <text x="654" y="1088" font-size="10" class="deferred-text" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">orthogonal to architectural soft-delete; a separate compliance design problem (Round 5+).</text>

  <!-- ============== BOTTOM NARRATIVE ============== -->
  <rect x="60" y="1116" width="1080" height="38" rx="8" fill="#f1f5f9" stroke="#cbd5e1" stroke-width="1"/>
  <text x="80" y="1140" font-size="11" fill="#334155" font-style="italic" font-family="'Inter', 'Helvetica Neue', sans-serif">Three kinds of truth, three independent timelines. Postas observe; Asientos derive under a versioned methodology; the Cabildo records every methodology lifecycle event as an atomic act.</text>

  <!-- Footer -->
  <text x="60" y="1170" class="footer">El Mundo lexicon, version 2026-05-07 — Roderick Consulting Inc. and RGC Argentina S.A. — Diagram 5 — Methodology Versioning</text>
</svg>
