fix(appearance): M91 r2 —— 真交叉断言 + unsafe 门禁跨行扫描 + α 上取整

P2-1「与 design 码值一致」的守门此前不存在
- 新增 crates/app-iced/src/platform/mod.rs::palette_source_codes_match_design_level_codes:
  三个格子对照 PaletteSource::as_str() 与 unlucky_design::palette::Level::code(),
  并覆盖反方向(from_key_value(level.code()) 必须还原同一档)与「码值在允许值表里」
- core 侧那条测试改名为 value_tables_are_self_consistent,注释改成事实:
  core 不依赖 design,只能钉自己的字面量;一致性由 app-iced 的那条对照断言守
- 实测:把 design 的 Level::Wallpaper 码值改成 "desktop" → 新断言红(design 自己 178 个测试仍全绿)

P2-2 unsafe-scope 门禁:行级正则 → 跨行扫描
- 去注释 + 按方括号闭合把续行并成逻辑行,再逐个属性组判断 allow(...unsafe_code)
- 抓得住原来两种绕过:多行属性 #![allow(\n unsafe_code\n)]、同行两属性 #[inline] #[allow(unsafe_code)]
- 门禁注释补全已知边界(不再声称「依赖 fmt job 兜底」——已不依赖)

O-1 α 量化方向:round → ceil
- 0.08×255=20.4,round 得 20 → 实际下发 20/255=0.0784,低于 D36 名义下限
- ceil 得 21 → 0.0824;新增 applied_alpha_is_never_below_the_floor 断言 下发字节/255 ≥ 0.08

O-7 契约测试补三个新键
- appearance_keys_are_all_ai_writable_and_registered 的 audited 清单加 window_opacity /
  titlebar_mode / palette_source
This commit is contained in:
AskaEth committed 2026-11-02 14:28:36 +08:00
1 parent 7406785325
commit fa2c6560fd
6 files changed
+108 -16

No files matched your search

+6 -3
View File
@@ -102,10 +102,13 @@ fn illegal_enum_falls_back_and_leaves_a_readable_diagnostic() {
}
#[test]
fn value_tables_are_stable_and_match_design_level_codes() {
fn value_tables_are_self_consistent() {
assert_eq!(TITLEBAR_MODES, ["auto", "always", "never"], "D37 三态");
// 与 `unlucky_design::palette::Level::code()` 逐字一致;core 不依赖 design(分层纪律),
// 所以这条一致性只能靠字面量钉住——design 侧改码值就会在这里红。
// 这里只钉 **core 自己的字面量**(改这三个字符串要过这一关)。
// 与 `unlucky_design::palette::Level::code()` 的一致性 core 守不了——core 不依赖 design
// (分层纪律),本 crate 的测试永远看不到 design 的代码。那条一致性由
// `crates/app-iced/src/platform/mod.rs::palette_source_codes_match_design_level_codes`
// 守(那个 crate 同时依赖 design 与 presenter,是唯一能对照的地方)。
assert_eq!(
PALETTE_SOURCES,
["background-image", "wallpaper", "preset"],