rewrite 2026-09 and 2027 articles for reader-facing quality
Build and deploy / deploy (push) Successful in 18s

This commit is contained in:
2026-07-31 22:26:56 +03:00
parent 3bfc3f21c4
commit 440c8721dc
69 changed files with 4424 additions and 3533 deletions
@@ -1,14 +1,16 @@
<svg xmlns="http://www.w3.org/2000/svg" width="375" height="225" viewBox="0 0 375 225" role="img" aria-labelledby="title desc">
<title id="title">Петля редакционного hand-off</title>
<desc id="desc">Временная граница, контракт утверждения и состояния evidence образуют hand-off без создания интервью, transcript, speaker, approval или publication.</desc>
<rect width="375" height="225" fill="#f7f9fc"/>
<g font-family="Arial, sans-serif" fill="#17233a"><text x="10" y="19" font-size="15" font-weight="700">Hand-off без fabricated record</text>
<rect x="12" y="52" width="91" height="66" rx="12" fill="#e8f0ff" stroke="#3e6bb8"/><text x="27" y="76" font-size="12" font-weight="700" fill="#1d3f7a">Dates</text><text x="21" y="94" font-size="9">2026-07-31</text><text x="31" y="108" font-size="9">2027-10</text>
<rect x="141" y="52" width="91" height="66" rx="12" fill="#fff6df" stroke="#aa7312"/><text x="151" y="76" font-size="12" font-weight="700" fill="#79520b">Assertion</text><text x="151" y="94" font-size="9">named literal</text><text x="151" y="108" font-size="9">без ответа</text>
<rect x="270" y="52" width="91" height="66" rx="12" fill="#f5ecfb" stroke="#7b4599"/><text x="280" y="76" font-size="12" font-weight="700" fill="#5d2877">Evidence</text><text x="280" y="94" font-size="9">not-collected</text><text x="280" y="108" font-size="9">not-tested</text>
<path d="M103 85H141M232 85H270" stroke="#53647d" stroke-width="2" marker-end="url(#a)"/>
<rect x="112" y="142" width="151" height="43" rx="8" fill="#eaf8f2" stroke="#23805c"/><text x="127" y="161" font-size="12" font-weight="700" fill="#195d43">HAND-OFF</text><text x="127" y="177" font-size="9">synthetic plan / not-attempted</text>
<path d="M316 118V130H188V142" fill="none" stroke="#23805c" stroke-width="2" marker-end="url(#g)"/>
<rect x="32" y="195" width="311" height="19" rx="5" fill="#fff0f0" stroke="#ae3f3f"/><text x="42" y="208" font-size="9" fill="#852c2c">Не создаются: transcript · speaker · approval · publication</text></g>
<defs><marker id="a" markerWidth="6" markerHeight="6" refX="5" refY="2" orient="auto"><path d="M0,0 L0,4 L6,2z" fill="#53647d"/></marker><marker id="g" markerWidth="6" markerHeight="6" refX="5" refY="2" orient="auto"><path d="M0,0 L0,4 L6,2z" fill="#23805c"/></marker></defs>
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="720" viewBox="0 0 1200 720" role="img" aria-labelledby="title desc">
<title id="title">Передача traceparent через HTTP</title>
<desc id="desc">Клиент передаёт traceparent gateway, gateway сохраняет контекст, а сервис проверяет формат и создаёт локальный span.</desc>
<defs><marker id="a" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto"><path d="M0 0L12 6L0 12z" fill="#23805c"/></marker><marker id="r" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto"><path d="M0 0L12 6L0 12z" fill="#ae3f3f"/></marker></defs>
<rect width="1200" height="720" fill="#f7f9fc"/>
<text x="60" y="75" fill="#17233a" font-family="Arial, sans-serif" font-size="38" font-weight="700">Trace Context на границе proxy</text>
<text x="60" y="115" fill="#4b5870" font-family="Arial, sans-serif" font-size="22">Заголовок связывает события, но не является правом доступа</text>
<g font-family="Arial, sans-serif" text-anchor="middle">
<rect x="70" y="235" width="250" height="145" rx="22" fill="#e8f0ff" stroke="#3e6bb8" stroke-width="3"/><text x="195" y="288" fill="#1d3f7a" font-size="27" font-weight="700">Клиент</text><text x="195" y="328" fill="#274b7c" font-size="19">traceparent</text><text x="195" y="355" fill="#53647d" font-size="18">valid header</text>
<rect x="475" y="235" width="250" height="145" rx="22" fill="#fff6df" stroke="#aa7312" stroke-width="3"/><text x="600" y="288" fill="#79520b" font-size="27" font-weight="700">Gateway</text><text x="600" y="328" fill="#8a6317" font-size="19">allow + forward</text><text x="600" y="355" fill="#53647d" font-size="18">same trace-id</text>
<rect x="880" y="235" width="250" height="145" rx="22" fill="#eaf8f2" stroke="#23805c" stroke-width="3"/><text x="1005" y="288" fill="#195d43" font-size="27" font-weight="700">Service</text><text x="1005" y="328" fill="#27745a" font-size="19">parse + new span</text><text x="1005" y="355" fill="#53647d" font-size="18">structured logs</text>
<path d="M320 307H475M725 307H880" stroke="#23805c" stroke-width="6" marker-end="url(#a)"/>
<rect x="300" y="520" width="600" height="100" rx="18" fill="#fff0f0" stroke="#ae3f3f" stroke-width="3"/><text x="600" y="563" fill="#852c2c" font-size="25" font-weight="700">invalid header → local fallback</text><text x="600" y="595" fill="#a04444" font-size="19">не использовать trace-id для авторизации</text>
<path d="M1005 380V475H900V520" fill="none" stroke="#ae3f3f" stroke-width="5" marker-end="url(#r)"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB