521cc2f066
Heroes optimised to 1600px webp from the prepped batch; diagrams authored to the house palette; dates set to publish day.
61 lines
5.9 KiB
XML
61 lines
5.9 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" width="1180" height="470" viewBox="0 0 1180 470" role="img" aria-label="Three node power states - Ready, off by choice, and parked broken - drawn above one continuous document layer in git holding the machine config, inline CNI, workloads and credentials. Ready and off-by-choice exchange through a power button; parked-broken exits only through a repair. The document layer persists identically beneath all three states.">
|
|
<rect width="1180" height="470" fill="#ffffff"></rect>
|
|
|
|
<!-- title -->
|
|
<text x="60" y="46" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="23" font-weight="700" fill="#0e1726">Power is a state; the node is a document</text>
|
|
<text x="61" y="70" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="13.5" fill="#64748b">the states sit on top — the document layer underneath never changes</text>
|
|
|
|
<!-- READY -->
|
|
<rect x="80" y="110" width="280" height="150" rx="14" fill="#0c8fce" fill-opacity="0.06" stroke="#0c8fce" stroke-width="2.2"></rect>
|
|
<text x="220" y="145" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="16" font-weight="700" fill="#0c8fce">READY</text>
|
|
<text x="220" y="172" text-anchor="middle" font-family="ui-monospace, 'SF Mono', Menlo, monospace" font-size="11" fill="#0e1726">lit · workloads reconciled</text>
|
|
<text x="220" y="192" text-anchor="middle" font-family="ui-monospace, 'SF Mono', Menlo, monospace" font-size="11" fill="#64748b">cave · alfred</text>
|
|
<text x="220" y="236" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="11.5" fill="#64748b">the always-on core</text>
|
|
|
|
<!-- OFF BY CHOICE -->
|
|
<rect x="450" y="110" width="280" height="150" rx="14" fill="#0e1726" fill-opacity="0.05" stroke="#0e1726" stroke-width="2"></rect>
|
|
<text x="590" y="145" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="16" font-weight="700" fill="#0e1726">OFF BY CHOICE</text>
|
|
<text x="590" y="172" text-anchor="middle" font-family="ui-monospace, 'SF Mono', Menlo, monospace" font-size="11" fill="#0e1726">dark · healthy at shutdown</text>
|
|
<text x="590" y="192" text-anchor="middle" font-family="ui-monospace, 'SF Mono', Menlo, monospace" font-size="11" fill="#64748b">robin · kate · wgirl</text>
|
|
<text x="590" y="236" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="11.5" fill="#64748b">recorded as rest, in the log</text>
|
|
|
|
<!-- power-button exchange between READY and OFF-BY-CHOICE -->
|
|
<g stroke="#0c8fce" stroke-width="2" fill="none">
|
|
<line x1="360" y1="165" x2="450" y2="165"></line>
|
|
<polygon points="450,159 462,165 450,171" fill="#0c8fce" stroke="none"></polygon>
|
|
<line x1="462" y1="205" x2="372" y2="205"></line>
|
|
<polygon points="372,199 360,205 372,211" fill="#0c8fce" stroke="none"></polygon>
|
|
</g>
|
|
<text x="411" y="152" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="11.5" font-weight="700" fill="#0c8fce">talosctl shutdown</text>
|
|
<text x="411" y="226" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="11.5" font-weight="700" fill="#0c8fce">one power button</text>
|
|
|
|
<!-- PARKED BROKEN, set apart -->
|
|
<rect x="850" y="110" width="270" height="150" rx="14" fill="#c026d3" fill-opacity="0.05" stroke="#c026d3" stroke-width="2.2" stroke-dasharray="7 6"></rect>
|
|
<text x="985" y="145" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="16" font-weight="700" fill="#c026d3">PARKED BROKEN</text>
|
|
<text x="985" y="172" text-anchor="middle" font-family="ui-monospace, 'SF Mono', Menlo, monospace" font-size="11" fill="#0e1726">dark · hardware fault</text>
|
|
<text x="985" y="192" text-anchor="middle" font-family="ui-monospace, 'SF Mono', Menlo, monospace" font-size="11" fill="#64748b">elfastc</text>
|
|
<text x="985" y="236" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="11.5" font-weight="700" fill="#c026d3">only exit: a screwdriver</text>
|
|
|
|
<!-- separator emphasising the two kinds of dark -->
|
|
<line x1="790" y1="110" x2="790" y2="260" stroke="#64748b" stroke-width="1.5" stroke-dasharray="4 6"></line>
|
|
<text x="790" y="98" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="11.5" fill="#64748b">identical from the network — different in the books</text>
|
|
|
|
<!-- the document layer -->
|
|
<rect x="80" y="300" width="1040" height="110" rx="16" fill="#7c3aed" fill-opacity="0.07" stroke="#7c3aed" stroke-width="2.6"></rect>
|
|
<text x="600" y="334" text-anchor="middle" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="16" font-weight="700" fill="#7c3aed">the document layer — git, continuous beneath every state</text>
|
|
<g font-family="ui-monospace, 'SF Mono', Menlo, monospace" font-size="12" fill="#0e1726">
|
|
<text x="180" y="374">machine config</text>
|
|
<text x="420" y="374">CNI inline manifest</text>
|
|
<text x="700" y="374">workloads (GitOps)</text>
|
|
<text x="950" y="374">credentials (sops)</text>
|
|
</g>
|
|
<g stroke="#7c3aed" stroke-width="1.6" fill="none" opacity="0.7">
|
|
<line x1="220" y1="260" x2="220" y2="300"></line>
|
|
<line x1="590" y1="260" x2="590" y2="300"></line>
|
|
<line x1="985" y1="260" x2="985" y2="300"></line>
|
|
</g>
|
|
|
|
<!-- footer -->
|
|
<text x="60" y="448" font-family="ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif" font-size="12" fill="#64748b">a node boots into exactly the machine its documents describe — power is just whether the document is currently being read</text>
|
|
</svg>
|