# 自检报告 · 育才抖音招生小程序版面稿 v1

> 生成：2026-10-27 ｜ 脚本：`src/shoot.py`（三档实渲 + 元素级实量）、`src/design_qa.py`（七大项体检）、`src/check.py`（红线词 + 功能元素）
> 原始数据：`src/_measure.json`、`src/qa_pages.json`、`src/自检-raw.json`

## 一、结论（一句话）

13 页 × 3 档全部通过：横向溢出 0、文字裁切 0、点击热区 <44px 0、字号 <12px 0、图标失引 0、胶囊禁区冲突 0；
design_qa 七大项合计问题 **0** 条；红线词页面文案命中 **0**、整页（含设计注记）命中 **0**；每页功能元素齐。

> **口径说明（技总 2026-10-27 复跑后补）**：上句「13 页 × 3 档全 0」指 8 个家长端 + 5 个后台屏共 13 页，**不含 `00-设计令牌.html`**。令牌页是给开发看的文档页（含色板表、字阶表、rpx 换算表），本身不做窄屏适配，`design_qa.py` 跑它会报 9 条（48 处字号 <12px + 横向溢出 51~106px），属文档页固有形态，不影响小程序端任何页面。我把 13 页重跑一遍独立复核：**39 次渲染（13×3）全部「✅ 无问题」**，与本节结论一致；不跑令牌页不是漏测，是范围界定，特此写明以防后人对不上账。

## 二、三档实渲（页高 / 机检）

| 页 | 名称 | 端 | 375 宽 | 390 宽 | 430 宽 |
|:--|:--|:--|:--|:--|:--|
| P1 | 首页 | 家长端 | 2246px / OK | 2265px / OK | 2295px / OK |
| P2 | 学部/课程列表 | 家长端 | 1461px / OK | 1441px / OK | 1442px / OK |
| P3 | 课程详情 | 家长端 | 1681px / OK | 1687px / OK | 1708px / OK |
| P4 | 报名表单 | 家长端 | 1351px / OK | 1332px / OK | 1332px / OK |
| P5 | 到校路线 | 家长端 | 1100px / OK | 1108px / OK | 1135px / OK |
| P6 | 校园环境与荣誉 | 家长端 | 1227px / OK | 1244px / OK | 1302px / OK |
| P7 | 常见问题 | 家长端 | 1069px / OK | 1069px / OK | 1050px / OK |
| P8 | 我的报名记录 | 家长端 | 1280px / OK | 1262px / OK | 1242px / OK |
| A1 | 线索池列表 | 招生办后台 | 1006px / OK | 1007px / OK | 1010px / OK |
| A2 | 线索详情 | 招生办后台 | 1677px / OK | 1677px / OK | 1659px / OK |
| A3 | 漏斗看板 | 招生办后台 | 1269px / OK | 1269px / OK | 1269px / OK |
| A4 | 导出弹窗 | 招生办后台 | 812px / OK | 812px / OK | 812px / OK |
| A5 | 账号与提醒设置 | 招生办后台 | 1446px / OK | 1446px / OK | 1426px / OK |

> 页高为该页「整页」渲染高度（含状态示例与注记区之前的页面本体）。机检判据：横向溢出 / 文字裁切 / 热区 / 小字 / 图标引用 / 胶囊冲突，任一非 0 即 X。

## 三、design_qa（七大项）

| 项 | 结果 |
|:--|:--|
| ① 横向溢出（文档级 + 元素级） | 0 |
| ② 控制台报错 / 请求失败 | 0 / 0（零外链，无外部请求） |
| ③ 文本溢出容器 | 0 |
| ④ WCAG 对比度 + 12px 字号下限 | 0（实算见 `00-设计令牌.html` 第二节） |
| ⑤ 点击热区 <44×44 | 0 |
| ⑥ 图片缺 alt / 标题跳级 / 控件无标签 | 0（无外链图片；表单控件在稿上标了 label/名称，落码用原生控件） |
| ⑦ 动效缺 prefers-reduced-motion 降级 | 0（`app.css` 与每页内联均有降级规则） |

## 四、红线扫描（逐字）

- 硬禁词：第一、唯一、保过、包过、包录取、保录取、保证升学、保证录取、升学率、录取率、名额有限、状元、全国领先、独家、顶级、首选、100%、零风险、无条件录取
- 软性词：最、承诺、保证、包（"包含/打包"等正常词已白名单排除）
- 扫描范围：13 页 `#page` 页面文案 + 整页 textContent（含折叠态未展开答案、含设计注记）
- 结果：**页面文案 0 命中 / 整页 0 命中**

> 说明：上一版注记里"不展示升学率"这类合规表态句本身含禁词，已改写为"不做升学数据与成绩比较展示"，保证逐字扫描干净。

## 五、功能元素核对

见 `00-设计说明.md` 第四节「每页功能元素对照表」；脚本核对结果：13 页 0 缺项（`src/自检-raw.json` 的 `req` 段）。

## 六、未做/待定（写在稿上，不留给前端猜）

1. 校名全称、简称、招生口号、logo 源文件、校园实拍、VI 主色、重点学段、主按钮文案、收费是否上图、电话是否露出、首屏卖点顺序 —— 8 条业务事实待老板确认（见 `00-设计说明.md` 第七节），稿内一律按建议默认值占位并标「待校方核定」。
2. 真实图片与视频未提供，稿内为带尺寸标注的图位；切图规范已给（宽高比 + @2x + 体积上限）。
3. 企微提醒通道：按框架 v1 只做技术预留，本期不接；稿上写的是「站内 + 短信兜底」。
