diff --git a/.ua/backlog.json b/.ua/backlog.json index 73aa6c7..018ba05 100644 --- a/.ua/backlog.json +++ b/.ua/backlog.json @@ -2420,6 +2420,15 @@ "status": "done", "notes": ".ua-timepicker-pop 补 min-width: 132px(触发器 min-width 116 + 两侧内距,展开时左右边缘对齐);.ua-timepicker-cell 补 min-width: 44px 与 text-align: center(24 与 05 两位数纵向对齐);第二列用 .ua-timepicker-col + .ua-timepicker-col 加 margin/padding 与 border-left: 1px var(--ua-border-subtle) 分界;新声明全部并回原有选择器块(不新起重复块),audit:visual 十一类仍 0,verify 的滚动容器覆盖校验通过", "domain": "visual" + }, + { + "id": "g226", + "title": "配方通用约定补三条单一来源规则", + "motivation": "本轮踩到的三类重复(同一段动效各写一份、新增滚动容器漏进滚动条名单、颜色令牌只改 tokens.css)都已有 verify 拦网,但写组件的人不知道这回事;把结论写进「通用约定」,比藏在门禁报错里更容易被读到。", + "acceptance": "recipes.md 的《通用约定》补三条:动效统一 ua-pop-drop / ua-pop-rise 与令牌、新增滚动容器要进 scrollbar-width 名单、新增颜色令牌要 tokens.css 与 tokens.json 双写;仍然保持「先查令牌再写样式」等既有条目不变;npm run check 全绿。", + "status": "done", + "notes": "recipes.md 末尾三条新约定各自点出「违反时哪道门禁会报」:g214 收敛的 ua-pop-drop / ua-pop-rise(对应 checkDuplicateKeyframes)、滚动容器进 scrollbar-width 名单(对应 checkScrollCoverage)、颜色令牌 tokens.css + tokens.json 双写(对应 checkTokenParity);llms-full 重生成,配方结构校验(13 条编号连续 + 通用约定原样保留)通过", + "domain": "tooling" } ] } diff --git a/.ua/iterations.log b/.ua/iterations.log index f24f26f..16429fe 100644 --- a/.ua/iterations.log +++ b/.ua/iterations.log @@ -269,3 +269,4 @@ {"ts":"2026-10-26T20:04:32+08:00","id":"g223","result":"done","commit":"126da05","summary":"timePicker 非档值(如 09:07 + 15 分钟档)改为按最近档高亮与滚动,锚点优先跟值,消除「有值却无高亮」的空弹层"} {"ts":"2026-10-26T20:05:13+08:00","id":"g224","result":"done","commit":"63351dc","summary":"timePicker 收起态支持 ↑↓ 按步长微调、Shift + ↑↓ 按小时微调,跨零点环形回绕,与收回合同一套 keydown"} {"ts":"2026-10-26T20:05:58+08:00","id":"g225","result":"done","commit":"9c783cd","summary":"时分两列补 1px 分界线 + 左侧内距,弹层与单元格定最小宽度并居中,消除「两列像一列」「弹层比触发器窄」的观感问题"} +{"ts":"2026-10-26T20:06:34+08:00","id":"g226","result":"done","commit":"93a7c67","summary":"配方《通用约定》补三条单一来源规则:动效走 ua-pop-drop / ua-pop-rise、新滚动容器进 scrollbar 名单、颜色令牌两处双写"}