docs: 补充 M1 验收记录与页面清单
Task 14 收尾(几乎不含生产代码改动): - 清扫三条孤儿字符串:`placeholder_workout_history` / `placeholder_device_settings` / `placeholder_metric_detail`。grep 全 `app/src` 确认三者均无调用点后删除; 顺带逐条核对了 `strings.xml` 其余字符串,除 manifest 引用的 `app_name` 外全部有调用点, 未发现别的漏接线(不是顺手一起删,是先查清才决定)。 - 按 ledger R31,给 `MockRingDeviceRepository.setFunctionEnabled` 补中文 KDoc, 写明「必须返回新列表」及其原因(`DeviceViewModel.stateIn(initialValue=…)` 在构造时 冻结 List 引用,原地改写会让 `DeviceViewModelTest` 第一条用例退化成自我确认)。 验证:`./gradlew :app:testDebugUnitTest` 21 项全绿(FormattersTest 7 + MockDataProviderTest 5 + HomeViewModelTest 1 + WorkoutViewModelTest 1 + DeviceViewModelTest 2 + MetricDetailViewModelTest 3 + RoutesTest 2);`./gradlew clean assembleDebug` BUILD SUCCESSFUL, 产物 app-debug.apk(18,907,329 字节)。 新增 `docs/verification-m1.md` 记录 M1 验收。**人工验收全表标注「未执行 —— 无设备」**: 本机无模拟器镜像、无连接真机(`adb devices` 为空;`~/.android/avd` 下两个 AVD 只是指向 已删除旧 SDK 的空壳,不可启动),IDE Preview 亦无法打开。记录中含覆盖缺口声明: M1 全部运行时行为目前只有编译期与单元测试保证,`assembleDebug` 成功不代表界面正确或不会崩溃。 README 补 M1 页面清单表,路由与 `core/navigation/Routes.kt` 逐条核对一致; 并核对 `profile_check_update_desc` 的手抄版本号 `0.1.0` 与 build.gradle.kts 的 `versionName` 一致(计划 3682 行交办项)。 Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -33,6 +33,14 @@ class MockRingDeviceRepository(
|
||||
_deviceState.value = provider.deviceState()
|
||||
}
|
||||
|
||||
/**
|
||||
* 切换某个功能开关。
|
||||
*
|
||||
* **必须返回新列表**(`map` / `+` 等),不要原地改写同一个 `MutableList`:
|
||||
* `DeviceViewModel` 的 `stateIn(initialValue = …)` 在**构造时**就把当时的 List 引用冻结了,
|
||||
* 而 `DeviceViewModelTest` 第一条用例的鉴别力正依赖于此 —— 若这里改成原地改写,
|
||||
* `initialValue` 会被连带改动,那条断言就退化成自我确认,测试会静默失去意义。
|
||||
*/
|
||||
override fun setFunctionEnabled(id: String, enabled: Boolean) {
|
||||
_functionSettings.update { settings ->
|
||||
settings.map { if (it.id == id) it.copy(enabled = enabled) else it }
|
||||
|
||||
@@ -11,9 +11,6 @@
|
||||
<string name="tab_workout">运动</string>
|
||||
<string name="tab_device">设备</string>
|
||||
<string name="tab_profile">我的</string>
|
||||
<string name="placeholder_device_settings">设备设置</string>
|
||||
<string name="placeholder_workout_history">运动历史</string>
|
||||
<string name="placeholder_metric_detail">指标详情</string>
|
||||
|
||||
<string name="home_device_connected">%1$s · 已连接</string>
|
||||
<string name="home_device_disconnected">未连接设备</string>
|
||||
|
||||
Reference in New Issue
Block a user