48 lines
5.0 KiB
XML
48 lines
5.0 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" width="760" height="1000" viewBox="0 0 760 1000" role="img" aria-labelledby="title desc">
|
||
<title id="title">Маршрут review для передачи синтетического AI-контекста</title>
|
||
<desc id="desc">Последовательность review начинается с record id и class, затем сверяет contract, egress destination, access и срок human authorization. Любое расхождение идёт в safe stop без внешней отправки.</desc>
|
||
<defs>
|
||
<marker id="arrow-review" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto"><path d="M0,0 L12,6 L0,12 Z" fill="#475569"/></marker>
|
||
<marker id="arrow-review-stop" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto"><path d="M0,0 L12,6 L0,12 Z" fill="#be123c"/></marker>
|
||
</defs>
|
||
<rect width="760" height="1000" rx="32" fill="#fffdf8"/>
|
||
<text x="42" y="58" fill="#1f2937" font-family="Arial, sans-serif" font-size="30" font-weight="700">Review egress: evidence до действия</text>
|
||
<text x="42" y="92" fill="#6b7280" font-family="Arial, sans-serif" font-size="20">Фиксированный учебный маршрут: он не делает реальный request.</text>
|
||
|
||
<rect x="52" y="126" width="656" height="110" rx="18" fill="#e0f2fe" stroke="#0284c7" stroke-width="3"/>
|
||
<text x="82" y="170" fill="#0c4a6e" font-family="Arial, sans-serif" font-size="27" font-weight="700">1. Record и class</text>
|
||
<text x="82" y="201" fill="#164e63" font-family="Arial, sans-serif" font-size="19">Сверить id, version, class, allowability</text>
|
||
<text x="82" y="226" fill="#164e63" font-family="Arial, sans-serif" font-size="19">и retention label.</text>
|
||
<line x1="380" y1="238" x2="380" y2="265" stroke="#475569" stroke-width="4" marker-end="url(#arrow-review)"/>
|
||
|
||
<rect x="52" y="272" width="656" height="110" rx="18" fill="#ecfccb" stroke="#65a30d" stroke-width="3"/>
|
||
<text x="82" y="316" fill="#365314" font-family="Arial, sans-serif" font-size="27" font-weight="700">2. Policy и contract</text>
|
||
<text x="82" y="347" fill="#3f6212" font-family="Arial, sans-serif" font-size="19">Проверить rule для class,</text>
|
||
<text x="82" y="374" fill="#3f6212" font-family="Arial, sans-serif" font-size="19">не название инструмента.</text>
|
||
<line x1="380" y1="384" x2="380" y2="411" stroke="#475569" stroke-width="4" marker-end="url(#arrow-review)"/>
|
||
|
||
<rect x="52" y="418" width="656" height="110" rx="18" fill="#fef3c7" stroke="#d97706" stroke-width="3"/>
|
||
<text x="82" y="462" fill="#78350f" font-family="Arial, sans-serif" font-size="27" font-weight="700">3. Egress gate</text>
|
||
<text x="82" y="493" fill="#92400e" font-family="Arial, sans-serif" font-size="18">Destination и route соответствуют scope;</text>
|
||
<text x="82" y="518" fill="#92400e" font-family="Arial, sans-serif" font-size="18">allow-list — только один факт.</text>
|
||
<line x1="380" y1="530" x2="380" y2="557" stroke="#475569" stroke-width="4" marker-end="url(#arrow-review)"/>
|
||
|
||
<rect x="52" y="564" width="656" height="110" rx="18" fill="#f3e8ff" stroke="#9333ea" stroke-width="3"/>
|
||
<text x="82" y="608" fill="#581c87" font-family="Arial, sans-serif" font-size="27" font-weight="700">4. Access и authorization</text>
|
||
<text x="82" y="639" fill="#6b21a8" font-family="Arial, sans-serif" font-size="18">Права requester, owner, scope и expiry</text>
|
||
<text x="82" y="664" fill="#6b21a8" font-family="Arial, sans-serif" font-size="18">сходятся на одной записи.</text>
|
||
<line x1="380" y1="676" x2="380" y2="703" stroke="#475569" stroke-width="4" marker-end="url(#arrow-review)"/>
|
||
|
||
<rect x="52" y="710" width="656" height="96" rx="18" fill="#dcfce7" stroke="#16a34a" stroke-width="3"/>
|
||
<text x="82" y="751" fill="#14532d" font-family="Arial, sans-serif" font-size="26" font-weight="700">Decision + citation + next owner question</text>
|
||
<text x="82" y="776" fill="#166534" font-family="Arial, sans-serif" font-size="18">Только fixed hand-off; egressPerformed</text>
|
||
<text x="82" y="800" fill="#166534" font-family="Arial, sans-serif" font-size="18">остаётся false.</text>
|
||
|
||
<path d="M52,470 C12,470 14,860 176,860" fill="none" stroke="#be123c" stroke-width="4" marker-end="url(#arrow-review-stop)"/>
|
||
<rect x="190" y="830" width="518" height="116" rx="18" fill="#fff1f2" stroke="#be123c" stroke-width="3"/>
|
||
<text x="220" y="875" fill="#881337" font-family="Arial, sans-serif" font-size="26" font-weight="700">Mismatch → safe stop</text>
|
||
<text x="220" y="906" fill="#9f1239" font-family="Arial, sans-serif" font-size="19">Записать reason/citation;</text>
|
||
<text x="220" y="932" fill="#9f1239" font-family="Arial, sans-serif" font-size="19">не обходить policy, не делать send.</text>
|
||
<text x="52" y="980" fill="#6b7280" font-family="Arial, sans-serif" font-size="18">Ни DPA, ни auth, ни firewall отдельно не равны всему маршруту.</text>
|
||
</svg>
|