docs(登记): 哨兵的缺省语义进 §10;版本偏移的可见后果进差异表;"指针可以,断言不行"入册
pi 2026-09-14 的三点接续: 1. **"不存在的 id 当哨兵"这个手法本身是一次缺省语义决策**,我原先只把它当技巧用, 没登记它的前提。已按他给的形状进 §10:**未知预设 id → 静默替换为 aurora | 方向:宽(静默) | 依据:产品决定(背景不该因未知 id 变空白)**。并写明它**不是"给一个安全的空值", 而是"静默给别人的档"** —— 用户不会看到错误,但会看到别人的档。 他指出的真实后果也记了(§10.2 + 计划文档差异表):**服务端/WebUI 先加第 7 档、 鸿蒙还是旧构建时,旧端静默显示 aurora**,用户以为选的是新档; **这不是 bug,是批准过的缺省决策的可见后果** —— 不记,将来必被当 bug 报。 他给出的可选取舍(兜底改成"不属于六档的显式层")我**不改**:代价是未知 id 显示空白, 与"背景不该变空白"这条产品决定冲突。取舍与理由都写下来了。 顺带记清一个连带事实:**用真实档当兜底,必然让那一档逃出行为判据** (aurora 丢分支不可观测)—— 这条边界已在判据注释里,不假装全覆盖。 2. **WebUI 侧不写"鸿蒙不消费"**(他否掉了我问的那件事):那会把**另一端的实现状态** 写成**这一端的断言**,而它会过期。规则立成 §13:**注释里可以放指针,不要放断言**; 断言留在"事实所属的那一端"(鸿蒙侧已写+已登记 §10),另一侧只放指针。 与"按 id 联接不按相邻配对"、"'与 X 一致'先确认 X 侧有判据"同族。 3. **两处"只写不读"登记到同一处**:鸿蒙 `bgBlur` 与 WebUI `LEGACY_BACKUP_KEY` 都进 §10 表 (§10.1 说明为什么必须同处:分居两处时审计容易只找到一处就以为找全了)。 并**如实标注**:他建议的判据形态("登记为只写不读的字段,写侧必须能指出理由与批准人") 目前只是**文档级约束**,还没有机器判据 —— 要变成"做错会红"得先有一张可扫的字段清册。
This commit is contained in:
@ -575,6 +575,7 @@ deb 也不必从 targets 里摘。已写进 `client/electron/BUILD.md`(含排
|
||||
|---|---|---|---|
|
||||
| 圆角 | 自声明 `--radius-card: 0.875rem` | 系统 `sys.float.ohos_id_corner_radius_card/button` | 系统圆角会随设备/主题/无障碍设置变;跟着系统才是"系统方案" |
|
||||
| 材质(玻璃) | 自声明 `--nav-bg: 255 255 255 / 0.72` + `backdrop-filter` | 系统 `backgroundBlurStyle(BlurStyle.COMPONENT_THICK)` | 系统材质自带深浅两套颜色与模糊半径,手写 alpha 跟不了深色 |
|
||||
| **未知预设 id(版本偏移)** | WebUI/服务端先加第 7 档、鸿蒙还是旧构建 ⇒ 旧端认不出新 id | 按缺省语义**静默替换为 aurora**(`normalizePreset`) | **这不是 bug,是批准的缺省语义的可见后果**:用户以为选的是新档,实际看到的是 aurora。方向是"宽(静默)"——不会看到错误,但会看到**别人的档**。行为判据用"不存在的 id 当哨兵"正好钉住这条(`harmony-presets.test.mjs`) |
|
||||
| **壁纸模糊度** | 用户的 `bg_blur`(**像素半径**,初值 4px)作用在壁纸图层上 | **没有被消费**:栏上的系统**材质档位**(`BlurStyle.COMPONENT_THICK`)是唯一一次模糊,壁纸层不糊 | **不是同一个物理量,而且这边根本没有映射表**。2026-09-14 核实:`bg_blur` 在鸿蒙侧只有"搬运"没有"消费" —— `Appearance.ts` 把它 clamp 到 0~40 存进 `bgBlur`、`AppearanceStore` 同步它,但**没有任何页面/组件读它**(材质档位是固定枚举)。所以不存在"px ↔ 档位"的值映射可钉,也就**没有可判的性质**(pi 问的"映射表有没有判据":没有,且当前不该有 —— 钉一张不存在的表是假判据)。**改一端的含义**:改 WebUI 的 `bg_blur` 语义**不影响鸿蒙**;若将来鸿蒙开始消费它(例如按 px 选不同 `BlurStyle`),**那时**必须补一条映射判据,并更新本行 —— 这是"人工约定、当前无判据"的登记处(CRITERIA.md §12 的同一族)。 |
|
||||
| 动效 | 自定义 transition/时长 | `animateTo` + 系统 `curves` | 动效曲线应跟随系统设置(含"减弱动效") |
|
||||
| 遮罩 | 自声明 `--bg-scrim` + `--bg-dim` 两段式 | 系统 `sys.color.ohos_id_color_mask_regular` | 遮罩要随主题换向(浅色洗白/深色压黑),这件事系统已经做了 |
|
||||
|
||||
Reference in New Issue
Block a user