feat(aihr): close functional checklist gaps

This commit is contained in:
key
2026-08-02 12:15:45 +08:00
parent 699cc08050
commit 6ad8a017a4
80 changed files with 4930 additions and 430 deletions
+25 -12
View File
@@ -13,12 +13,18 @@
| 员工正例 | 1 | 当前项目在职、可完成训练与每日题 |
| 主管正例 | 1 | 当前项目带教范围、可查看复盘并派发专项 |
| 员工越权反例 | 1 | 无主管权限,用于验证主管页与写接口均被拒绝 |
| 真机体验样本 | iOS/Android 各 1 | 已获测试同意,用于媒体、下载、字号与读屏验证 |
| Android App-Plus 真机样本 | 2 | 一台 Android 10 基线机型和一台当前主流机型,均安装本批同一签名 APK |
| iOS App-Plus 真机样本 | 0 或 2 | 仅当本批明确包含 iOS 原生包时启用;不得拿 H5 Safari 代替原生包验收 |
| H5 兼容样本 | 0 或 2 | 仅当本批包含 H5 发布时启用;iOS Safari 与 Android Chrome 各一台,不与 App-Plus 结果合并 |
试点批次:`<项目名称>`
统计窗口:`<YYYY-MM-DD>` 至 `<YYYY-MM-DD>`
本批交付面:`Android App-Plus / iOS App-Plus / H5`(逐项勾选;未勾选的交付面不得写入通过结论)
版本证据:`APK version/versionCode/SHA-256`、`后端 JAR SHA-256`、`管理端/H5 构建哈希`、`schema 预检结果`、`回滚点`
内容负责人 / 业务审核人 / 试点负责人:`<在受控系统登记>`
---
@@ -79,16 +85,24 @@
## 三、P0-2 真机能力验收
**设备要求**:
- iOS真机(iPhone,iOS 15+,微信内置浏览器 + Safari各一台)
- Android真机(Android 10+,微信内置浏览器 + Chrome各一台)
**设备矩阵**:
- 当前 Android 正式试点:同一签名 APK 至少覆盖 Android 10 基线机型和一台当前主流机型;所有 App-Plus 项目均在这两台设备执行。
- 本批包含 iOS 原生包时:同一签名包至少覆盖 iOS 15 基线机型和一台当前刘海或灵动岛机型;结果独立记录。
- 本批包含 H5 时:另用 iOS Safari 和 Android Chrome 各一台执行 H5 兼容验收;微信内置浏览器仅在业务明确要求时加入,不代替系统浏览器或原生包。
- 每条证据必须记录交付面、设备型号、系统版本、应用版本和结果;不得把一个交付面的成功外推到另一个交付面。
### 语音输入与播报
- [ ] **真机体验样本** → 问师傅页 → 点击麦克风图标 → 允许麦克风权限
- [ ] 说话5秒("今天客户投诉了停车费问题怎么处理") → 停止录音 → 文本框自动填入识别后的文字
- [ ] 点击"搜索" → 等待回答 → 点击"播报"按钮 → 听到TTS语音播报回答内容
- [ ] 首次拒绝麦克风权限 → 页面明确提示可再次授权或改选音频,不启动录音;再次点击仍可申请权限
- [ ] 选择“以后不再询问”后再次点击麦克风 → 页面明确引导到系统设置,不反复弹出无效授权框
- [ ] 真机验证降级:飞行模式 → 点击"播报" → 检查是否降级到浏览器`speechSynthesis`(iOS Safari可能无声,属已知限制)
- [ ] 真机验证录音兜底:长按5秒说话但ASR接口超时 → 检查是否显示"选择音频文件"兜底选项
- [ ] 系统音频/附件选择器取消 → 页面安静回到可操作状态,不显示失败;选择器权限或读取失败 → 显示稳定中文错误并可重试
- [ ] 弱网或接口超时 → 当前请求终止、loading 结束、原输入保留;恢复网络后可重试且不重复提交
- [ ] 会话过期返回 401 → 清理旧登录态并回到登录页;完成 OTP 重登后返回原业务页,403 业务拒绝不得误退出
- [ ] 录音、转写、播报或附件选择期间切到后台再回前台 → 不残留播放/录音/loading;系统权限页和文件选择器返回时不得误取消当前选择
### 图片/视频上传
- [ ] **真机体验样本** → 问师傅页 → 点击"上传图片"图标 → 从相册选择一张图片(≤10MB)
@@ -157,12 +171,11 @@
- [ ] 员工越权访问主管功能被拦截,3个反例全部拦截成功
### P0-2 真机能力
- [ ] 语音录音+ASR转文字在iOS/Android微信+浏览器各通过1次
- [ ] 语音播报+降级在iOS/Android各通过1次
- [ ] 图片/视频上传在iOS/Android各通过1次
- [ ] 总结卡下载在iOS/Android各保存成功1次
- [ ] 全局字号三档在iOS/Android各验证持久化+全局覆盖
- [ ] 读屏/键盘导航在iOS VoiceOver + Android TalkBack各通过1次
- [ ] Android App-Plus 两台设备均完成语音录音、ASR、TTS、图片/视频/文档、受控下载、字号持久化和前后台恢复
- [ ] Android TalkBack 和外接键盘至少在一台设备完成核心路径验证
- [ ] 若本批包含 iOS App-Plus,两台 iOS 设备执行同一能力矩阵,并另行完成 VoiceOver 验收
- [ ] 若本批包含 H5,iOS Safari 与 Android Chrome 各完成一次同等 H5 能力矩阵;结果不得与 App-Plus 合并
- [ ] 文件和媒体失败时只允许重新鉴权后重试或回到受控在线内容,不产生可复制、长期复用的原文件链接
### P0-3 严格试点窗口
- [ ] 窗口结束时,完成率≥80%(≥16人完成≥10次训练)
@@ -177,7 +190,7 @@
| 相对时间 | 里程碑 | 责任人 | 状态 |
|---|---|---|---|
| 窗口开始前 | P0-1权限正反例全部验证 | 开发+测试 | 待执行 |
| 窗口开始前 | P0-2真机能力验证(iOS+Android各2台) | 测试 | 待执行 |
| 窗口开始前 | P0-2 按本批交付面执行设备矩阵;Android App-Plus 固定 2 台 | 测试 | 待执行 |
| 窗口中点 | P0-3中期检查(完成率/校准样本) | 项目经理 | 待执行 |
| 窗口结束前 5 天 | P0-3末期检查(完成率冲刺) | 主管团队 | 待执行 |
| 窗口结束日 | 统计最终数据 | 项目经理 | 待执行 |
@@ -200,7 +213,7 @@
- **应急预案**:
- 语音失败 → 检查ASR/TTS接口配额,切换备用提供方或降级到纯文本
- 上传失败 → 检查OSS配额,临时扩容或限制单日上传次数
- 下载失败 → 降级为"复制链接"分享,用户自行浏览器打开下载
- 下载失败 → 重新鉴权后重试或回到受控在线内容;不得复制原文件地址、OSS 地址或长期下载链接
- 字号/读屏失败 → 记录为P1缺陷,不阻塞试点(可访问性为增强项)
### 风险3:越权拦截失效