<svg xmlns="http://www.w3.org/2000/svg" width="960" height="540" viewBox="0 0 960 540" preserveAspectRatio="xMidYMid meet" role="img" aria-labelledby="title desc" data-image-type="case_review_flow incident_review_timeline">
  <title id="title">GitOps 事故回滚复盘流程</title><desc id="desc">image_type: case_review_flow; semantic_role: incident_review_timeline; section_position: 图1，生产事故复盘中用风险闭环先定义回滚目标是回到 Git 还是稳住集群状态；reader_task: 判断事故期间先冻结窗口、选择回滚层级，再恢复同步和观察。</desc>
  <defs><marker id="a" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="8" markerHeight="8" orient="auto"><path d="M0 0 L10 5 L0 10Z" fill="#24527a"/></marker><style>text{font-family:system-ui,Arial,Helvetica,"Microsoft YaHei","PingFang SC",sans-serif;fill:#17243a}.h{font-size:20px;font-weight:700}.s{font-size:16px;fill:#40546d}.m{font-size:14px;fill:#61738a}.card{fill:#fff;stroke:#91aed0;stroke-width:2}.freeze{fill:#fff5e6;stroke:#d99b41;stroke-width:2}.recover{fill:#ecf7f2;stroke:#72b78d;stroke-width:2}.ln{stroke:#24527a;stroke-width:3;fill:none;marker-end:url(#a)}</style></defs>
  <rect width="960" height="540" fill="#f6f9fd"/><rect x="54" y="54" width="852" height="420" rx="28" fill="#eaf1f8" stroke="#cad9ea"/>
  <text x="480" y="94" text-anchor="middle" class="h">先控窗口，再选回滚层级</text><text x="480" y="124" text-anchor="middle" class="s">冻结发布窗口后，在 Git 回退、镜像回滚和现场止血之间选最小影响路径</text>
  <rect x="92" y="178" width="210" height="120" rx="20" class="freeze"/><text x="197" y="216" text-anchor="middle" class="h">1. 冻结窗口</text><text x="197" y="248" text-anchor="middle" class="s">暂停自动同步</text><text x="197" y="276" text-anchor="middle" class="m">回到Git / 稳集群</text>
  <path d="M314 238 L350 238" class="ln"/><rect x="374" y="178" width="210" height="120" rx="20" class="card"/><text x="479" y="216" text-anchor="middle" class="h">2. 选择层级</text><text x="479" y="248" text-anchor="middle" class="s">配置、镜像、现场</text><text x="479" y="276" text-anchor="middle" class="m">避免扩大影响面</text>
  <path d="M596 238 L632 238" class="ln"/><rect x="656" y="178" width="210" height="120" rx="20" class="recover"/><text x="761" y="216" text-anchor="middle" class="h">3. 恢复观察</text><text x="761" y="248" text-anchor="middle" class="s">同步期望状态</text><text x="761" y="276" text-anchor="middle" class="m">健康后再放行</text>
  <rect x="162" y="382" width="636" height="48" rx="18" fill="#fff" stroke="#c8d7e9"/><text x="480" y="412" text-anchor="middle" class="s">最终检查：期望状态正确、应用健康、发布窗口按计划恢复</text>
</svg>
