260 lines
27 KiB
Markdown
260 lines
27 KiB
Markdown
# Figma 需求覆盖与版本偏差审计
|
||
|
||
> 日期:2026-07-17
|
||
> Figma 文件:[银城员工端与个人 AI 助理设计](https://www.figma.com/design/30hFiKtieGYraOZvJPJcPd)
|
||
> 对照范围:历史可运行移动端 `mobile/`、已确认业务文档、Figma 实际画板、当前权威工程 `mobile-uni/`。
|
||
> 验证边界:本轮通过 Figma 插件只读检查实际节点,没有修改设计稿;代码结论来自当前工作树,不代表已经发布到线上。
|
||
|
||
## 1. 审计结论
|
||
|
||
客户对问题原因的判断**基本成立,但根因不只是“Figma 少画了功能”**。真正的问题是此前没有规定功能事实源、视觉事实源和实现事实源的优先级,导致“对标 Figma”被错误理解成“Figma 画了什么就只做什么”。
|
||
|
||
Figma 当前存在五类风险:
|
||
|
||
1. **需求遗漏导致版本回退**:历史可运行版已有的问师傅语音输入、回答播报、总结卡播报,没有在对应 Figma 闭环中完整表达。若只照画板开发,旧能力会自然消失。
|
||
2. **视觉完成被误当成功能完成**:Figma 索引写着“设计冻结完成”,但该冻结只覆盖页面、图层、字体、越界和颜色一致性,不代表历史需求全部进入画板,也不代表接口和业务闭环完成。
|
||
3. **阶段混放导致范围误判**:阶段一陪练、阶段二个人 AI 助理/开放问题榜、三期量化和游戏化共存于同一文件和同一索引,缺少醒目的阶段、批准状态和本期状态标记。Codex 既可能漏做旧功能,也可能把后续页面提前拉入当前主线。
|
||
4. **同页变体已经发生结构漂移**:同一个页面的“可编辑/标准/大字/超大字”并非相同内容的字号变化,而是模块、数据、顺序和导航状态不同,无法判断哪张才是开发基线。
|
||
5. **设计审计结论自身已经失真**:索引页数和画板数无法复算,默认图层名、小字号、越界与遮挡并未清零,连“页面对照审计”画板本身也发生裁切,因此“设计冻结完成”不能继续作为研发放行结论。
|
||
|
||
所以,今后不能再把 Figma 单独作为功能需求真值。正确口径是:**业务文档决定做什么,Figma 决定怎么呈现,代码和运行证据决定实际做到了什么。**
|
||
|
||
## 2. Figma 实际证据
|
||
|
||
本轮直接读取了以下正式节点:
|
||
|
||
| Figma 节点 | 实际内容 | 审计判断 |
|
||
|---|---|---|
|
||
| `4:16` 页面|我 | 包含 `7:2` 可编辑版和标准/大字/超大字三张字号版;可编辑版与字号版信息架构不同,超大字版与底栏重叠 | 字号需求已经进入 Figma,但四张画板不能视为同一页面的有效变体;详见第 9 节 |
|
||
| `101:3` 设计索引与一致性审计 | 标注“78 原页面、70 正式画板、0 空业务页、设计冻结完成”;冻结说明集中在页面、图层、字体、溢出和颜色 | 这是**视觉与文件卫生审计**,不是需求覆盖审计;没有需求 ID、来源版本、阶段和实现状态 |
|
||
| `23:3` 员工端今日 | 明确同时展示“问老师傅·语音提问,快速解答”和“打字问”;还展示学习中心、工作上报 | Figma 明确承诺了语音入口;同时把阶段二/三入口放进阶段一首页,容易造成范围混淆 |
|
||
| `54:2` 正式语音对练 | 有“按住说话”和切换文字输入,包含情绪/信任、SOP 求助、红线和风格重生成 | 训练语音设计较完整,但不能代替问师傅、题目、点评等其他页面的语音覆盖 |
|
||
| `61:530` 主管训练任务派发 | 明确显示 3 名员工、多选删除、训练类型、专项包、截止时间、任务目标和“确认派发给 3 人” | 多人派发和截止时间已经是明确 Figma 要求;当前实现只有单人、场景和原因 |
|
||
| `79:11` SOP 回答结果 | 有问题、结论、三步操作、可用话术、引用、视频、有帮助/没解决/收藏 | 对应画板没有回答播报、总结卡播报和下载图片控件;只照此画板会遗漏历史语音优势和新增下载要求 |
|
||
| `95:6` 开放问题榜 | 有“今天遇到什么难题了”“有奖征问题”、热门/待回答/有悬赏/我参与的和奖励规则 | 设计本身完整,但业务总纲明确属于阶段二;不能因为 Figma 已画就算当前阶段缺陷 |
|
||
|
||
还有两处文件内部口径冲突:
|
||
|
||
- `FIGMA_DESIGN_INVENTORY.md` 顶部仍把员工端“问”和“我”标记为 `[-]`,说明业务状态不完整;同一文件后部却写“设计冻结完成”。
|
||
- `FIGMA_IMPLEMENTATION_MATRIX.md` 曾把训练任务派发行标为“已实现”,当时 `mobile-uni/src/pages/supervisor/assign/index.vue` 只有单员工选择、没有截止时间。2026-07-17 晚间已补多人、截止快捷项和批量接口,矩阵已改为记录本地验证事实,仍不等同于生产发布。
|
||
|
||
## 3. 四方功能对照
|
||
|
||
| 功能 | 历史可运行版/文档要求 | Figma 表达 | 当前实现 | 客观结论与动作 |
|
||
|---|---|---|---|---|
|
||
| 问师傅语音输入 | 旧 `mobile/src/App.vue` 有语音录制/选择音频并转写;产品方案也明确“语音提问” | 首页 `23:3` 明确写“语音提问”,但未形成完整提问、转写、失败和重试状态画板 | 本地已恢复录音、转写、选择音频兜底,继续复用 `speech.ts` 与 `/api/ai/asr` | **确认回退已在代码恢复,未发布**:Figma 仍需补录音、识别、失败和文件兜底状态 |
|
||
| SOP 回答播报 | 旧版有“听一遍” | `79:11` 无播报控件 | 本地已补回答播报,未证明线上已发布 | **Figma 遗漏、代码本地恢复**:先保留功能,再补设计,不得为了贴图删掉 |
|
||
| 总结卡播报 | 旧版有总结卡 TTS;总纲写“语音播报(能力已有)” | 对应清单/画板未体现完整播报状态 | 本地已补总结卡播报 | **Figma 遗漏、代码本地恢复**:补播放/停止/生成失败状态 |
|
||
| 总结卡下载图片 | 旧版无充分证据;本轮客户新增 | Figma 未体现下载控件 | 本地已补 PNG 下载,无聊天模型时按真实 SOP 原文降级生成;浏览器已触发下载成功提示 | **新增需求已本地实现,未发布**:仍需补 iOS/Android H5 下载状态设计与真机验收 |
|
||
| 全局字号调节 | 未找到旧版开关;客户为老年员工新增明确要求 | `4:16` 已修为标准/大字/超大字三张同构画板 | 本地已实现全局三档、持久化与响应式自增高;400×900 已逐档截图复核 | **新增无障碍需求已本地实现并视觉验证,未发布**:继续做真机触控、键盘和读屏验收 |
|
||
| 主管多人派发 | 未证明旧版可运行;客户本轮再次明确 | `61:530` 明确选择 3 人并批量确认 | 本地已支持姓名多选、最多 100 人、逐人结果、幂等请求与失败隔离;真实提交 2/2 成功 | **Figma 需求已本地实现,未发布**:生产继续验证大团队权限与超时重试 |
|
||
| 截止时间/快捷日期 | 历史计划要求训练任务有截止时间;客户细化为今天/明天/3天/7天 | `61:530` 有精确截止时间,没有快捷日期控件 | 本地已增加 `dueDate` 及当天/明天/3天/7天快捷项,并在逐人结果显示到期日 | **部分被 Figma 覆盖的需求已本地实现,未发布**:补设计状态并复验时区边界 |
|
||
| 每日题每日变化/专项不重复 | 文档要求覆盖岗位常见场景和动态训练 | Figma 主要画页面结果,没有内容版本、日期派发、去重和降级规则 | 本地每日题已扩为 7 组 21 题,按日期、岗位和员工身份轮换,同日稳定、相邻日不重复 | **非视觉型缺口已完成第一阶段修复,未发布**:继续扩正式岗位题库和内容版本审计 |
|
||
| 生成题目、AI 回复、点评播报 | 语音优先原则支持;不能证明旧版全部覆盖 | 对应画板没有形成全链路播报覆盖表 | 本地已覆盖每日题、AI 回复、点评、参考答案、训练结果与候选面试;无 TTS 模型时 H5 已验证设备语音降级 | **需求覆盖已在代码补齐,未发布**:Figma 仍需形成内容类型/播放状态矩阵 |
|
||
| 主管切换学习端 | 客户明确主管也要学习;历史目标支持角色兼任 | Figma 分别画员工端和主管端,没有双模式切换入口及权限说明 | 本地已实现“工作台/学习端”双向切换,显示模式变化但组织角色保持主管;已用主管登录态验证 | **代码已本地实现,Figma 仍未覆盖,未发布**:补入口、返回路径与权限说明画板 |
|
||
| 岗位差异化内容 | 总纲要求岗位→SOP→场景→学习内容映射 | Figma 有多个岗位/角色页面,但没有展示内容分发规则和岗位覆盖表 | 当前主要仍围绕生活顾问 | **功能规则缺口,P1**:用岗位内容矩阵验收,不用“页面不同”代替“内容不同” |
|
||
| 问 AI(全网) | 旧版无;会议基线是企业内部知识 | 本轮检查的设计索引和相关问答画板未见独立外部 AI 入口、来源和免责声明 | 当前无全网检索 | **新增范围**:单独立项,与问师傅分入口、分数据外发、分引用和免责声明 |
|
||
| 图片/视频提问 | 历史文档列为新增/后置情境能力 | `79:11` 有回答侧视频内容,但没有提问附件上传流程 | 本地已补本次查询的图片/视频附件分析 | **设计与实现顺序倒置**:先补权限、PII 外发、大小/失败状态设计,再决定是否发布 |
|
||
| 开放问题榜/有奖问答 | 总纲明确阶段二,阶段一只积累 `knowledge_gap` | `95:6` 等画板已完整设计 | 当前没有业务闭环 | **不是当前版本误删**:保留为阶段二,不得因“Figma 已完成”提前宣称上线或拉入 P0 |
|
||
| 个人 AI 助理/个人资料库 | 2026-07-11 新增,明确阶段二 | Figma 已有完整画板组 | 当前未实现 | **阶段混放风险**:从当前阶段一研发指令中排除,另建阶段二验收表 |
|
||
|
||
## 4. 根因判断
|
||
|
||
问题链路更准确地描述为:
|
||
|
||
```text
|
||
历史需求和旧版能力没有先形成可追踪清单
|
||
→ Figma 主要完成视觉与页面状态,遗漏非视觉规则和部分旧交互
|
||
→ Figma 又把多个阶段放在同一索引,且标记“设计冻结完成”
|
||
→ 给 Codex 的指令只写“对标 Figma”
|
||
→ Codex 把 Figma 当成功能全集
|
||
→ 已画但后置的能力被误判为当前范围,没画的旧能力被误判为可以删除
|
||
```
|
||
|
||
因此,本次问题属于**需求追踪和指令约束失败**,不是单一前端页面实现失误。
|
||
|
||
## 5. 今后的事实源优先级
|
||
|
||
| 决策问题 | 第一事实源 | 第二事实源 | 禁止做法 |
|
||
|---|---|---|---|
|
||
| 本期做什么、哪些不能做 | 已确认 BRD、分阶段总纲、版本功能对比清单 | 客户确认的变更单 | 看到 Figma 画板就自动纳入当前阶段 |
|
||
| 功能怎么交互、页面怎么呈现 | 已标注需求 ID 和阶段的 Figma 正式画板 | 现有设计变量与组件 | 用 Figma 缺失作为删除旧功能的依据 |
|
||
| 当前代码有什么 | `mobile-uni/`、后端接口和测试 | 历史 `mobile/` 仅作版本回溯 | 用旧版截图代替当前实现判断 |
|
||
| 线上是否生效 | 生产包、真实账号、真实接口和浏览器回归 | 发布记录与构建 hash | 把“本地已写”表述成“客户已可用” |
|
||
|
||
发生冲突时:
|
||
|
||
- 功能范围:已确认业务文档和变更单高于 Figma。
|
||
- 视觉交互:本期正式 Figma 高于开发者自由发挥,但不能覆盖已确认功能。
|
||
- 线上状态:真实运行证据高于源码、文档和设计稿。
|
||
- 无法判断时:标记冲突并请求产品确认,不允许自行删功能或跨阶段扩张。
|
||
|
||
## 6. Figma 必须补的需求追踪层
|
||
|
||
不要求重画全部页面,先在索引和关键画板增加以下字段:
|
||
|
||
| 字段 | 示例 | 用途 |
|
||
|---|---|---|
|
||
| 需求 ID | `ASK-VOICE-001` | 与版本功能清单和验收用例一一对应 |
|
||
| 来源 | 旧版可运行 / BRD §4.3 / 2026-07-17 客户新增 | 防止把客户记忆、规划和已交付混为一谈 |
|
||
| 阶段 | 阶段一 P0 / 阶段二 / 三期 | 防止 Codex 把后续画板拉入当前主线 |
|
||
| 状态 | 已批准 / 待确认 / 已取消 | 区分正式需求和概念设计 |
|
||
| 功能覆盖 | 完整 / 部分 / 未覆盖 | “画板完成”不能代替“需求完整” |
|
||
| 实现状态 | 未开发 / 本地已实现 / 已发布 / 生产已验证 | 避免设计状态与工程状态串线 |
|
||
| 依赖 | ASR、TTS、组织身份、正式内容 | 让页面背后的接口和业务数据可验收 |
|
||
|
||
需要优先补画或补状态的页面:
|
||
|
||
1. 问师傅语音录制、识别中、失败、选择音频兜底。
|
||
2. SOP 回答和总结卡的播放、停止、失败、下载状态。
|
||
3. 主管多人选择、截止快捷项、逐人派发结果。
|
||
4. 修正已有标准/大字/超大字画板:保持模块、数据语义、顺序和 Tab 状态一致,只允许字号、行高和容器高度变化。
|
||
5. 主管“工作台/学习端”双模式。
|
||
6. “问师傅(企业知识)”与“问 AI(外部信息)”的来源、权限和风险区分。
|
||
|
||
## 7. 给 Codex 的新指令模板
|
||
|
||
后续每轮 UI 开发至少带上以下约束:
|
||
|
||
```text
|
||
功能事实源:<BRD/版本功能清单的章节与需求 ID>
|
||
视觉事实源:<Figma 文件与 node id>
|
||
本次阶段:<阶段一/P0 等>
|
||
本次必须保留的历史能力:<语音输入、播报、降级链等>
|
||
本次明确不做:<阶段二/三页面>
|
||
冲突规则:Figma 未画不等于可以删除;Figma 已画不等于本期必须开发。
|
||
验收:功能、视觉、接口、真实账号、发布状态分别记录。
|
||
```
|
||
|
||
仅写“按照 Figma 还原”是不合格指令,因为它无法约束版本连续性、接口规则、阶段边界和线上状态。
|
||
|
||
## 8. 立即执行顺序
|
||
|
||
1. 先让客户确认《员工端版本功能对比与功能对齐清单》中的“确认回退/历史规划/新增需求”分类。
|
||
2. 给确认项分配需求 ID,并把阶段、来源和功能覆盖状态回写到 Figma 索引。
|
||
3. 先做 P0:问师傅语音输入、关键内容播报全覆盖、每日题/专项版本和去重。
|
||
4. 再做 P1:多人派发、截止时间、主管学习端、岗位内容映射、字号三档。
|
||
5. 开放问题榜、个人 AI 助理和全网 AI 分别按阶段二或新增专项推进,不与阶段一修复混包。
|
||
6. 每一批完成后分别记录“本地实现、功能验证、视觉验证、已发布、生产验证”,不再用一个“完成”覆盖所有状态。
|
||
|
||
## 9. 补充抽查:`页面|我` 不是有效的字号变体组
|
||
|
||
客户抽查的 Figma 页面为 `4:16`。插件读取后确认以下问题:
|
||
|
||
| 问题 | 可编辑版 `7:2` | 字号版 `178:959` / `196:45` / `196:104` | 严重性 |
|
||
|---|---|---|---|
|
||
| 信息架构不同 | 显示与辅助 → 成长摘要 → 成长路径 → 成长证据包 → 最近练过 | 成长摘要 → 成长记录 → 显示与辅助 → 账号与安全 | **阻塞**:不是同一页面的字号变体 |
|
||
| 指标语义不同 | 4 个指标实例全部显示“综合能力”,截图值均为 86 | 成长分 81、训练次数 3、主管建议 1 | **阻塞**:组件属性未正确覆盖,示例数据也不一致 |
|
||
| 功能数量不同 | 有成长路径、证据包、最近训练 | 三项全部消失,新增成长记录和账号安全 | **阻塞**:切换字号不能改变功能集合 |
|
||
| 超大字布局 | 无对应等价结构 | 账号卡 `y=728, h=104`,底栏从 `y=802` 开始,垂直重叠 30px | **阻塞**:与“字号调整后无裁切和越界”的审计结论冲突 |
|
||
| 底栏状态 | “我”高亮 | 字号版截图出现“今日”图标红色、“我”文字红色 | **高**:两个 Tab 同时呈现 active 状态 |
|
||
| 水平网格 | 主要卡片 `x=20, w=368`,左右留白为 20/12 | 主要卡片 `x=20, w=360`,左右留白为 20/20 | **中**:同页网格不一致 |
|
||
| 长内容承载 | 画板已设为纵向滚动且固定 2 个底栏节点,但最后一张卡片到底部没有预留 92px 安全区,最大滚动位置仍会被底栏覆盖 | 字号版同样是纵向滚动;超大字内容本身未超过画板高度,因而无法滚动消除账号卡与底栏的 30px 覆盖 | **高**:滚动属性存在,但底部安全区和超大字初始布局仍错误 |
|
||
|
||
当前 `mobile-uni/src/pages/user/profile/index.vue` 又是第三套结构:账号、岗位身份、成长摘要、成长证据包和最近练过均来自真实接口,但没有字号选择。这意味着现在不能任选 Figma 四张画板中的一张强行还原,否则必然删除现有功能或产生新的布局回退。
|
||
|
||
该页应立即标记为 **设计阻塞/不可开发**,整改只需要一个最小方案:
|
||
|
||
1. 先确认唯一功能结构,保留所有已批准且当前真实可用的模块。
|
||
2. 只维护一套 Auto Layout/组件结构,三档字号通过文本样式或变量模式切换,不再复制三张独立页面。
|
||
3. 三档字号使用相同字段、相同示例数据、相同模块顺序和唯一 active Tab。
|
||
4. 内容区允许滚动,固定底栏前预留底栏高度和安全区;以超大字版无重叠作为验收下限。
|
||
5. 修正后再让 Codex实现;修正前不得把 `4:16` 写进“正式视觉基线”。
|
||
|
||
### 9.1 `页面|我` 修复结果(2026-07-17)
|
||
|
||
已按当前真实功能和新增字号需求修复 Figma 正式画板,不再保留四张互相冲突的开发基线:
|
||
|
||
- 标准 `7:2`、大字 `253:131`、超大字 `253:188` 均包含账号、岗位身份、显示与辅助、成长摘要、训练画像、成长路径、成长证据包和最近训练,模块名称、字段语义和顺序一致。
|
||
- 三张画板统一为 400×886、左右 20px、卡片宽 360px;摘要示例值统一为训练综合分 78、已训练 3、待复盘 2、分钟 0。
|
||
- 三档分别应用“员工端字号”变量的标准/大字/超大字模式;字号选择卡的当前值和选中项同步切换,不再局部保留标准字号。
|
||
- 三张画板均为纵向滚动、固定 2 个底部节点,并在内容末尾增加 108px 安全占位;超大字不再与底栏重叠,底栏只高亮“我”。
|
||
- 修复前四张画板已复制为隐藏备份,根节点为 `251:119`、`251:299`、`251:358`、`251:417`。
|
||
- 修复后逐张重新生成 400×886 截图并人工查看,同时复核直接子节点网格、文字越界、字体族、最小字号和固定层;三稿首屏均未发现重叠或裁切。
|
||
|
||
因此 `4:16` 的状态先由“设计阻塞”调整为 **Figma 视觉已修**;随后代码恢复批次已实现全局字号和持久化并完成本地视觉复核,详见 10.5。两者均不代表已经发布。
|
||
|
||
## 10. 全文件批量质量审计(2026-07-17)
|
||
|
||
本轮不是继续抽样,而是先枚举根级页面,再逐页切换以绕过 Figma 跨页懒加载,最终确认当前文件包含 **81 个顶层页面、78 张以 `Screen/` 命名的顶层正式画板**。修复“我”页时已删除 1 张冗余冲突稿;随后为当前 78 张画板重新生成当次截图并逐张做人工视觉复核。检查项包括信息架构、栅格、字号与换行、固定底栏与安全区、长文案裁切、组件缩放、示例数据可信度、active/disabled 状态和管理端字符级换行。
|
||
|
||
### 10.1 文件级数字不一致
|
||
|
||
| 项目 | 索引 `101:3` 声明 | 插件逐页实测 | 判断 |
|
||
|---|---:|---:|---|
|
||
| 顶层页面 | 78 | 81 | 索引已过期,少计 3 页 |
|
||
| 正式画板 | 70 | 78 张当前 `Screen/` 画板 | 索引排除规则仍未写明,但当前总数可复算 |
|
||
| 默认图层名 | 0 | 修复前当前全量复扫为 10 个;重命名后为 0 | 当前已清零,早期“25 个/5 页”来自过期中间快照 |
|
||
| 可见文字最低字号 | 12px | 修复后 78 张画板中小于 12px 的可见文本为 0 | 当前达成;同时修复了头像缩放引入的 11.8px 文本 |
|
||
| 根级内容越界 | 0 | 修复后不可滚动根画板的直接内容越界为 0 | 当前达成;仍需在真实实现中验证滚动、键盘和动态数据 |
|
||
|
||
已修正的 6 处 11px 文字分别位于:
|
||
|
||
- `178:960` 主管端“我的工作台”:团队成员、待复盘、风险预警。
|
||
- `178:2` 员工端“学习首页”:待完成、今日完成、知识引用。
|
||
|
||
### 10.2 已确认的真实视觉缺陷
|
||
|
||
| 页面 / 节点 | 插件与截图证据 | 分级 | 处理 |
|
||
|---|---|---|---|
|
||
| 页面|我 `4:16` | 修复前四张字号画板结构漂移、指标错误、双 active、超大字重叠和末尾安全区不足;2026-07-17 已修为 `7:2` / `253:131` / `253:188` 三张同构稿并逐张截图复核 | **Figma 视觉已修;代码本地已实现并复核** | 发布后补真实设备触控、键盘、读屏和长数据回流验证,不再使用隐藏旧稿 |
|
||
| 页面|问 `21:3` | 修复前空回答态被固定底栏遮住 | **Figma 已修** | 内容末尾已增加 108px 安全占位并重新截图;真实实现仍验证长回答、键盘与滚动末尾 |
|
||
| SOP 反馈 `79:674` | 修复前底部说明被裁 6px | **Figma 已修** | 画板高度由 832 增至 860,完整说明已重新截图复核 |
|
||
| 案例语音上传 `79:706` | 修复前上传表单被裁 48px | **Figma 已修** | 画板高度由 860 增至 932,上传区完整显示并重新截图复核 |
|
||
| 工作积分排行榜 `90:91` | 修复前 6 行头像压住姓名,且全部使用“银城一号” | **Figma 已修;三期未实现** | 主行组件头像已按真实尺寸缩放,姓名改为可区分示例并重新截图复核 |
|
||
| 页面对照审计 `115:210` | 修复前末节被裁 116px | **Figma 已修** | 画板高度由 2200 增至 2364,末节完整显示并重新截图复核 |
|
||
|
||
逐图检查还发现并修正了:`87:770` / `87:815` / `87:865`、`90:867`、`93:824`、`95:782` / `95:826`、`97:5` / `97:823` 的横向裁切或错误换行;`90:2`、`91:2`、`93:940`、`95:858` 的指标、状态与表格元数据字符级换行;`91:765`、`97:823` 的徽章占位文案和荣誉页标签换行;`97:5` 周节奏列表的 100px 异常行高已收紧为 56px,画板高度由 1346px 收紧为 1056px。其余重复状态词(如“待复盘”“查看详情”)经截图复核属于正常列表结构,没有按缺陷计数。
|
||
|
||
### 10.3 对研发排期的影响
|
||
|
||
- **可以继续按业务文档开发**:没有列入上表的当前阶段页面;Figma 仍只负责视觉,不负责补齐算法、权限和接口规则。
|
||
- **已作为视觉实现基线并本地落地**:`4:16` 字号三档已修为同构稿;代码已补全局字号切换和持久化,真实设备的长内容/键盘/底栏与读屏仍待发布前验证。
|
||
- **当前阶段 Figma 截断缺陷已修**:`21:3`、`79:674`、`79:706` 可作为新的视觉参考,但代码仍须以真实同尺寸截图和交互状态完成二次验收。
|
||
- **后续阶段暂不进入当前主线**:工作积分、荣誉中心、个人 AI 助理、开放问题榜等虽已修复确定性视觉错误,功能仍按阶段二/三管理。
|
||
- **索引必须更新后才能重新冻结**:当前真实口径为 81 页/78 张 `Screen/` 画板,结构复扫结果为默认 `Frame` 0、小于 12px 文本 0、根级越界 0;索引仍写 78/70,不能继续作为文件总数事实源。
|
||
|
||
### 10.4 修复后的再次复检边界
|
||
|
||
本轮将逐页视觉验收标准提升为“当次截图 + 版面 + 状态 + 可访问性风险”联合检查,不再把节点存在或图层数量当成视觉通过。调用额度恢复后,已重新枚举 81 个顶层页面、78 张当前 `Screen/` 画板,为 78 张画板逐一生成截图并人工检查;确定性缺陷修正后,又对 20 张受影响画板生成修复后截图复核,并对排行榜、荣誉墙和积分荣誉中心做第二轮细节截图复核。
|
||
|
||
当前完成层级必须严格区分:
|
||
|
||
- **Figma 结构复核**:78 张画板,默认 `Frame` 0、小于 12px 文本 0、不可滚动根级越界 0。
|
||
- **Figma 视觉复核**:78 张当次截图已逐张查看;本轮发现的裁切、头像重叠、占位数据和字符级换行已修并复截图。
|
||
- **代码实现/浏览器复核**:本轮没有修改移动端或管理端代码,不能把 Figma 修复写成代码已对齐;同尺寸实现截图、滚动、键盘、长数据、触控和读屏仍需单独验证。
|
||
- **发布/生产验证**:本轮未发布,不改变现网完成状态。
|
||
|
||
### 10.5 后续代码恢复与浏览器复核(2026-07-17 晚间)
|
||
|
||
上述“本轮没有修改代码”仅描述 Figma 设计修复批次。随后已完成一轮独立的代码恢复和浏览器复核:
|
||
|
||
- 以 400×900 视口对登录、员工今日、问师傅、练习、我的三级字号、主管工作台/学习端和专项派发进行当次截图检查;同时实际操作登录、身份模式切换、姓名多选、快捷日期、批量提交、SOP 查询、设备语音降级、总结卡生成与图片下载。
|
||
- “我”页三级字号保持同一功能结构,页面通过全局模式缩放和响应式布局自增高;超大字下关键页未见横向溢出、底栏遮挡或卡片重叠。
|
||
- 主管派发已用 2 名真实团队成员完成 2/2 成功提交;主管学习端已由主管登录态进入员工首页并可返回工作台。
|
||
- 总结卡在无聊天模型配置时只摘录相关 SOP 原文并标注来源,排除低相关片段;浏览器已显示下载成功提示。
|
||
- TTS 模型未配置时,H5 已从后端 TTS 自动切换到设备语音,按钮从“语音播报”进入“停止播报”,随后可手动停止。
|
||
|
||
该批次的完成层级为 **本地实现、自动化验证、浏览器交互验证和视觉验证**;仍未发布、未做生产验证,也未完成真实手机上的麦克风/相册权限与读屏验收。
|
||
|
||
## 11. 代码实现的逐页视觉复核(2026-07-18)
|
||
|
||
本轮在 Figma 文件质量审计之后,又对真实运行代码执行了独立视觉和交互验收,避免把“画板已修”误写成“代码已对齐”:
|
||
|
||
- 员工端覆盖今日、练习、问师傅、个人页、学习、全网 AI、问题榜/详情/发布、积分和考试;另覆盖超大字及 430px 宽度状态。
|
||
- 主管端覆盖工作台、团队、专项派发、个人页、考试列表、组卷和成绩页。
|
||
- 管理端使用真实登录后覆盖常见难题、问题榜运营抽屉和全网 AI 配置页,并实际点击问题记录打开审核详情。
|
||
- 运行结果共 24 个移动端状态和 3 个管理端页面:均无页面级横向溢出、控制台错误、失败请求或可见加载错误。
|
||
- 人工截图复核发现并修复了代码中的确定性问题:11px 业务文字、SOP 步骤号/问答徽标 8–10px、输入框盒模型溢出,以及问题榜四个筛选标签在标准/超大字下被裁切。
|
||
- Figma `95:6`、`95:782`、`95:826`、`95:858` 的问题榜/详情/最佳答案/管理稿已与真实实现逐项对照;代码保留相同信息层级,同时以当前组织身份、积分分账和审核接口为功能事实源。
|
||
|
||
当次证据保存在 `.data/visual-audit-20260718/runtime/`:`contact-employee-standard.png`、`contact-employee-accessibility.png`、`contact-supervisor.png` 和 `contact-admin.png`。这些证据只证明本地运行与视觉验证,仍不等于发布和生产验证。
|
||
|
||
## 12. 关联文档
|
||
|
||
- [员工端版本功能对比与功能对齐清单-20260717.md](员工端版本功能对比与功能对齐清单-20260717.md)
|
||
- [FIGMA_DESIGN_INVENTORY.md](FIGMA_DESIGN_INVENTORY.md)
|
||
- [FIGMA_IMPLEMENTATION_MATRIX.md](FIGMA_IMPLEMENTATION_MATRIX.md)
|
||
- [银城员工端APP分阶段实施总纲.md](银城员工端APP分阶段实施总纲.md)
|
||
- [20260708/数字师傅学练问报整合方案.md](20260708/数字师傅学练问报整合方案.md)
|