From 67374c78c3f464b6619bfb8d59b10e2adfde737f Mon Sep 17 00:00:00 2001 From: HIsheR Date: Fri, 23 Oct 2026 18:36:58 +0800 Subject: [PATCH] =?UTF-8?q?chore(backlog):=20=E7=81=8C=E5=85=A5=E5=AE=A1?= =?UTF-8?q?=E8=AE=A1=E4=BA=A7=E5=87=BA=E7=9A=84=20f01-f06=20=E5=BA=94?= =?UTF-8?q?=E4=BF=AE=E6=9D=A1=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .ua/backlog.json | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/.ua/backlog.json b/.ua/backlog.json index df7bf01..1bb94ec 100644 --- a/.ua/backlog.json +++ b/.ua/backlog.json @@ -316,6 +316,54 @@ "acceptance": "packages/skin/ui 新增 divider.ts:divider({label?, vertical?, dashed?}),水平/垂直两种方向,可带居中文案标签;只消费 --ua-* 令牌;导出、manifest、文档、llms-full.txt、README 清单同步;demo 加一节演示;npm run check 全绿", "status": "done", "notes": "divider(props):水平线用 ::before/::after 双线夹 label 居中文案;vertical 单线(伪元素清空,dashed 走 border-left);dashed 水平线 border-top 替代背景色;role=separator + aria-label;demo 新增 sec-divider(文案线/虚线/工具栏竖线三种用法);README 同步 33 组件" + }, + { + "id": "f01", + "title": "组件数漂移治理:AGENTS/ARCHITECTURE 数字纳入 verify 门禁", + "motivation": "组件数第三次漂移(AGENTS.md 与 ARCHITECTURE.md 仍写 27,实际 33),ua verify 只锁 README 区块锁不住散文数字", + "acceptance": "ua verify 新增规则:扫描 AGENTS.md 与 ARCHITECTURE.md 中的「NN 个组件」模式数字,与 manifest docs.components 长度比对不一致即报错;当前两处 27 改为 33;npm run check 全绿", + "status": "open", + "notes": "来源:2026-10-23 第二次冷启动审计应修 #1" + }, + { + "id": "f02", + "title": "check 链描述同步:AGENTS.md 与 ITERATION.md 补 verify 第六步", + "motivation": "AGENTS.md:10 与 ITERATION.md:31 写 5 步,package.json 实为 6 步(含 verify),文档与实际门禁不一致", + "acceptance": "两处描述改为 build → style → typecheck → smoke → index → verify 六步;npm run check 全绿", + "status": "open", + "notes": "来源:审计应修 #2" + }, + { + "id": "f03", + "title": "新增 ua lint-iterations 门禁:留痕格式机器校验", + "motivation": "iterations.log 41 行中 36 行违规(time 字段混用、UTC 时间戳、缺 commit),靠人工反复修补,规范缺机器校验", + "acceptance": "ua 新增 lint-iterations 子命令:校验每行 JSON 字段恰为 {ts,id,result,commit,summary}、ts 为本地 +08:00 ISO 且可用 Date 解析、commit 为 7-40 位哈希或 aborted 时允许为空、result 枚举 done/aborted;并入 npm run check;历史 36 条违规行按规范修复(ts 以对应 git 提交的 author date 本地时区回填,commit 补哈希);npm run check 全绿", + "status": "open", + "notes": "来源:审计应修 #3;历史行修复用 git log --format=%cI 按条目 id 关联提交时间回填" + }, + { + "id": "f04", + "title": "commit-lint 收严:chore/docs 等强制 scope,杜绝无 scope 放行", + "motivation": "COMMITTING.md 规定 () 格式,但 chore:、docs: 无 scope 被 lint 放行,历史还有 17 条 iter: 缺 scope", + "acceptance": "commit-lint 规则收严为:除 Merge 外所有 type 必须带 scope(scope 允许 cli/skin/core/backlog/留痕等枚举或条目 id);反向用例 chore: xxx / docs: xxx / iter: xxx 必须被拒;正例全部通过;npm run check 全绿", + "status": "open", + "notes": "来源:审计应修 #4;历史 iter 缺 scope 的提交不回改(已发布历史不动),只管增量" + }, + { + "id": "f05", + "title": "ua index 幂等化:generatedAt 仅内容变化时更新", + "motivation": "ua index 每次重写 .ua/index.json 的 generatedAt,npm run check 必然弄脏工作区,与「提交前 check」工作流冲突", + "acceptance": "index 命令改为:若除 generatedAt 外内容与现有文件一致则不写入(或 generatedAt 改为内容哈希派生);连续两次 npm run check 后 git status 必须干净", + "status": "open", + "notes": "来源:审计应修 #5" + }, + { + "id": "f06", + "title": "pnpm-lock.yaml 入库 + 目录树补全", + "motivation": "lockfile 缺失导致依赖树不可复现;ARCHITECTURE.md 目录树缺 scripts/、COMMITTING.md、ITERATION.md、.ua/ 清单等条目,新代理接手有盲区", + "acceptance": "pnpm-lock.yaml 提交入库;ARCHITECTURE.md 目录树补 scripts/(gitea.mjs/gitea-api.mjs 一句话说明)、COMMITTING.md、ITERATION.md、.ua/backlog.json、.ua/iterations.log、pnpm-workspace.yaml;npm run check 全绿", + "status": "open", + "notes": "来源:审计应修 #6 + 建议 #7" } ] }