045ca7f688
把 archify 出的交互架构图落回仓内可复现形态,避免 docs/ 里出现「没有生成器的 SVG」: - 新生成器 tools/arch_diagram/gen_arch_endtoend_svg.py → docs/images/架构总览_ 端到端链路.svg(42 框 / 37 边 / 5 条纵带,线型分数据·命令·屏障心跳三类); 数据全部内嵌在 .py 里(generated-fresh 只把单个 gen_*.py 拷进临时目录重跑, 外部 JSON 输入会 rc≠0 假红),SVG 内不含时间戳/commit/绝对路径 - docs/架构设计/项目架构总览.md 新增 §1.3 挂图并写清与 §1 分层图的分工 (那张答「谁在哪一层」,这张答「一条数据走到底穿过谁」;纵带只是列分组, 依赖方向仍以 §1.1 表与 layer-deps 门禁为准),版本 v1.2 → v1.3 - 两处生成器清单登记:tools/arch_diagram/README.md 脚本一览、 docs/架构设计/图形绘制流程.md 的选型表与产物对照表 - draw-diagram skill 新增 §三b(大图碰撞审计判据 + 两条几何纪律)+ reference/svg-collision-audit.py(拷进 ci-artifacts 用,刻意不进 tools/) 本窗实测(都已写进 skill):42 框 37 边的图缩略目检看着干净,解析式审计一眼 报出 23 条——边标签文字盒压到节点框会被后画的节点白底吃掉半个字(「串行执行」 渲染成「行执行」);根因是同行两框走了「同轴加一段走廊」的通用规则,产出退化 四点折线,把标签落点推到第一半中点。修法:同轴且已对齐直接返回两点线,标签 落点改按总弧长取 50%。 零余量第二遍(用生成器自己的 Box/route/label_at 真值扫,框不膨胀不内缩)又抓到 两处近失:「TRGO 触发」「帧 B 下发」与相邻框只剩 0.7px / 1.5px,缩成「TRGO」 「帧 B」后最紧余量升到 3.5px;同一遍还纠正了审计器自己的错——`hi > y0` 误写成 `hi > x0` 凭空报 3 条穿框,差点重排三条边的走线,所以判据里加了「先验审计器 本身再信 0 条」。 自查:连跑两次产物 sha1 不变;scripts/check_generated_fresh.py rc=0(25 生成器 / 21 一致 / 4 在只减不增基线内);碰撞审计 rc=0(0 条);生成器无 OVERFLOW; doc-links --sections-strict 逐篇 rc=0;mermaid-syntax / nested-comment / skill-size / bom-drift 无新发;改动文件字节体检干净;/keil-build 0 错 0 警。