8 Commits
Author SHA1 Message Date
aurora-admin 5ee5d829a4 refactor(详情页+S8): 详情页减重(导航互斥/入口去重/i18n去重) + 品牌标识入库
Regression / regression (push) Canceled after 0s
本提交含两条并行工作线,因互相咬合(package.json scripts、regression.yml、
npm run build 链)无法按文件干净拆分,故合并为一次自洽提交。

## 详情页减重(本轮主任务:修复「AI 干太重」)

- 导航收敛:宽屏只用右侧目录、≤1200px 只用页内 sticky 导航,纯 CSS 媒体查询
  实现(不引入 JS 宽度监听)。此前两套导航同时可见,active 状态互相打架。
- 入口去重:标题区由「查看示例/在线测试/契约 JSON」三个减为「在线测试」一个;
  契约 JSON 归入实现资源;删除示例底部重复的「在线测试」。
- 示例工具栏:删除与目录锚点重复的示例下拉选择器;「全部展开代码」只在
  示例数 >1 时出现(103 个组件里 49 个仅 1 个示例,此前恒显示)。
- 重复文案:示例区两句同义导语合并为一句。
- 首页 CTA 由 5 个减为 2 个(浏览组件/快速开始),测试总览入口挂到已有的
  通过率统计卡上,不再另占 Hero 按钮。
