This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 720 1270" role="img" aria-labelledby="title desc">
|
||||
<title id="title">Учебная схема решения в разборе инцидента</title>
|
||||
<desc id="desc">Вертикальная схема связывает записанное наблюдение с гипотезой, ограниченным действием, ожидаемой проверкой и отдельной плановой профилактикой.</desc>
|
||||
<defs>
|
||||
<linearGradient id="background" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0%" stop-color="#15172a"/>
|
||||
<stop offset="100%" stop-color="#20264a"/>
|
||||
</linearGradient>
|
||||
<marker id="arrow" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto">
|
||||
<path d="M0,0 L12,6 L0,12 Z" fill="#8da5ca"/>
|
||||
</marker>
|
||||
<filter id="shadow" x="-10%" y="-10%" width="120%" height="130%">
|
||||
<feDropShadow dx="0" dy="8" stdDeviation="8" flood-color="#090a16" flood-opacity=".36"/>
|
||||
</filter>
|
||||
</defs>
|
||||
<rect width="720" height="1270" rx="32" fill="url(#background)"/>
|
||||
<text x="54" y="76" fill="#fbfcff" font-family="Arial, sans-serif" font-size="42" font-weight="700">Decision record</text>
|
||||
<text x="54" y="114" fill="#c1c9e8" font-family="Arial, sans-serif" font-size="24">От факта к проверке без поиска виноватого</text>
|
||||
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="62" y="168" width="596" height="158" rx="22" fill="#293356" stroke="#62b8ff" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="98" y="218" fill="#a8dcff" font-family="Arial, sans-serif" font-size="28" font-weight="700">E2 · записанное наблюдение</text>
|
||||
<text x="98" y="257" fill="#f4f7ff" font-family="Arial, sans-serif" font-size="24">После mapper отсутствует currency</text>
|
||||
<text x="98" y="292" fill="#c1c9e8" font-family="Arial, sans-serif" font-size="21">evidence: значение на contract boundary</text>
|
||||
|
||||
<line x1="360" y1="326" x2="360" y2="380" stroke="#8da5ca" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="62" y="396" width="596" height="158" rx="22" fill="#342e5c" stroke="#bd91ff" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="98" y="446" fill="#decaff" font-family="Arial, sans-serif" font-size="28" font-weight="700">H1 · гипотеза</text>
|
||||
<text x="98" y="485" fill="#f4f7ff" font-family="Arial, sans-serif" font-size="24">Новый mapper мог потерять поле</text>
|
||||
<text x="98" y="520" fill="#c1c9e8" font-family="Arial, sans-serif" font-size="21">не факт; ссылка остаётся на E2</text>
|
||||
|
||||
<line x1="360" y1="554" x2="360" y2="608" stroke="#8da5ca" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="62" y="624" width="596" height="178" rx="22" fill="#214b48" stroke="#62d69d" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="98" y="674" fill="#a9f0ca" font-family="Arial, sans-serif" font-size="28" font-weight="700">D1 / A1 · решение и действие</text>
|
||||
<text x="98" y="713" fill="#f4f7ff" font-family="Arial, sans-serif" font-size="24">Оставить прежний mapper в fixture</text>
|
||||
<text x="98" y="748" fill="#c5e8dc" font-family="Arial, sans-serif" font-size="21">trigger: H1 · граница: учебная ветка</text>
|
||||
<text x="98" y="778" fill="#c5e8dc" font-family="Arial, sans-serif" font-size="21">не retry и не новый timeout без факта</text>
|
||||
|
||||
<line x1="360" y1="802" x2="360" y2="856" stroke="#8da5ca" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="62" y="872" width="596" height="158" rx="22" fill="#214b48" stroke="#62d69d" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="98" y="922" fill="#a9f0ca" font-family="Arial, sans-serif" font-size="28" font-weight="700">V1 · expected check</text>
|
||||
<text x="98" y="961" fill="#f4f7ff" font-family="Arial, sans-serif" font-size="24">Контролируемый вход вернул allowed</text>
|
||||
<text x="98" y="996" fill="#c5e8dc" font-family="Arial, sans-serif" font-size="21">и сохранил обязательное поле</text>
|
||||
|
||||
<line x1="360" y1="1030" x2="360" y2="1084" stroke="#8da5ca" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="62" y="1100" width="596" height="112" rx="22" fill="#62441f" stroke="#f4b64a" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="98" y="1148" fill="#ffd98f" font-family="Arial, sans-serif" font-size="28" font-weight="700">P1 · профилактика: planned</text>
|
||||
<text x="98" y="1186" fill="#fff4dc" font-family="Arial, sans-serif" font-size="22">Contract fixture отклоняет mapper без currency</text>
|
||||
<text x="360" y="1250" text-anchor="middle" fill="#c1c9e8" font-family="Arial, sans-serif" font-size="22">Идея не равна выполненной проверке</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.8 KiB |
@@ -0,0 +1,56 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 720 1280" role="img" aria-labelledby="title desc">
|
||||
<title id="title">Цикл обучения после учебного инцидента</title>
|
||||
<desc id="desc">Вертикальный цикл показывает сбор факта, ограниченное действие, проверку, плановую профилактику и запуск новой проверки при следующем изменении.</desc>
|
||||
<defs>
|
||||
<linearGradient id="background" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0%" stop-color="#14242a"/>
|
||||
<stop offset="100%" stop-color="#182c36"/>
|
||||
</linearGradient>
|
||||
<marker id="arrow" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto">
|
||||
<path d="M0,0 L12,6 L0,12 Z" fill="#93b7b7"/>
|
||||
</marker>
|
||||
<filter id="shadow" x="-10%" y="-10%" width="120%" height="130%">
|
||||
<feDropShadow dx="0" dy="8" stdDeviation="8" flood-color="#071014" flood-opacity=".36"/>
|
||||
</filter>
|
||||
</defs>
|
||||
<rect width="720" height="1280" rx="32" fill="url(#background)"/>
|
||||
<text x="54" y="76" fill="#fbfffe" font-family="Arial, sans-serif" font-size="42" font-weight="700">Цикл после разбора</text>
|
||||
<text x="54" y="114" fill="#b9d8d5" font-family="Arial, sans-serif" font-size="24">Профилактика закрывает не текст, а следующую проверку</text>
|
||||
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="94" y="174" width="532" height="136" rx="24" fill="#263f4d" stroke="#64c6e5" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="132" y="224" fill="#a7e5f7" font-family="Arial, sans-serif" font-size="29" font-weight="700">1. Собрать факт</text>
|
||||
<text x="132" y="263" fill="#f2ffff" font-family="Arial, sans-serif" font-size="23">Симптом, граница, evidence</text>
|
||||
|
||||
<line x1="360" y1="310" x2="360" y2="364" stroke="#93b7b7" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="94" y="380" width="532" height="136" rx="24" fill="#354061" stroke="#c1a3ff" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="132" y="430" fill="#e0d3ff" font-family="Arial, sans-serif" font-size="29" font-weight="700">2. Сузить гипотезу</text>
|
||||
<text x="132" y="469" fill="#f2ffff" font-family="Arial, sans-serif" font-size="23">Одна связь со старым observation</text>
|
||||
|
||||
<line x1="360" y1="516" x2="360" y2="570" stroke="#93b7b7" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="94" y="586" width="532" height="136" rx="24" fill="#24544d" stroke="#67dda3" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="132" y="636" fill="#b4f4d2" font-family="Arial, sans-serif" font-size="29" font-weight="700">3. Ограничить действие</text>
|
||||
<text x="132" y="675" fill="#f2ffff" font-family="Arial, sans-serif" font-size="23">Обратимый шаг с ясной границей</text>
|
||||
|
||||
<line x1="360" y1="722" x2="360" y2="776" stroke="#93b7b7" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="94" y="792" width="532" height="136" rx="24" fill="#24544d" stroke="#67dda3" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="132" y="842" fill="#b4f4d2" font-family="Arial, sans-serif" font-size="29" font-weight="700">4. Проверить эффект</text>
|
||||
<text x="132" y="881" fill="#f2ffff" font-family="Arial, sans-serif" font-size="23">V1 относится к действию, не к легенде</text>
|
||||
|
||||
<line x1="360" y1="928" x2="360" y2="982" stroke="#93b7b7" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="94" y="998" width="532" height="136" rx="24" fill="#654920" stroke="#f2bd58" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="132" y="1048" fill="#ffe0a1" font-family="Arial, sans-serif" font-size="29" font-weight="700">5. Сделать профилактику</text>
|
||||
<text x="132" y="1087" fill="#fff8e8" font-family="Arial, sans-serif" font-size="23">Тест или контракт со своим check</text>
|
||||
|
||||
<path d="M628 1066 C690 1066,690 1186,604 1186 L144 1186 C80 1186,80 1148,80 1118" fill="none" stroke="#93b7b7" stroke-width="6" marker-end="url(#arrow)"/>
|
||||
<text x="360" y="1240" text-anchor="middle" fill="#b9d8d5" font-family="Arial, sans-serif" font-size="22">Следующее изменение снова проходит проверку</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.3 KiB |
@@ -0,0 +1,73 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 720 1290" role="img" aria-labelledby="title desc">
|
||||
<title id="title">Учебная временная шкала разбора инцидента</title>
|
||||
<desc id="desc">Вертикальная схема показывает порядок от симптома и наблюдений через гипотезу и ограниченное действие к проверке и плановой профилактике.</desc>
|
||||
<defs>
|
||||
<linearGradient id="background" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0%" stop-color="#101827"/>
|
||||
<stop offset="100%" stop-color="#16243a"/>
|
||||
</linearGradient>
|
||||
<filter id="shadow" x="-10%" y="-10%" width="120%" height="130%">
|
||||
<feDropShadow dx="0" dy="8" stdDeviation="8" flood-color="#050914" flood-opacity=".34"/>
|
||||
</filter>
|
||||
</defs>
|
||||
<rect width="720" height="1290" rx="32" fill="url(#background)"/>
|
||||
<text x="54" y="76" fill="#f8fbff" font-family="Arial, sans-serif" font-size="42" font-weight="700">Разбор: порядок фактов</text>
|
||||
<text x="54" y="114" fill="#b7c8df" font-family="Arial, sans-serif" font-size="24">Учебная линия, а не отчёт о боевой системе</text>
|
||||
<line x1="100" y1="184" x2="100" y2="1102" stroke="#607493" stroke-width="8" stroke-linecap="round"/>
|
||||
|
||||
<circle cx="100" cy="210" r="30" fill="#f4a340"/>
|
||||
<text x="100" y="219" text-anchor="middle" fill="#172134" font-family="Arial, sans-serif" font-size="22" font-weight="700">T0</text>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="164" y="160" width="500" height="120" rx="20" fill="#253652" stroke="#f4a340" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="198" y="205" fill="#ffd598" font-family="Arial, sans-serif" font-size="27" font-weight="700">Симптом</text>
|
||||
<text x="198" y="242" fill="#eff5ff" font-family="Arial, sans-serif" font-size="23">Путь вернул неожиданное состояние</text>
|
||||
|
||||
<circle cx="100" cy="370" r="30" fill="#5eb8ff"/>
|
||||
<text x="100" y="379" text-anchor="middle" fill="#172134" font-family="Arial, sans-serif" font-size="22" font-weight="700">E1</text>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="164" y="316" width="500" height="146" rx="20" fill="#253652" stroke="#5eb8ff" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="198" y="361" fill="#a7dcff" font-family="Arial, sans-serif" font-size="27" font-weight="700">Наблюдение</text>
|
||||
<text x="198" y="398" fill="#eff5ff" font-family="Arial, sans-serif" font-size="23">Факт и граница: preview-order</text>
|
||||
<text x="198" y="431" fill="#b7c8df" font-family="Arial, sans-serif" font-size="21">без объяснения причины</text>
|
||||
|
||||
<circle cx="100" cy="550" r="30" fill="#5eb8ff"/>
|
||||
<text x="100" y="559" text-anchor="middle" fill="#172134" font-family="Arial, sans-serif" font-size="22" font-weight="700">E2</text>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="164" y="496" width="500" height="146" rx="20" fill="#253652" stroke="#5eb8ff" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="198" y="541" fill="#a7dcff" font-family="Arial, sans-serif" font-size="27" font-weight="700">Наблюдение</text>
|
||||
<text x="198" y="578" fill="#eff5ff" font-family="Arial, sans-serif" font-size="23">После mapper нет currency</text>
|
||||
<text x="198" y="611" fill="#b7c8df" font-family="Arial, sans-serif" font-size="21">evidence можно перепроверить</text>
|
||||
|
||||
<circle cx="100" cy="730" r="30" fill="#bd91ff"/>
|
||||
<text x="100" y="739" text-anchor="middle" fill="#172134" font-family="Arial, sans-serif" font-size="22" font-weight="700">H1</text>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="164" y="676" width="500" height="146" rx="20" fill="#253652" stroke="#bd91ff" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="198" y="721" fill="#d9c2ff" font-family="Arial, sans-serif" font-size="27" font-weight="700">Гипотеза</text>
|
||||
<text x="198" y="758" fill="#eff5ff" font-family="Arial, sans-serif" font-size="23">Новый mapper мог не перенести поле</text>
|
||||
<text x="198" y="791" fill="#b7c8df" font-family="Arial, sans-serif" font-size="21">ссылка ведёт к E2</text>
|
||||
|
||||
<circle cx="100" cy="910" r="30" fill="#62d69d"/>
|
||||
<text x="100" y="919" text-anchor="middle" fill="#172134" font-family="Arial, sans-serif" font-size="22" font-weight="700">A1</text>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="164" y="856" width="500" height="146" rx="20" fill="#253652" stroke="#62d69d" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="198" y="901" fill="#a9f0ca" font-family="Arial, sans-serif" font-size="27" font-weight="700">Ограниченное действие</text>
|
||||
<text x="198" y="938" fill="#eff5ff" font-family="Arial, sans-serif" font-size="23">В fixture выбран прежний mapper</text>
|
||||
<text x="198" y="971" fill="#b7c8df" font-family="Arial, sans-serif" font-size="21">это обход, не доказанная причина</text>
|
||||
|
||||
<circle cx="100" cy="1090" r="30" fill="#62d69d"/>
|
||||
<text x="100" y="1099" text-anchor="middle" fill="#172134" font-family="Arial, sans-serif" font-size="22" font-weight="700">V1</text>
|
||||
<g filter="url(#shadow)">
|
||||
<rect x="164" y="1036" width="500" height="146" rx="20" fill="#253652" stroke="#62d69d" stroke-width="3"/>
|
||||
</g>
|
||||
<text x="198" y="1081" fill="#a9f0ca" font-family="Arial, sans-serif" font-size="27" font-weight="700">Проверка</text>
|
||||
<text x="198" y="1118" fill="#eff5ff" font-family="Arial, sans-serif" font-size="23">Контролируемый вход сохранил поле</text>
|
||||
<text x="198" y="1151" fill="#b7c8df" font-family="Arial, sans-serif" font-size="21">после действия, а не до него</text>
|
||||
|
||||
<rect x="54" y="1218" width="612" height="42" rx="20" fill="#f4a340"/>
|
||||
<text x="360" y="1248" text-anchor="middle" fill="#172134" font-family="Arial, sans-serif" font-size="22" font-weight="700">Профилактика — отдельная плановая проверка</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.9 KiB |
Reference in New Issue
Block a user