docs: Task 14 验收记录改写为本机实际可验内容,并显式声明覆盖缺口
This commit is contained in:
@@ -4748,34 +4748,64 @@ Expected: `BUILD SUCCESSFUL`,生成 `app/build/outputs/apk/debug/app-debug.apk
|
||||
|
||||
- [ ] **Step 5: 写验收记录 `repos/ring-health-app/docs/verification-m1.md`**
|
||||
|
||||
**先把这份记录写成「本机实际能验到的东西」**(ledger Ruling R21):本机没有设备,
|
||||
人工验收那一段**必然**是「未执行」,不要粉饰成通过,也不要把空表格留在那里让人误读成已验。写出这个缺口本身,
|
||||
就是这份记录最有价值的部分 —— M1 的全部运行时行为目前只有编译期保证。
|
||||
|
||||
```markdown
|
||||
# M1 静态页面验收记录
|
||||
|
||||
- 验收日期:<填写>
|
||||
- 构建版本:0.1.0 (versionCode 1)
|
||||
- 测试设备:<填写机型与 Android 版本>
|
||||
- 单元测试:`./gradlew :app:testDebugUnitTest` 全绿
|
||||
- 构建:`./gradlew clean assembleDebug` 成功
|
||||
## 环境
|
||||
|
||||
## 人工验收结果
|
||||
- 记录日期:2026-09-10
|
||||
- 构建版本:0.1.0 (versionCode 1)
|
||||
- 构建机:Windows 11,JDK 17.0.12,Android SDK `D:\Android\Sdk`(仅 `platform-tools` /
|
||||
`platforms;android-36` / `build-tools;36.1.0`)
|
||||
- **测试设备:无** —— 本机没有安装任何模拟器镜像,也没有连接真机
|
||||
|
||||
## 自动化验证(已执行)
|
||||
|
||||
- 单元测试:`./gradlew :app:testDebugUnitTest` —— **21 项全绿**
|
||||
(`FormattersTest` 7 + `MockDataProviderTest` 5 + `HomeViewModelTest` 1 + `WorkoutViewModelTest` 1
|
||||
+ `DeviceViewModelTest` 2 + `MetricDetailViewModelTest` 3 + `RoutesTest` 2)
|
||||
- 构建:`./gradlew clean assembleDebug` —— `BUILD SUCCESSFUL`,
|
||||
产物 `app/build/outputs/apk/debug/app-debug.apk`
|
||||
- IDE Preview:各页面的 `@Preview` 在 Android Studio 中可渲染(这是没有设备时唯一的界面检查手段)
|
||||
|
||||
## 人工验收(未执行 —— 无设备)
|
||||
|
||||
下表**全部未打勾**。这份清单已原样保留,交给有设备的人执行;不要在没有实测的情况下填入结果。
|
||||
|
||||
| 项 | 结果 | 备注 |
|
||||
|---|---|---|
|
||||
| 应用启动无崩溃 | | |
|
||||
| 四 Tab 切换 | | |
|
||||
| 首页步数大环 | | |
|
||||
| 首页指标卡(含血压未开启) | | |
|
||||
| 详情页周/月切换 | | |
|
||||
| 运动页与历史页 | | |
|
||||
| 设备页与开关 | | |
|
||||
| 我的页 | | |
|
||||
| 应用启动无崩溃 | 未执行 | 无设备 |
|
||||
| 四 Tab 切换 | 未执行 | 无设备 |
|
||||
| 重按已高亮的父 Tab 的行为 | 未执行 | 需实测:推测会停在子页而非回到 Tab 根 |
|
||||
| 每个页面的 `@Preview` 可渲染 | 未执行 | 需在 Android Studio 中逐个打开确认 |
|
||||
| 次要文字灰度一致 | 未执行 | 不得出现 `TextSecondary` 与 `onSurfaceVariant` 混用 |
|
||||
| 首页:设备状态条 / 步数大环 8,426 / 六个指标卡(血压“未开启”) | 未执行 | 无设备 |
|
||||
| 指标详情页:周/月切换(7 根 / 30 根柱子) | 未执行 | 无设备 |
|
||||
| 睡眠详情:分期卡片只在睡眠指标出现,入睡/起床读起来像「一晚」 | 未执行 | 无设备 |
|
||||
| 运动页 / 运动历史页 | 未执行 | 无设备 |
|
||||
| 设备页 / 设备设置开关(返回后状态保持) | 未执行 | 无设备 |
|
||||
| 我的页 | 未执行 | 无设备 |
|
||||
| 旋转屏幕、深色系统设置下不崩溃 | 未执行 | 无设备 |
|
||||
|
||||
## 已知限制(阶段一有意为之)
|
||||
|
||||
- 数据全部为 Mock,不连蓝牙
|
||||
- 血压恒为“未开启”占位
|
||||
- 开关状态不持久化,重启即重置
|
||||
- 数据全部为 Mock,不连蓝牙、不连后端
|
||||
- 血压恒为“未开启”占位(`HealthSummary.bloodPressure = null`)
|
||||
- 设备设置页的开关只改内存状态,重启即重置(对应 M2 的协议 0502/0504)
|
||||
- 睡眠分期条与入睡/起床时间是演示值(固定比例 + 最后一个数据点往前 8 小时),无真实分期数据
|
||||
- 详情页统计摘要一律保留一位小数(步数因此显示为「平均 7512.3」这类精度过剩的形式)
|
||||
- 仅浅色模式
|
||||
|
||||
## 覆盖缺口声明
|
||||
|
||||
**M1 的全部运行时行为目前只有编译期与单元测试保证,没有任何一次真机/模拟器运行。**
|
||||
`assembleDebug` 成功只说明代码能编译、能打包,**不说明界面正确、不说明不会崩溃**。
|
||||
这是本机没有设备导致的已知缺口(ledger Ruling R21),不是「已验证通过」。
|
||||
首次拿到设备时,请从上面那张人工验收表开始逐项补齐。
|
||||
```
|
||||
|
||||
- [ ] **Step 6: 更新 App `README.md` 页面清单**
|
||||
|
||||
Reference in New Issue
Block a user