- 统一详情取数:抽出 fetchDetail/loadDetail 作为 details/*.json 的唯一路径,
  FAQ 不再自行 fetch 一遍,与组件页共用缓存与失败兜底。

## i18n

- 删除 12 组重复键(含整段 FAQ 说明),字典 604 → 585 唯一键。
- 删除本次改动产生的 6 个死键。
- verify-i18n.mjs 新增 `unique dictionary keys` 断言:重复键在对象字面量里
  是静默的后值覆盖,此前无从发现;现由门禁拦住。

## 文档事实修正(实测为准)

- TESTING/CONTRIBUTING:79 → 103 组件;旧断言数改为回指 tests/report.json。
- PLATFORMS:移动端 108 文件/18 端 → 282 文件/47 端;契约 5 → 47;
  令牌 17 → 15;uni-app SFC 21 → 50。
- AGENTS:断言 1405/18 页 → 1464/103 页(PC)、807/47 页(移动端)。
- package.json:YOUR-ACCOUNT 占位 → gitea 实址与 kole-ui.mymoyu.top。

## 品牌标识(并行会话成果,一并入库)

- brand-mark.json 收归真源,build:brand 生成 favicon 与单色 SVG;
  PC 与移动端共用资产,verify:brand 24 条断言。
- regression.yml 增加 verify:brand 步骤。

## 门禁与验收

新增工具:verify-component-page.mjs(86 条真实浏览器断言,随详情页改造同步
更新为「只允许一套导航可见」)、verify-brand-mark.mjs、lib/i18n-dead-keys.mjs
(只读诊断)。

回归:PC 100%(1464/1464,103 页,N/A 50)· 移动端 100%(807/807,47 页)。
门禁:component-page 86 · i18n 17 · brand 24 · routes all · smoke all ·
theme OK · isolation 31 · nav all · examples 9 · api-docs 10 · mobile-docs 12。

已知未做:i18n 另有约 44 条历史死键(非本次产生),已记为 ROADMAP S8-P6;
顶栏与悬浮区的两个主题入口为刻意设计(verify-theme 断言其互斥),未删。
2026-09-22 23:56:05 +08:00
aurora-admin f1fbfc2ddb feat(品牌标识): 几何 K 图标(favicon/顶栏标记/theme-color) + 并行会话成果入库
Regression / regression (push) Canceled after 0s
## 品牌标识(本次会话)

起因:品牌此前没有任何图形标识 —— 唯一 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
aurora-admin eb25feedaf feat(S6-P21): 组件族参数化(13族/44成员/导航族15文件同源/79→48概念组件)
【本次核心 · S6-P21】
- 族层数据:families.json + 44 份契约注入 family/familyRole/familyParams;
  data.json / data.js / site/details 同步。13 族 / 44 成员 / 35 独立 → 概念组件 79→48。
- 79 个 slug 全保留、集合逐一不变(铁律 5 对外承诺未破);frameworks 仍 395 文件、薄壳仍 79。
- 归族判据为契约中可核对字段(semanticTypeCandidates 重叠 / anatomy 为同一骨架子集 /
  变体维度同构 / doNotInvent 显式从属声明),每族 mergeBasis 写明依据,不按名字猜。
- 实现层合并(导航族端到端切片):tools/gen-family-impl.mjs 从 5 端模板生成
  TopMenu / SideMenu / MixedNavigation 共 15 文件,参数 direction=top|side|mixed;
  三份 CSS md5 完全相同 = 一份样式表服务三个组件。
- 新增 tools/gen-families.mjs、tools/gen-family-impl.mjs、tools/verify-families.mjs、
  tools/lib/family-model.mjs、tools/lib/family-impl/nav-menu/*.tpl。

【同时清掉此前已完成但未提交的批次】
生成物(data.json / data.js / site/sources / site/components 薄壳 / sitemap.xml / tests 报告)
跨阶段交织,无法拆成互相自洽的多个提交,故按既有批量风格合并提交:
- Package:三端可 import(S5-P18)+ 发布到私有 npm 源
- Docs site:导航语言改下拉(S5-P19)、详情页代码块默认展开、中英切换完整性
- Security:生产部署链审计修复(2026-09-19)+ 线上部署
- Theme modes 日间/夜间/自动;S1-P4 data.js 瘦身;S2-P5 暗色;S2-P6 跨端一致性;
  S2-P7 行为断言;S2-P9 FAQ;S3-P8 RTL;S3-P9 契约缺口解释层;S4-P12 发布流程
- 补入 tools/pack-deploy.mjs、run-site-smoke.mjs、verify-*.mjs,.dockerignore、
  安全审计修复与待决策项.md

【验收】
- node tools/verify-families.mjs → OK: 族层端到端一致(13 族 / 44 成员 / 79 组件不变 / 395 文件不变)
- node tools/verify-cross-platform.mjs → 79/79 identical(HEAD 基线 high 44)
- node tools/run-regression.mjs → 100%(79/79 页,1017/1017 断言,N/A 34),连跑 8 次一致,0 超时
- 逐页实测:topmenu / sidemenu / mixednavigation 各 13/13,帧内 direction 参数正确,0 JS 错误
- 零运行时依赖 OK;build-site.ps1 ASCII-only OK

【未纳入】site/components/<slug>/ 平台薄壳 316 个 —— 历史从未跟踪且属构建产物,保持现状。
2026-09-20 03:32:31 +08:00
aurora-admin f73ed394f4 feat(S2-P9+S4-P12): FAQ页240条聚合+发布流程release.mjs
P9: #/faq 路由+renderFaq(details批量懒加载每批10个)+顶栏/侧边栏双入口
    +guide-h3样式+9条i18n英文;浏览器实测240条/搜索宽度11条/0 JS错误。
    规划偏差:契约已在P4-D移出data.js,FAQ走details懒加载。
P12: tools/release.mjs(检查+bump双模式,只做本地准备不自动push/tag)
    +CONTRIBUTING发布5步+版本号规则;检查模式实测版本一致通过。
回归零影响:report.json 79/79、data.json未动。
2026-09-14 03:28:46 +08:00
aurora-admin e13049f5b9 feat(P5): 暗色模式真正实现(令牌31/对比度全过/10页实测/DARK32/预算292KB/回归1003)
Deploy to GitHub Pages / deploy (push) Failing after 2m30s
Regression / regression (push) Failing after 2m2s
2026-09-14 02:38:35 +08:00
aurora-admin cbed5ba7ca v1.3.3: 中英双语 i18n + 回归时序根治
i18n(竞品 7 家全有、Aurora 唯一还缺的一线能力)
- site/i18n.js:330 条文案字典,顶栏「中 / EN」切换,偏好存 aa-lang,
  <html lang> 与 document.title 同步
- 设计取舍:以中文源串为字典键,而非抽象 key。中文是规范原文语言也是
  app.js 现有字面量;源串作键意味着未收录文案自动回退原文,不会出现
  空白或 key 泄漏
- 覆盖:导航/侧栏/首页 Hero 与设计原则/总览/快速开始/设计规范(含令牌
  导出区)/For Agents 全表/更新日志/组件详情页(何时使用、API 三表、
  无障碍键盘表、Do&Don't、设计契约、实现资源、相关组件)/Playground/
  主题面板/搜索弹窗/FAB 提示
- 语言感知显示:组件名主次调换(中文模式主显中文名,英文模式主显英文
  名),详情页大标题不再重复;分类名走 CAT_EN 不占字典

修复回归时序(根治偶发)
- DensitySwitcher 对比度偶发失败:断言在演示页内联脚本执行完之前就跑了,
  读到 is-active 尚未应用的中间态(白字未落到品牌蓝底)。单页打开通过、
  并发收集器里偶发失败
- 根因是固定帧数等待(load + 双 rAF)在多个 iframe 抢主线程时不够稳。
  改为就绪轮询:readyState === 'complete' 且 DOM 连续 3 次采样(约 48ms)
  无变化才断言,另设约 4.8s 超时兜底
- 验证:四次连跑全部 100%,偶发不再复现

修复 i18n 接入中的三个真实缺陷
- TDZ 顺序:KIND_KEYS 等模块级常量在 I18N/T 定义前调用 T(),抛
  Cannot read properties of undefined。改为存中文源串、渲染时求值
  (模块级预先求值还会导致语言切换后不更新)
- 局部变量遮蔽:renderDesign 内原有 var T = data.tokens 遮蔽全局翻译
  函数,导致设计规范页整个渲染失败。改名 TOKENS
- 模板拼接括号:el() 调用在包装 T() 后少一个右括号

验证
- 9 个路由 × 2 语言全部正常渲染(中英文内容均非空且确实不同)
- 回归保持 100%:961 断言 / 925 通过 / 0 失败 / 79 页全通过 / N/A 36
2026-09-11 17:15:42 +08:00
aurora-admin 7c9516011b v1.3.2: 契约第三批 43 份(全量 79/79)+ 令牌导出三格式
契约全量闭环
- 补齐剩余 43 份契约,components/ 现为 79 份契约 JSON(此前 36)
- 批次 A(19):tag/tabs/steps/breadcrumb/dropdown/popconfirm/buttongroup/
  expandabletable/mergedcelltable/summaryrowtable/fixedcolumntable/
  enhancedtabnav/sidemenu/topmenu/mixednavigation/quicknav/anchornav/
  backtotop/pagetransition
- 批次 B(24):bankcardinput/idcardinput/plateinput/listpicker/
  rangequickpicker/dragupload/signaturepad/messagepro/notificationpro/
  progressvariants/skeletonpro/emptypro/loadingoverlay/resultvariants/
  exceptionvariants/confirmmodal/alertmodal/formmodal/fullscreenmodal/
  themeswitcher/layoutswitcher/densityswitcher/shortcutpanel/bottomsheet
- 内容逐字来自规格原文(组件1/2/5/6/7.txt);不发明,规格未明示进
  unknowns、明确排除进 doNotInvent。校验确认 79/79 字段完整、slug 一致
- 此前 43 个扩展组件的 API 靠 extractComponentAPI() 正则启发式,现有契约
  为准、源码扫描兜底

令牌导出(文档清单 C4 项)
- build-site.ps1 构建期产出三种标准格式,与站点展示的令牌同源:
  site/tokens/tokens.css   CSS 自定义属性
  site/tokens/dtcg.json    W3C DTCG($value/$type/$description,按
                           color/typography/spacing/radius/shadow/motion/size 分组)
  site/tokens/figma.json   Figma Tokens(Tokens Studio 可直接导入)
- 设计规范页新增「令牌导出」区,三个文件可下载(HTTP 200 已验)

规格与实现对齐
- 规格色彩系统同步到 v1.3.1 的 AA 达标值(15 处),原值处标注变更原因
  与对比度实测
- 修正一处既有漂移:Rate 选中星色规格 #FAAD14 白底仅 1.90:1,不满足
  WCAG 1.4.11 的 3:1;实现取 #2F54EB,规格已对齐并注明

修复
- build-site.ps1 令牌导出段两处 PowerShell 问题:$themes/$schema 被当变量
  展开导致 Null 键;Write-Output 字符串里的 {} 被当格式占位符

验证
- 站点版本 1.3.2、契约化 79/79、令牌导出 3 文件、静态薄壳 79
- 回归保持 100%:961 断言 / 0 失败 / 36 N/A / 79 页全通过(无回退)
2026-09-11 14:42:13 +08:00
aurora-admin 51ce3a28f7 Aurora Admin v1.2.0: 79 components x 5 ends, doc site, contracts batch 1, playground, regression, deploy ready 2026-09-10 19:21:56 +08:00