zcbot/skills
caoqianming fafcb14d86 skill(proposal): mermaid 文件名 hash→caption + quality_check 加图相关 4 拦截 + SKILL.md 精简; web cache fix
用户报"图没渲染到 docx",诊断后修三件事(同一根因链):
- web/app.py /v1/files/download 加 Cache-Control: no-cache
  Starlette FileResponse 只发 ETag/Last-Modified, 浏览器走启发式缓存,
  workspace 文件改了 SPA 预览看不到新版
- quality_check 新 check_figures(): 4 条规则
  1) figures/ 有 png 但 sections 0 个 ![]() 引用
  2) fenced 代码块出现 box-drawing 字符 (┌─┐│└─┘ 等)
  3) mermaid 块必须有首行 %% caption: <题>
  4) 同 task 内 mermaid caption 不能撞名
- render_diagrams.py: hash → caption 命名
  pass-1 验证 caption 完整 + 全 task 唯一, 缺/撞 退 2
  pass-2 渲染落 fig_<sanitized>.png, 总是覆盖
- render_docx.py: mermaid 块按 caption 查 fig_<caption>.png
  无 caption / 清洗空 / png 缺 → ASCII fallback
- SKILL.md ~193 → ~160 行:
  插图段 49→22 行(压 matplotlib 细节 + 删类型选择展开)
  反模式合并 ASCII/占位/手写图编号/缺 caption/撞名
  删"为什么两段式"长说理段

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 10:19:09 +08:00
..
coding Initial import: zcbot personal task agent 2026-05-06 11:02:59 +08:00
ppt core(0003): name + working_dir + skill schema 重构 + per-user .memory 2026-05-17 19:15:37 +08:00
proposal skill(proposal): mermaid 文件名 hash→caption + quality_check 加图相关 4 拦截 + SKILL.md 精简; web cache fix 2026-05-19 10:19:09 +08:00