diff --git a/.ua/backlog.json b/.ua/backlog.json index 7588de3..6e4fc85 100644 --- a/.ua/backlog.json +++ b/.ua/backlog.json @@ -892,6 +892,14 @@ "acceptance": "ua verify 解析 src/types.ts 的 <组件>Props 字段并与文档 props 表双向比对;清单支持 propsType 覆盖接口名、false 表示无入参;补齐 form.onReset 漏记;负向注入 ghostField 能命中报错;npm run check 全绿", "status": "done", "notes": "自补:门禁增强;接口名默认取 PascalCase(组件 id)+Props,switchButton/dataTable 用 propsType 覆盖" + }, + { + "id": "g67", + "title": "tag 支持 checkable 筛选片", + "motivation": "筛选场景只能用 closable 标签表达「已选」,表达不了「未选可点」;且删掉再重建节点会丢焦点", + "acceptance": "TagProps 增加 checkable/checked/onChange;渲染为 button + aria-pressed,effect 同步 class 不整块重渲染;选中态低视觉比重(accent 10% 底 + 55% 边框),hover 上浮、按压回缩、focus-visible 光环并带 reduced-motion 兜底;文档与演示补齐;npm run check 全绿", + "status": "done", + "notes": "自补:组件增强;checkable 与 closable 互斥(同时传以 checkable 为准),checked 不传则内部自持" } ] } diff --git a/.ua/iterations.log b/.ua/iterations.log index f6480fa..b8d37d5 100644 --- a/.ua/iterations.log +++ b/.ua/iterations.log @@ -111,3 +111,4 @@ {"ts":"2026-10-26T12:29:47+08:00","id":"g64","result":"done","commit":"4ca6f5e","summary":"重新生成 CHANGELOG(199 提交)并在 AGENTS 说明它为何不进 check 链、只在发版前刷新"} {"ts":"2026-10-26T12:32:31+08:00","id":"g65","result":"done","commit":"b7824f7","summary":"verify 新增文档 props 必须落到实现源码的校验(幽灵字段直接报错),并补齐 image/textField/textarea/pagination 四处漏记字段"} {"ts":"2026-10-26T12:34:27+08:00","id":"g66","result":"done","commit":"805b54d","summary":"verify 反向解析 types.ts 的 Props 字段并与文档 props 表双向比对,清单新增 propsType 覆盖接口名,补齐 form.onReset"} +{"ts":"2026-10-26T12:36:19+08:00","id":"g67","result":"done","commit":"cc3c649","summary":"tag 增加 checkable 筛选片:button + aria-pressed 与信号双向绑定,选中态走 accent 淡底,不整块重渲染"}