Files
progcode/web/public/assets/editorial/2024/deprecation-2024-removal-gate.svg
T
huncode d6c9a8f75a
Build and deploy / deploy (push) Successful in 16s
revise November 2024 deprecation articles
2026-07-31 16:46:20 +03:00

39 lines
3.8 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 620" role="img" aria-labelledby="title desc">
<title id="title">Removal gate для active, unknown и migrated consumer</title>
<desc id="desc">Три ветки removal gate: активный потребитель требует миграции, неизвестный требует ограничить scope или сохранить совместимость, а мигрированные известные потребители разрешают только human review с остаточным риском. Далее показан отдельный change и restore boundary.</desc>
<rect width="800" height="620" fill="#111827"/>
<text x="48" y="55" fill="#f9fafb" font-family="Arial, sans-serif" font-size="28" font-weight="700">Последний consumer — это gate, не число</text>
<text x="48" y="84" fill="#cbd5e1" font-family="Arial, sans-serif" font-size="16">Известные строки и unknown остаются разными состояниями</text>
<rect x="48" y="127" width="210" height="164" rx="15" fill="#7f1d1d" stroke="#f87171" stroke-width="2"/>
<text x="73" y="165" fill="#fee2e2" font-family="Arial, sans-serif" font-size="22" font-weight="700">ACTIVE</text>
<text x="73" y="200" fill="#ffffff" font-family="Arial, sans-serif" font-size="16">named row uses</text>
<text x="73" y="225" fill="#ffffff" font-family="Arial, sans-serif" font-size="16">old contract</text>
<text x="73" y="264" fill="#fecaca" font-family="Arial, sans-serif" font-size="15">→ block removal</text>
<rect x="295" y="127" width="210" height="164" rx="15" fill="#713f12" stroke="#fbbf24" stroke-width="2"/>
<text x="320" y="165" fill="#fef3c7" font-family="Arial, sans-serif" font-size="22" font-weight="700">UNKNOWN</text>
<text x="320" y="200" fill="#ffffff" font-family="Arial, sans-serif" font-size="16">scope is not</text>
<text x="320" y="225" fill="#ffffff" font-family="Arial, sans-serif" font-size="16">proved complete</text>
<text x="320" y="264" fill="#fde68a" font-family="Arial, sans-serif" font-size="15">→ block automation</text>
<rect x="542" y="127" width="210" height="164" rx="15" fill="#14532d" stroke="#4ade80" stroke-width="2"/>
<text x="567" y="165" fill="#dcfce7" font-family="Arial, sans-serif" font-size="22" font-weight="700">MIGRATED</text>
<text x="567" y="200" fill="#ffffff" font-family="Arial, sans-serif" font-size="16">named rows have</text>
<text x="567" y="225" fill="#ffffff" font-family="Arial, sans-serif" font-size="16">replacement path</text>
<text x="567" y="264" fill="#bbf7d0" font-family="Arial, sans-serif" font-size="15">→ human review only</text>
<path d="M153 291 V345 H247" stroke="#f87171" stroke-width="4" fill="none"/>
<path d="M400 291 V345" stroke="#fbbf24" stroke-width="4" fill="none"/>
<path d="M647 291 V345 H553" stroke="#4ade80" stroke-width="4" fill="none"/>
<rect x="247" y="335" width="306" height="93" rx="15" fill="#1e293b" stroke="#94a3b8" stroke-width="2"/>
<text x="276" y="370" fill="#f8fafc" font-family="Arial, sans-serif" font-size="20" font-weight="700">Human removal review</text>
<text x="276" y="400" fill="#cbd5e1" font-family="Arial, sans-serif" font-size="15">contract · owner · notice · residual risk</text>
<path d="M400 428 V470" stroke="#94a3b8" stroke-width="4" fill="none"/>
<path d="M390 460 L400 478 L410 460" stroke="#94a3b8" stroke-width="4" fill="none"/>
<rect x="100" y="488" width="600" height="82" rx="15" fill="#172554" stroke="#60a5fa" stroke-width="2"/>
<text x="129" y="523" fill="#dbeafe" font-family="Arial, sans-serif" font-size="20" font-weight="700">Separate authorized removal change</text>
<text x="129" y="550" fill="#bfdbfe" font-family="Arial, sans-serif" font-size="15">stop condition + restore boundary; hidden-consumer absence is not promised</text>
</svg>