test(预设): 钉住两端预设清单的 id 与顺序;更正"模糊只由壁纸层负责"这条被撤回的口径
pi 2026-09-14 的三处答复,逐条处理:
1. **§1 预设渲染(他担心的信息对等缺口)实际不存在**:鸿蒙侧 `model/Wallpaper.ts` 已有
`PRESET_IDS = ['aurora','dusk','mint','sand','ink','mesh']` + 标签 + 归一化 + `layersFor`,
计划文档 §P4 行也早写着"预设 6 档都能画出来 ✅"。所以 P4c(上传入口)不必让位。
**但缺口在判据上**:原先只钉了"服务端默认预设要在鸿蒙清单里"与"预设色板的值两边相同",
**id 集合与顺序没钉**。新增判据:`PRESET_IDS` 必须与 WebUI `PRESETS` 的 id **与顺序**逐项一致
(顺序也是契约:顺序不同会让两端的选择界面看起来"选错了")。变异验证:把 aurora/dusk 对调 → 红。
2. **§3 模糊口径**:他说判据"现在是后者"(只有导航必须有材质)—— 实际**两条都在**
(`harmony-appearance.test.mjs`:壁纸层不许有 `backgroundBlurStyle`、也不许有任何 `blur(`;
导航条必须有 `.backgroundBlurStyle(Theme.navMaterial)`)。所以这里不需要改代码。
需要改的是**文档里的规则原文**:`docs/HARMONY-ALIGN-PLAN.md` 第 9 行那句
"模糊只由壁纸层负责"是**被撤回的原话**(它其实是 WebUI 的架构结论:WebUI 壁纸自带
`filter: blur()`,所以浮在它上面的面再 `backdrop-filter` 就是糊第二遍),已换成两段式规则
"同一张底只许被模糊一次 / 模糊该出现在背后是可变内容的层",并把撤回本身留痕。
3. **§3 补的第二件(语义转换)**:§7.12 的表里新增一行 —— WebUI 的 `bg_blur` 是**像素半径**、
作用在壁纸图层;鸿蒙**没有对应物**,栏上的系统材质档位是唯一一次模糊,壁纸层不糊。
写清"不是同一个物理量,`bg_blur=8px` 与档位对不上不是 bug",否则以后必被当 bug 报。