<mxfile host="app.diagrams.net" agent="hyoyoul-research-diagrams" version="24.7.17"><diagram id="before-architecture" name="BEFORE · GitHub runs the agent; HF routes inference"><mxGraphModel page="1" pageWidth="1120" pageHeight="690"><root><mxCell id="0"/><mxCell id="1" parent="0"/><mxCell id="S" value="Weekly schedule
Sunday 09:00 KST" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="30" y="90" width="260" height="78" as="geometry"/></mxCell><mxCell id="R" value="Public GitHub runner
ml-research + ML Intern" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="90" width="260" height="78" as="geometry"/></mxCell><mxCell id="D" value="Public paper sources
HF Papers / arXiv / search" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="90" width="260" height="78" as="geometry"/></mxCell><mxCell id="H" value="Hugging Face Router
HF credits / billing" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="270" width="260" height="78" as="geometry"/></mxCell><mxCell id="N" value="Novita inference
GLM-5.2" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="270" width="260" height="78" as="geometry"/></mxCell><mxCell id="V" value="Candidate validation
Python + blog schema" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="30" y="270" width="260" height="78" as="geometry"/></mxCell><mxCell id="P" value="Public immutable release
JSON / hash / attestation" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="30" y="470" width="260" height="78" as="geometry"/></mxCell><mxCell id="B" value="Blog importer
Staging / production gates" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="470" width="260" height="78" as="geometry"/></mxCell><mxCell id="W" value="Vercel
hyoyoul.com / Writing" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="470" width="260" height="78" as="geometry"/></mxCell><mxCell id="edge-0" value="starts" edge="1" parent="1" source="S" target="R" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-1" value="fetch tools" edge="1" parent="1" source="R" target="D" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-2" value="model calls" edge="1" parent="1" source="R" target="H" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-3" value="routes" edge="1" parent="1" source="H" target="N" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-4" value="candidate" edge="1" parent="1" source="R" target="V" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-5" value="accept" edge="1" parent="1" source="V" target="P" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-6" value="verified import" edge="1" parent="1" source="P" target="B" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-7" value="deploy" edge="1" parent="1" source="B" target="W" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell></root></mxGraphModel></diagram><diagram id="after-architecture" name="AFTER · Private Codex execution; public validated output"><mxGraphModel page="1" pageWidth="1120" pageHeight="850"><root><mxCell id="0"/><mxCell id="1" parent="0"/><mxCell id="S" value="Weekly schedule
GitHub-hosted Ubuntu" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="30" y="90" width="260" height="78" as="geometry"/></mxCell><mxCell id="C" value="Bounded evidence collector
No model / public sources" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="90" width="260" height="78" as="geometry"/></mxCell><mxCell id="D" value="Public primary sources
arXiv + HF Papers metadata" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="90" width="260" height="78" as="geometry"/></mxCell><mxCell id="K" value="Private Codex runner
Saved ChatGPT login" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="270" width="260" height="78" as="geometry"/></mxCell><mxCell id="O" value="OpenAI model service
Codex subscription allowance" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="270" width="260" height="78" as="geometry"/></mxCell><mxCell id="A" value="Private auth state
Restore + refresh + write-back" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#fff4df;strokeColor=#b58632;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="30" y="270" width="260" height="78" as="geometry"/></mxCell><mxCell id="V" value="Independent validation
Schema / sources / no secrets" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="450" width="260" height="78" as="geometry"/></mxCell><mxCell id="P" value="Public release workflow
No subscription credentials" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="450" width="260" height="78" as="geometry"/></mxCell><mxCell id="F" value="Stop + notify owner
No invalid / partial publication" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#fff0ee;strokeColor=#bd6a61;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="30" y="450" width="260" height="78" as="geometry"/></mxCell><mxCell id="B" value="Existing blog importer
Immutable release checks" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="630" width="260" height="78" as="geometry"/></mxCell><mxCell id="W" value="Staging → production
Writing publication verified" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="630" width="260" height="78" as="geometry"/></mxCell><mxCell id="edge-0" value="start" edge="1" parent="1" source="S" target="C" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-1" value="bounded fetch" edge="1" parent="1" source="C" target="D" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-2" value="evidence" edge="1" parent="1" source="C" target="K" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-3" value="private session" edge="1" parent="1" source="A" target="K" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-4" value="subscription" edge="1" parent="1" source="K" target="O" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-5" value="JSON only" edge="1" parent="1" source="K" target="V" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-6" value="reject" edge="1" parent="1" source="V" target="F" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-7" value="data-only handoff" edge="1" parent="1" source="V" target="P" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-8" value="verified release" edge="1" parent="1" source="P" target="B" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-9" value="gated deploy" edge="1" parent="1" source="B" target="W" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell></root></mxGraphModel></diagram><diagram id="publication-flow" name="FLOW · Fail closed, then publish once"><mxGraphModel page="1" pageWidth="1120" pageHeight="1130"><root><mxCell id="0"/><mxCell id="1" parent="0"/><mxCell id="S" value="Scheduled / manual start
One serialized workflow stream" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="80" width="260" height="78" as="geometry"/></mxCell><mxCell id="E" value="Enabled + private + main?
Credentials and date valid?" style="rhombus;whiteSpace=wrap;html=0;fillColor=#e8f5ed;strokeColor=#56866b;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="220" width="260" height="92" as="geometry"/></mxCell><mxCell id="C" value="Collect bounded evidence
Require enough verified papers" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="390" width="260" height="78" as="geometry"/></mxCell><mxCell id="K" value="Run Codex synthesis
Hard time / output boundaries" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="550" width="260" height="78" as="geometry"/></mxCell><mxCell id="A" value="Persist refreshed auth
Run even after synthesis failure" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#fff4df;strokeColor=#b58632;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="30" y="550" width="260" height="78" as="geometry"/></mxCell><mxCell id="V" value="Auth saved + digest valid?
Sources, schema, duplicate checks" style="rhombus;whiteSpace=wrap;html=0;fillColor=#e8f5ed;strokeColor=#56866b;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="710" width="260" height="92" as="geometry"/></mxCell><mxCell id="P" value="Publish immutable release
Then existing deployment gates" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#edf4ff;strokeColor=#6684aa;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="420" y="910" width="260" height="78" as="geometry"/></mxCell><mxCell id="F" value="Stop / owner alert
No paid-provider fallback" style="rounded=1;whiteSpace=wrap;html=0;fillColor=#fff0ee;strokeColor=#bd6a61;fontColor=#15283f;fontSize=16;" vertex="1" parent="1"><mxGeometry x="810" y="550" width="260" height="92" as="geometry"/></mxCell><mxCell id="edge-0" value="" edge="1" parent="1" source="S" target="E" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-1" value="yes" edge="1" parent="1" source="E" target="C" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-2" value="no" edge="1" parent="1" source="E" target="F" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-3" value="evidence ready" edge="1" parent="1" source="C" target="K" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-4" value="insufficient" edge="1" parent="1" source="C" target="F" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-5" value="always" edge="1" parent="1" source="K" target="A" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-6" value="saved" edge="1" parent="1" source="A" target="V" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-7" value="candidate" edge="1" parent="1" source="K" target="V" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-8" value="save failed" edge="1" parent="1" source="A" target="F" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-9" value="yes" edge="1" parent="1" source="V" target="P" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell><mxCell id="edge-10" value="no" edge="1" parent="1" source="V" target="F" style="edgeStyle=orthogonalEdgeStyle;rounded=1;endArrow=block;fontSize=14;"><mxGeometry relative="1" as="geometry"/></mxCell></root></mxGraphModel></diagram><diagram id="before-sequence" name="BEFORE · Repeated model / search loop"><mxGraphModel page="1" pageWidth="1120" pageHeight="850"><root><mxCell id="0"/><mxCell id="1" parent="0"/><mxCell id="actor0" value="GitHub runner" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="22" y="70" width="196" height="700" as="geometry"/></mxCell><mxCell id="actor1" value="HF Router" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="242" y="70" width="196" height="700" as="geometry"/></mxCell><mxCell id="actor2" value="Novita GLM" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="462" y="70" width="196" height="700" as="geometry"/></mxCell><mxCell id="actor3" value="Paper sources" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="682" y="70" width="196" height="700" as="geometry"/></mxCell><mxCell id="actor4" value="Release / blog" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="902" y="70" width="196" height="700" as="geometry"/></mxCell><mxCell id="message0" value="1. Prompt + accumulated context" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="175" as="sourcePoint"/><mxPoint x="340" y="175" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message1" value="2. Request inference" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="340" y="245" as="sourcePoint"/><mxPoint x="560" y="245" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message2" value="3. Model chooses next search tool" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="560" y="315" as="sourcePoint"/><mxPoint x="340" y="315" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message3" value="4. Return tool decision through router" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="340" y="385" as="sourcePoint"/><mxPoint x="120" y="385" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message4" value="5. Fetch paper / search results" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="455" as="sourcePoint"/><mxPoint x="780" y="455" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message5" value="6. Return evidence" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="780" y="525" as="sourcePoint"/><mxPoint x="120" y="525" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message6" value="7. Repeat reasoning / search loop" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="595" as="sourcePoint"/><mxPoint x="340" y="595" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message7" value="8. Final digest, if model submits" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="340" y="665" as="sourcePoint"/><mxPoint x="120" y="665" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message8" value="9. Validate → release → gated publication" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="735" as="sourcePoint"/><mxPoint x="1000" y="735" as="targetPoint"/></mxGeometry></mxCell></root></mxGraphModel></diagram><diagram id="after-sequence" name="AFTER · Bounded synthesis and durable private auth"><mxGraphModel page="1" pageWidth="1120" pageHeight="990"><root><mxCell id="0"/><mxCell id="1" parent="0"/><mxCell id="actor0" value="Private runner" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="22" y="70" width="196" height="840" as="geometry"/></mxCell><mxCell id="actor1" value="Secret store" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="242" y="70" width="196" height="840" as="geometry"/></mxCell><mxCell id="actor2" value="Paper sources" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="462" y="70" width="196" height="840" as="geometry"/></mxCell><mxCell id="actor3" value="Codex / OpenAI" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="682" y="70" width="196" height="840" as="geometry"/></mxCell><mxCell id="actor4" value="Public publisher" style="shape=umlLifeline;perimeter=lifelinePerimeter;size=60;fontSize=16;fillColor=#edf4ff;" vertex="1" parent="1"><mxGeometry x="902" y="70" width="196" height="840" as="geometry"/></mxCell><mxCell id="message0" value="1. Collect bounded primary-source evidence" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="175" as="sourcePoint"/><mxPoint x="560" y="175" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message1" value="2. Return evidence and provenance" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="560" y="245" as="sourcePoint"/><mxPoint x="120" y="245" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message2" value="3. Restore CI-only login after freshness checks" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="315" as="sourcePoint"/><mxPoint x="340" y="315" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message3" value="4. Auth available only in private runner" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="340" y="385" as="sourcePoint"/><mxPoint x="120" y="385" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message4" value="5. codex exec: synthesize structured digest" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="455" as="sourcePoint"/><mxPoint x="780" y="455" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message5" value="6. Candidate + refreshed local auth" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="780" y="525" as="sourcePoint"/><mxPoint x="120" y="525" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message6" value="7. ALWAYS save latest auth state" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="595" as="sourcePoint"/><mxPoint x="340" y="595" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message7" value="8. Confirm durable save" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="340" y="665" as="sourcePoint"/><mxPoint x="120" y="665" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message8" value="9. Validate exact bytes and publication policy" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="735" as="sourcePoint"/><mxPoint x="185" y="760" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message9" value="10. Data-only handoff after every gate passes" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="120" y="805" as="sourcePoint"/><mxPoint x="1000" y="805" as="targetPoint"/></mxGeometry></mxCell><mxCell id="message10" value="11. Dispatch accepted; publication still pending" style="endArrow=block;html=0;fontSize=14;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="1000" y="875" as="sourcePoint"/><mxPoint x="120" y="875" as="targetPoint"/></mxGeometry></mxCell></root></mxGraphModel></diagram></mxfile>
