feat(tools): 代码端真相源闸 check_ds_code + 外壳硬编码颜色清零

把原型 check-ds 的「单一真源」纪律延伸到 Flutter 代码:
- client/tool/check_ds_code.mjs:扫 lib/(排除.g.dart) 硬编码 Color(0x..)/Colors.具名色,
  --strict/--changed 报错挡提交,合理特例须显式 // ds-ignore: 理由
- tokens.css(单源,client+原型同步) 加 chrome 前景色 --brand-dot/--on-accent/--on-accent-faint,
  codegen 进 AppChrome;外壳 14 处硬编码(白字/品牌点/grace橙)全部改走 token
- 外壳+3 新 widget 现 0 违规;全量存量 172→158(其余屏后续逐步清)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TSKEiHsvauyxYUW2itzUXX
This commit is contained in:
wangjia
2026-06-25 19:14:47 +08:00
parent cb549ff0b4
commit 0b8c4618d6
6 changed files with 106 additions and 17 deletions
+3
View File
@@ -14,6 +14,9 @@ class AppChrome {
static const Color brandDeep = Color(0xFF0F3057);
static const Color brandMid = Color(0xFF1B4F8E);
static const Color brandWine = Color(0xFF8B2331);
static const Color brandDot = Color(0xFFC97B86);
static const Color onAccent = Color(0xFFFFFFFF);
static const Color onAccentFaint = Color(0xb8FFFFFF);
static const Color scrim = Color(0x6b0F141E);
static const Color heroGlass = Color(0x29FFFFFF);
static const Color heroGlassStrong = Color(0x3dFFFFFF);