# 模板 05：发布前质量检查清单模板（学生可见口径)

> 每次重新 build/发布前逐项勾检。目的：学生页面 = 纯内容，无加工痕迹、可交互、投影可读。

## 一、口径检查（对学生的语气）

- [ ] 无"教材原句/原话/原文/数据/开篇/原问"等**出处注**（图片 alt 里的"教材图 1-x"除外）
- [ ] 无"沿用学校课件/此处沿用/正式印刷请以教材为准/以文字示意"等**加工来源注**
- [ ] 无课堂操作提示：可举手表决、先口答、先写××、课堂动作、🗣 互动/开放讨论（→ 用 💡 想一想/猜一猜）
- [ ] 无内部编号外露：《06》《07》、v2.0、重校、工作单、OCR
- [ ] 无提醒式批注：别记错、注意：教材与……、全书都是……的展开（→ 改为"本课程主线……"）
- [ ] 教师姓名与联系方式正确且与讲师确认一致（报备文件 ≠ 实际授课时以教师为准）
- [ ] 无冗余废话（如"不计学时学分"——32 学时课程本无独立学分，说了是废话）

## 二、号令口径（禁词 grep）

```bash
grep -rnE "别记错|不是九大|沿用学校课件|按教材核对|正式印刷|教材原句|教材原话|原题出自教材|教材开篇|贯穿 1|全都能对上号|可举手表决|先口答|先写黑板|课堂动作|开放讨论|📋 互动|全书都是|不计学时学分|《0[0-9]》|v2\.0|重校|工作单" <页面目录> || echo CLEAN
```

## 三、内容完整性检查

- [ ] 概念页配了 ✓ 正面例子＋✗ 反面例子（特征、特点、易混概念）
- [ ] 复杂案例按"冲突→处境→回应→目标→结局"讲故事，并配失败案例对照
- [ ] 判断题/选择题/填空/思考题**全部交互化**，页面上不存在"直接印答案"
- [ ] 填空题题干给出**已知项**（补全式，如"启动、＿＿、执行、＿＿、收尾"）
- [ ] 一页放不下已拆页；选择题一题一页
- [ ] 表格跨页拆分已合并（表 1-2 建议单页全表＋"怎么读"讲解页）

## 四、投影可读性检查

- [ ] 正文 ≥ 2.1rem、选项 ≥ 2.0rem、按钮 ≥ 1.7rem、表格 ≥ 1.75rem、标签 ≥ 1.35rem
- [ ] 图片足够大（图表类 ≥ 360px；框架图/证书类 ≥ 700px 并尽量占满）
- [ ] 图片 layout：大图优先"左图＋右要点"，底部引述兜底
- [ ] SVG 图：连线有足够空隙、标签不被色块遮挡、未超出页面（overflow hidden 会裁掉底部）
- [ ] 左上 logo 白底可见；配色与全套一致

## 五、结构完整性检查（页数联动）

- [ ] `python3 _build.py` 无 assert 报错；`ls lectureN/N.*.html | wc -l` == 总页数
- [ ] 目录分组（GROUPS）与页数一致；首页卡片"查看全部 N 页"正确
- [ ] 交叉引用页号全部正确（插入/拆分页后必须逐一核对）
- [ ] 交互页都自动带 `<script src="../quiz.js">`

## 六、发布检查（云）

- [ ] 重新 tar（排除 `_素材` 与 `*.py`、`__pycache__`）→ scp → 解压覆盖 → `systemctl restart spm-web`
- [ ] 公网抽查关键页（首页/目录/第一页/交互页/图表页）HTTP 200、内容为最新
- [ ] 安全组端口已放行（改端口后必查）