feat(cli): 新增视觉漂移审计门禁与幂等迁移脚本
- 新增 lib/visual-rules.mjs 作为规则表单一来源:字号阶梯、时长三档、 阴影四档、焦点环收敛、圆角档位的判定与改写集中在一处,迁移与审计共用 - 新增 lib/visual-audit.mjs + ua audit:visual:按五类统计硬编码视觉字面量, 支持 --json 与 --baseline,默认与 .ua/visual-baseline.json 棘轮比对, 超基线退出码 1 并按 git 历史倒推疑似引入提交 - 新增 scripts/visual-migrate.mjs:幂等迁移 ui.css(重复运行零 diff), 另带 --seed 灌视觉欠账、--backfill-domain 回填域字段 - 实跑迁移:283 处降到 35 处(字号 27→5、时长 170→9、阴影 56→17、 圆角 2→0、焦点环 28→4),159 行逐行等价替换,括号/分号/行数不变 - package.json 把 audit:visual 追加到 check 链末尾,并补 visual:migrate
This commit is contained in:
@@ -134,8 +134,9 @@
|
||||
- ua style:注释规范门禁(导出必须 /*** ***/、接口字段行尾注释、行注释中文),违规退出码 1
|
||||
- ua verify:清单一致性门禁(id 唯一 / exports 对应 / props 必带 n t d / steps≥3 / demo 锚点存在)
|
||||
- ua commit-lint <文件|message>:提交信息门禁(type 枚举 / scope 规则 / subject 中文祈使 ≤50 字符),规范见 COMMITTING.md,违规退出码 1
|
||||
- ua audit:visual [--json|--baseline]:视觉漂移门禁,统计皮肤包里五类硬编码视觉字面量(字号/动效时长/阴影/圆角/焦点环)并与 .ua/visual-baseline.json 棘轮比对,超基线退出码 1;--baseline 重写基线,--json 出机器可读计数
|
||||
- ua mcp:零依赖 stdio MCP server,暴露 list_components / get_component / search_components / get_tokens / list_recipes / get_recipe
|
||||
- 用法: `node packages/tools/cli/bin/ua.js <index|list|info <包名|组件id>|docs|tokens|style|verify|commit-lint|mcp>;仓库内等价于 npm run index / docs / style / verify`
|
||||
- 用法: `node packages/tools/cli/bin/ua.js <index|list|info <包名|组件id>|docs|tokens|style|verify|commit-lint|audit:visual|mcp>;仓库内等价于 npm run index / docs / style / verify / audit:visual`
|
||||
- 约定: 零依赖:只用 node 标准库,Node >= 18
|
||||
- 约定: 清单是单一来源:代码注释、文档站、llms-full.txt、MCP 全部从 ua.manifest.json 派生
|
||||
- 约定: 门禁只增不改:新增校验必须能被人手复现,报错要指出文件与字段
|
||||
|
||||
Reference in New Issue
Block a user