| <svg xmlns="http://www.w3.org/2000/svg" width="1600" height="1000" viewBox="0 0 1600 1000" role="img" aria-labelledby="title desc"> |
| <title id="title">Peter hybrid autonomous execution loop</title> |
| <desc id="desc">A six-stage goal loop surrounded by tracker, recovery, human-gate, verification, and stop-condition rails.</desc> |
| <defs> |
| <linearGradient id="bg" x1="0" y1="0" x2="1" y2="1"><stop stop-color="#07111f"/><stop offset="1" stop-color="#11233f"/></linearGradient> |
| <linearGradient id="card" x1="0" y1="0" x2="1" y2="1"><stop stop-color="#10243c"/><stop offset="1" stop-color="#0b1729"/></linearGradient> |
| <filter id="shadow"><feDropShadow dx="0" dy="10" stdDeviation="12" flood-opacity="0.4"/></filter> |
| <marker id="arrow" markerWidth="10" markerHeight="10" refX="8" refY="5" orient="auto"><path d="M0 0L10 5L0 10Z" fill="#52dfca"/></marker> |
| </defs> |
| <rect width="1600" height="1000" fill="url(#bg)"/> |
| <g font-family="Inter, ui-sans-serif, system-ui, sans-serif"> |
| <text x="90" y="82" fill="#90a8cf" font-size="22" font-weight="700" letter-spacing="5">THE INTERNAL EXECUTION CONTRACT</text> |
| <text x="90" y="145" fill="#f8fbff" font-size="50" font-weight="800">Peter hybrid autonomous loop</text> |
| <text x="90" y="188" fill="#b7c7e4" font-size="24">Persistent progress without performative activity</text> |
|
|
| <g transform="translate(470 245)"> |
| <circle cx="330" cy="310" r="276" fill="#0a1628" stroke="#314e70" stroke-width="2"/> |
| <circle cx="330" cy="310" r="176" fill="#102943" stroke="#52dfca" stroke-width="2" stroke-dasharray="8 10"/> |
| <text x="330" y="278" text-anchor="middle" fill="#8fa8d0" font-size="18" letter-spacing="3">ONE GOAL</text> |
| <text x="330" y="324" text-anchor="middle" fill="#f8fbff" font-size="35" font-weight="800">PERSISTENT</text> |
| <text x="330" y="365" text-anchor="middle" fill="#f6b95e" font-size="35" font-weight="800">EVIDENCE</text> |
| <text x="330" y="405" text-anchor="middle" fill="#8fa8d0" font-size="18">stop only at VERIFIED</text> |
|
|
| <g filter="url(#shadow)"> |
| <g transform="translate(250 0)"><rect width="160" height="74" rx="22" fill="#18354b" stroke="#52dfca"/><text x="80" y="46" text-anchor="middle" fill="#f7fbff" font-size="23" font-weight="800">DEFINE</text></g> |
| <g transform="translate(500 123)"><rect width="160" height="74" rx="22" fill="#2c2948" stroke="#8898ff"/><text x="80" y="46" text-anchor="middle" fill="#f7fbff" font-size="23" font-weight="800">BUILD</text></g> |
| <g transform="translate(500 420)"><rect width="160" height="74" rx="22" fill="#43243b" stroke="#f37b9e"/><text x="80" y="46" text-anchor="middle" fill="#f7fbff" font-size="23" font-weight="800">ATTACK</text></g> |
| <g transform="translate(250 545)"><rect width="160" height="74" rx="22" fill="#45351e" stroke="#ffba55"/><text x="80" y="46" text-anchor="middle" fill="#f7fbff" font-size="23" font-weight="800">CHECK</text></g> |
| <g transform="translate(0 420)"><rect width="160" height="74" rx="22" fill="#243a33" stroke="#69d6a8"/><text x="80" y="46" text-anchor="middle" fill="#f7fbff" font-size="23" font-weight="800">FIX</text></g> |
| <g transform="translate(0 123)"><rect width="160" height="74" rx="22" fill="#173548" stroke="#4abddd"/><text x="80" y="46" text-anchor="middle" fill="#f7fbff" font-size="23" font-weight="800">LOOP</text></g> |
| </g> |
| <path d="M412 50C474 68 520 99 557 130" fill="none" stroke="#52dfca" stroke-width="4" marker-end="url(#arrow)"/> |
| <path d="M619 201C650 275 650 345 620 415" fill="none" stroke="#52dfca" stroke-width="4" marker-end="url(#arrow)"/> |
| <path d="M550 497C506 532 460 552 414 572" fill="none" stroke="#52dfca" stroke-width="4" marker-end="url(#arrow)"/> |
| <path d="M246 582C198 568 154 539 119 499" fill="none" stroke="#52dfca" stroke-width="4" marker-end="url(#arrow)"/> |
| <path d="M43 414C15 342 15 272 43 202" fill="none" stroke="#52dfca" stroke-width="4" marker-end="url(#arrow)"/> |
| <path d="M112 118C154 82 199 62 246 48" fill="none" stroke="#52dfca" stroke-width="4" marker-end="url(#arrow)"/> |
| </g> |
|
|
| <g transform="translate(80 270)"> |
| <rect width="300" height="124" rx="24" fill="url(#card)" stroke="#344f70"/> |
| <text x="28" y="40" fill="#52dfca" font-size="20" font-weight="800">TRACKER</text> |
| <text x="28" y="72" fill="#dbe7f8" font-size="18">Status · next action · proof</text> |
| <text x="28" y="100" fill="#8fa8d0" font-size="16">Survives compaction and handoff</text> |
| </g> |
| <g transform="translate(80 430)"> |
| <rect width="300" height="152" rx="24" fill="url(#card)" stroke="#344f70"/> |
| <text x="28" y="40" fill="#8898ff" font-size="20" font-weight="800">READINESS + RECOVERY</text> |
| <text x="28" y="72" fill="#dbe7f8" font-size="18">Git · diff · services · leases</text> |
| <text x="28" y="100" fill="#dbe7f8" font-size="18">dirty state · ownership · baseline</text> |
| <text x="28" y="128" fill="#8fa8d0" font-size="16">Handoff is a claim; re-check source</text> |
| </g> |
| <g transform="translate(80 620)"> |
| <rect width="300" height="152" rx="24" fill="url(#card)" stroke="#344f70"/> |
| <text x="28" y="40" fill="#f6b95e" font-size="20" font-weight="800">HUMAN GATES</text> |
| <text x="28" y="72" fill="#dbe7f8" font-size="18">Product truth · taste · authority</text> |
| <text x="28" y="100" fill="#dbe7f8" font-size="18">Cost · publish · irreversible action</text> |
| <text x="28" y="128" fill="#8fa8d0" font-size="16">Everything else stays AFK-safe</text> |
| </g> |
|
|
| <g transform="translate(1220 270)"> |
| <rect width="300" height="124" rx="24" fill="url(#card)" stroke="#344f70"/> |
| <text x="28" y="40" fill="#f37b9e" font-size="20" font-weight="800">SOURCE-BLIND SCENARIOS</text> |
| <text x="28" y="72" fill="#dbe7f8" font-size="18">Happy · edge · error · abuse</text> |
| <text x="28" y="100" fill="#8fa8d0" font-size="16">Regression proves user behavior</text> |
| </g> |
| <g transform="translate(1220 430)"> |
| <rect width="300" height="152" rx="24" fill="url(#card)" stroke="#344f70"/> |
| <text x="28" y="40" fill="#69d6a8" font-size="20" font-weight="800">SELECTIVE GATES</text> |
| <text x="28" y="72" fill="#dbe7f8" font-size="18">Unit · integration · build</text> |
| <text x="28" y="100" fill="#dbe7f8" font-size="18">Browser · a11y · security · perf</text> |
| <text x="28" y="128" fill="#8fa8d0" font-size="16">Enough proof, not max ceremony</text> |
| </g> |
| <g transform="translate(1220 620)"> |
| <rect width="300" height="152" rx="24" fill="url(#card)" stroke="#344f70"/> |
| <text x="28" y="40" fill="#4abddd" font-size="20" font-weight="800">FRESH REVIEW</text> |
| <text x="28" y="72" fill="#dbe7f8" font-size="18">Freeze revision · verify finding</text> |
| <text x="28" y="100" fill="#dbe7f8" font-size="18">Fix successor · max 3 cycles</text> |
| <text x="28" y="128" fill="#8fa8d0" font-size="16">Clean verdict unlocks landing</text> |
| </g> |
|
|
| <g transform="translate(330 900)"> |
| <rect width="940" height="64" rx="22" fill="#0a1728" stroke="#446684"/> |
| <text x="470" y="41" text-anchor="middle" fill="#f7fbff" font-size="21" font-weight="700">RIGHT-SIZED EFFORT: use only the work needed to change or prove the next decision</text> |
| </g> |
| </g> |
| </svg> |
|
|