Files
aurora-admin/计划-v1.3.0-执行计划.md
aurora-admin f1fbfc2ddb
Regression / regression (push) Canceled after 0s
feat(品牌标识): 几何 K 图标(favicon/顶栏标记/theme-color) + 并行会话成果入库
## 品牌标识(本次会话)

起因:品牌此前没有任何图形标识 —— 唯一 favicon 是内联 data-URI 里的字母「A」,
那是 v2.0.0「Aurora Admin → Kole UI」改名漏掉的一处(PC 顶栏也是「A」,
移动端站已是「K」;移动端文档站则完全没有 favicon)。

- 几何:24 网格三个互不接触的笔画(竖 + 两斜),圆头描边;
  描边 2.25 → 16px 标签页尺寸下正好 1.5px = 规范原文「描边1.5px」
- 取色分两套(刻意):favicon 硬编码品牌蓝/白(渲染在浏览器标签栏,不继承 kole-dark);
  顶栏标记走 currentColor(实测暗色下自动转 rgb(20,22,28))
- 新增 theme-color 双条(light #FFFFFF / dark #1C1F26,取 --kole-color-card-bg)
- 修 site/app.js hero 标语 KOLE ADMIN → KOLE UI(改名变形残留)
- 移动端 7 个模板补 favicon(此前计数 0)

验收:门禁 9 条全 OK(site-routing/site-routes/mobile-docs/mobile-site/isolation/
theme/nav/i18n/icons);PC 回归 1464/1464 · 移动端 807/807,各连跑 8 次一致;
两端 favicon 405 字节逐字节一致;PC 站控制台错误 1→0。

## 并行会话成果(本次一并入库)

- 图标系统:2576 图标(TDesign/Element Plus,MIT)+ 11 端注入 + 5 个构建门禁工具
  + IconPreview 预览页 + ICON-SPEC.md 冻结规格
- 移动端平台:47 组件 × 6 端 + 文档站 53 页 + 隔离门禁
- PC 组件:103 个大后台组件 / 组件11 批次
- uni-app:PC 端试点 + 移动端端实现 + 真实编译验证

## 工程

- .gitignore 补 .scratch/ 与 .zcode-preexisting-*.txt(会话中间产物,实测 9.1MB,不入库)
- CHANGELOG 补品牌标识条目
- ROADMAP 登 S8-P4(品牌标识任务包 + og:image/apple-touch-icon 未做部分)
2026-09-21 10:05:48 +08:00

5.7 KiB
Raw Permalink Blame History

v1.3.0 执行计划(验收链路修复 / 契约第二批 / 文档同步)

依据:《现状问题分析与改造清单》v1.3.0 路线图(契约第二批/第三批、C1-C4 收口)+ 本轮对 v1.2.0 交付物的实测核实。 原则不变:零运行时依赖、build 脚本产物全部可重跑、每步完成即验证、改完文档与实现同步。


〇 · 前置核实结论(2026-09-10 实测,非文档声称)

项 文档声称 实测结果 判定
契约覆盖 21/79 index.json 带 contract 字段 21 条,契约 JSON 22 个文件(含 index.json) ✅ 一致
79 静态薄壳 + sitemap 已生成 site/components/*.html、sitemap.xml 存在 ✅ 一致
回归通过率 75.1%(812 断言) tests/report.json 数值一致,但报告 version=1.1.1,早于 v1.2.0 ⚠️ 数据过期
回归失败项定性 "演示页真实缺口(states/aria/keyboard),不是 runner 误报" 定性错误:根因是测试页快照为空壳(见下) ❌ 需修正

回归通过率低的真实根因(本轮定位)

  1. run-tests.ps1 的 Get-Snapshot() 从 frameworks/<Prefix>.html 抽取 body 时:删除全部 <script> 与 <style>,并截断到 1200 字符。
  2. 79 个 H5 演示页的 DOM 全部由内联 JS 渲染(body 只有 <div id="app"></div> + <script>render()</script>)——script 一剥,快照就没内容。
  3. 测试页只引用 colors_and_type.css + site/style.css,从未引用 frameworks/<Prefix>.css,组件样式根本没加载。
  4. 后果:matrix:states>=1(52 失败)、matrix:aria-or-role(51)、matrix:variants>=2(40)、matrix:keyboard-reachable(35)在空 DOM 上必然全灭;contrast>=4.5(9)在无组件样式下按测试页默认色误判。

结论:75.1% 是结构性误报,不是实现质量。 修好链路后通过率才有资格作为对外证据链(Semi「90% 覆盖」那一档的可信度基础)。


WS-1 · 验收链路修复(P0,先做,其他工作的地基)

做法:测试页快照区改为 iframe 加载真实 frameworks/<Prefix>.html,断言运行时跨帧在同源 frame document 内执行。

  • tests/_template.html:<div id="snapshot"> → <iframe id="snapshot-frame" src="../frameworks/<Prefix>.html"> + 「新窗口打开演示页」链接。
  • tests/_runtime.js:
    • 新增 frameDoc()(取 contentDocument,同源可直读;失败回退 document);
    • collect()/annotate()/matrix() 的目标文档、getComputedStyle 所属 window、styleSheets 来源、outerHTML 均切到 frame;
    • 向 frame 注入 [data-assert] 状态描边样式,保留可视化;
    • iframe load 后自动跑一次断言,并把结果 postMessage 给父页(供批量收集器汇总)。
  • run-tests.ps1:Get-Snapshot() 删除,改为产出 iframe 标记;Set-Content -Encoding UTF8 改 WriteAllText(无 BOM,与 v1.2.0 的 data.js 修复口径一致)。

新增 tests/_collect.html:把 79 个测试页顺序装入 iframe,监听 postMessage 汇总,输出可机读 JSON(供浏览器 browser_evaluate 取回写 tests/report.json,零 npm 依赖)。

验收:

  • 任取测试页(button / modal / breadcrumb)浏览器打开:iframe 内组件真实渲染、有样式、运行断言 后 matrix 8 项通过率显著上升;
  • 79 页全量收集产出新版 tests/report.json(version=1.2.0),并通过 tools/run-regression.mjs 口径校核(同字段结构);
  • 剩余失败项逐条定性为真实缺口(保留为改进 backlog,不再有"空 DOM 全灭"这类假失败)。

WS-2 · 契约第二批:15 个展示类组件(P0,沿用第一批 schema)

选件规则:category=display 高频优先,排除已有契约的 table/card。

slug 中文 slug 中文 slug 中文
tree 树形控件 collapse 折叠面板 carousel 走马灯
calendar 日历 timelinelist 时间轴 steplist 步骤列表
cardlist 卡片列表 imagepreview 图片预览 qrcode 二维码
countdown 倒计时 watermark 水印 employeecard 员工卡片
chartpanel 图表面板 dashboardcard 指标卡 treetable 树形表格

字段(与现有 21 份同 schema):variantDimensions / representativeVariants / usageHints / structurePatterns / anatomy / doNotInvent / unknowns。

流程:读规格原文(组件*.txt 对应章节)→ 写 .design_library/kole-ui/components/<slug>.json → index.json 注册 contract → 重跑 build-site.ps1 → 浏览器验证详情页「设计契约」章节与 chip。

硬规则:只从规格原文提炼,不发明;规格未明示的进 unknowns,规格明确排除的进 doNotInvent。

验收:data.json 中这 15 个组件 contractRef 非空、contract 对象完整;契约化覆盖 21 → 36/79。

WS-3 · 收尾

  • CHANGELOG.md 增 [1.3.0] 条目(回归链路修复 + 契约第二批 + 回归数据更新)。
  • TESTING.md:修正"失败项是演示页真实缺口"的错误定性,写清 iframe 快照机制与两种回归跑法(浏览器收集器 / Playwright runner)。
  • 现状问题分析与改造清单.md:进度标注同步(问题 8 的定性修正、B1 进度 21→36)。
  • TESTING.md 中"§ 重新生成测试目录"补 iframe 说明。
  • git commit(不推送,推送仍需用户凭证)。

执行顺序

WS-1(链路修复 → 重生成 → 全量回归)→ WS-2(契约第二批 → 重建 → 验证)→ WS-3(文档 + 提交)

依赖:WS-2 的验收依赖 WS-1 修好的回归(否则新契约没有任何真实断言兜底)。