horos / routing.svg
jonny's picture
diagram: HOROS leads, Greek is the subtitle (rho reads as p to Latin eyes)
e216475 verified
|
Raw
History Blame Contribute Delete
7.42 kB
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 980 560" font-family="-apple-system, 'Segoe UI', Helvetica, Arial, sans-serif">
<!-- panel: self-backgrounded so it reads identically on HF light and dark themes -->
<rect x="0" y="0" width="980" height="560" rx="14" fill="#15171e"/>
<!-- ======================= incoming questions ======================= -->
<text x="40" y="52" fill="#8b90a0" font-size="13" letter-spacing="2">QUESTIONS</text>
<g font-size="13.5">
<rect x="40" y="70" width="250" height="52" rx="8" fill="#1f222c" stroke="#3d9970" stroke-width="1.2"/>
<text x="56" y="92" fill="#e8eaf0">“how has my sleep been</text>
<text x="56" y="110" fill="#e8eaf0">this week?”</text>
<rect x="40" y="136" width="250" height="52" rx="8" fill="#1f222c" stroke="#3d9970" stroke-width="1.2"/>
<text x="56" y="158" fill="#e8eaf0">“am I free after lunch Friday</text>
<text x="56" y="176" fill="#e8eaf0">according to my calendar?”</text>
<rect x="40" y="202" width="250" height="52" rx="8" fill="#1f222c" stroke="#7d8598" stroke-width="1.2"/>
<text x="56" y="224" fill="#e8eaf0">“what’s the capital</text>
<text x="56" y="242" fill="#e8eaf0">of France?”</text>
<rect x="40" y="268" width="250" height="52" rx="8" fill="#1f222c" stroke="#d4a24e" stroke-width="1.2"/>
<text x="56" y="290" fill="#e8eaf0">“am I overcommitted</text>
<text x="56" y="308" fill="#e8eaf0">right now?”</text>
<rect x="40" y="334" width="250" height="52" rx="8" fill="#1f222c" stroke="#d4a24e" stroke-width="1.2"/>
<text x="56" y="356" fill="#e8eaf0">“what’s been eating</text>
<text x="56" y="374" fill="#e8eaf0">my evenings?”</text>
</g>
<!-- arrows into the stone -->
<g stroke="#4a4f5e" stroke-width="1.6" fill="none">
<path d="M292 96 C 330 96, 340 200, 378 218"/>
<path d="M292 162 C 326 162, 338 210, 378 228"/>
<path d="M292 228 C 322 228, 334 236, 378 240"/>
<path d="M292 294 C 326 294, 338 262, 378 250"/>
<path d="M292 360 C 330 360, 340 276, 378 260"/>
</g>
<!-- ======================= the horos stone ======================= -->
<!-- a stele: wider at the base, like the boundary stones of the Athenian agora -->
<path d="M 398 148 L 470 148 L 482 380 L 386 380 Z" fill="#262a36" stroke="#59607a" stroke-width="2"/>
<path d="M 398 148 L 470 148 L 472 172 L 396 172 Z" fill="#2e3342"/>
<text x="434" y="214" text-anchor="middle" fill="#e8eaf0" font-size="24" font-weight="600" letter-spacing="3">HOROS</text>
<text x="434" y="240" text-anchor="middle" fill="#8b90a0" font-size="14" font-family="Georgia, 'Times New Roman', serif">ὅρος · “boundary stone”</text>
<text x="434" y="262" text-anchor="middle" fill="#8b90a0" font-size="11">268 MB · on-device</text>
<!-- 15 sigmoid ticks carved into the stone -->
<g fill="#59607a">
<rect x="399" y="296" width="3" height="22"/>
<rect x="404" y="306" width="3" height="12"/>
<rect x="409" y="288" width="3" height="30"/>
<rect x="414" y="310" width="3" height="8"/>
<rect x="419" y="300" width="3" height="18"/>
<rect x="424" y="308" width="3" height="10"/>
<rect x="429" y="292" width="3" height="26"/>
<rect x="434" y="304" width="3" height="14"/>
<rect x="439" y="298" width="3" height="20"/>
<rect x="444" y="309" width="3" height="9"/>
<rect x="449" y="294" width="3" height="24"/>
<rect x="454" y="307" width="3" height="11"/>
<rect x="459" y="302" width="3" height="16"/>
<rect x="464" y="290" width="3" height="28"/>
<rect x="469" y="305" width="3" height="13"/>
</g>
<text x="434" y="402" text-anchor="middle" fill="#8b90a0" font-size="11">14 scope sigmoids + none</text>
<text x="434" y="420" text-anchor="middle" fill="#8b90a0" font-size="11">τ_high 0.70 · τ_low 0.55</text>
<!-- ======================= branch arrows ======================= -->
<g stroke-width="2" fill="none">
<path d="M482 200 C 540 178, 560 150, 610 138" stroke="#3d9970"/>
<path d="M482 232 C 540 226, 560 216, 610 210" stroke="#3d9970"/>
<path d="M482 268 C 540 276, 560 288, 610 292" stroke="#7d8598"/>
<path d="M482 300 C 540 330, 560 366, 610 372" stroke="#d4a24e"/>
<path d="M480 330 C 536 388, 560 438, 610 446" stroke="#d4a24e"/>
</g>
<!-- ======================= outcomes ======================= -->
<text x="610" y="52" fill="#8b90a0" font-size="13" letter-spacing="2">WHAT HAPPENS</text>
<!-- ACT single -->
<rect x="610" y="104" width="240" height="56" rx="8" fill="#17251f" stroke="#3d9970" stroke-width="1.5"/>
<text x="626" y="127" fill="#63c993" font-size="13" font-weight="600">ACT · health:read</text>
<text x="626" y="147" fill="#9aa3b5" font-size="12">one scope ≥ τ_high, nothing uncertain</text>
<!-- ACT multi -->
<rect x="610" y="176" width="240" height="70" rx="8" fill="#17251f" stroke="#3d9970" stroke-width="1.5"/>
<text x="626" y="199" fill="#63c993" font-size="13" font-weight="600">ACT · availability:read</text>
<text x="662" y="217" fill="#63c993" font-size="13" font-weight="600">+ schedule:read</text>
<text x="626" y="236" fill="#9aa3b5" font-size="11.5">the whole set is used, not escalated</text>
<!-- confident none -->
<rect x="610" y="262" width="240" height="56" rx="8" fill="#20232c" stroke="#7d8598" stroke-width="1.5"/>
<text x="626" y="285" fill="#aab2c4" font-size="13" font-weight="600">ABSTAIN · confident none</text>
<text x="626" y="305" fill="#9aa3b5" font-size="11.5">none ≥ τ_high — touches no personal data</text>
<!-- escalate ambiguity -->
<rect x="610" y="342" width="240" height="56" rx="8" fill="#2a2317" stroke="#d4a24e" stroke-width="1.5"/>
<text x="626" y="365" fill="#e3b866" font-size="13" font-weight="600">ESCALATE · ambiguity</text>
<text x="626" y="385" fill="#9aa3b5" font-size="12">any label caught in [τ_low, τ_high)</text>
<!-- escalate ignorance -->
<rect x="610" y="416" width="240" height="56" rx="8" fill="#2a2317" stroke="#d4a24e" stroke-width="1.5"/>
<text x="626" y="439" fill="#e3b866" font-size="13" font-weight="600">ESCALATE · ignorance</text>
<text x="626" y="459" fill="#9aa3b5" font-size="12">no signal anywhere, none included</text>
<!-- LLM box -->
<rect x="884" y="368" width="66" height="86" rx="8" fill="#1f222c" stroke="#8b90a0" stroke-width="1.5" stroke-dasharray="5 3"/>
<text x="917" y="404" text-anchor="middle" fill="#c9cedb" font-size="13" font-weight="600">LLM</text>
<text x="917" y="422" text-anchor="middle" fill="#8b90a0" font-size="10">the pack’s</text>
<text x="917" y="436" text-anchor="middle" fill="#8b90a0" font-size="10">fallback</text>
<g stroke="#d4a24e" stroke-width="1.6" fill="none">
<path d="M850 370 C 866 376, 872 384, 884 392"/>
<path d="M850 444 C 866 442, 872 438, 884 430"/>
</g>
<text x="917" y="472" text-anchor="middle" fill="#8b90a0" font-size="10">~1 turn in 6</text>
<!-- footer rule -->
<line x1="40" y1="502" x2="940" y2="502" stroke="#2c3040"/>
<text x="40" y="530" fill="#8b90a0" font-size="12.5">Horos routes on <tspan fill="#c9cedb">uncertainty, never on cardinality</tspan> — a confident two-scope answer is the job, not a doubt.</text>
<text x="40" y="548" fill="#8b90a0" font-size="12.5">Every scope it emits is still checked by the permission gate. Horos is a router, not an authorizer.</text>
</svg>