# Design System 1.1.1 完整性修复报告 这是1.1.1的历史修复记录,文中的58/58及233个Tokens属于该修订。当前1.1.2的64/64离线检查、234个Tokens、71模块逐页证据及未完成的真实浏览器验收见 [FINAL_ACCEPTANCE.md](FINAL_ACCEPTANCE.md)。`qa/repair-validation.json` 已更新为本轮1.1.2运行结果,不应再用它证明旧修订的运行快照。 日期:2026-10-09。范围:`design-system-v1.1` 的维护源、静态生成页面、组件目录、设计规范与回归证据。保持既有玻璃材质、科技蓝、家族分类与本地模拟场景;原0.1基线及正式产品未修改。 本次新增的是已有家族缺少的规范、公共行为和验证证据。公开目录仍为71个模块,92个原条目保留,31个有效源章节完整归属;108个原展示分区 + 16个独立规范 + 7个官网方案 = 131个目录条目。版本唯一来源:`scripts/system-version.json`;仍在1.1目录内提供兼容修订1.1.1。 ## 已修复 | 优先级 | 审查问题与影响 | 修复后的行为 | 维护源 / 相关页面 | 定向证据 | |---|---|---|---|---| | P0 | 侧栏聊天折叠按钮不在conversation内,空引用中断交互 | 从所属frame解析面板,所有入口同步expanded/controls;收起聚焦可达的展开按钮,展开恢复聊天入口 | scripts/workspace_repair.py;scripts/workspace-repair.js;workspace.html | qa/workspace-repair.mjs | | P0 | 功能输入边界复用白色玻璃装饰边,稳定背景下对比不足 | 字段88%浅玻璃与strong功能边界;hover更深;保留错误/成功/焦点;减少透明度及无blur使用实底 | scripts/liquid_material.py;scripts/development-tokens.css;scripts/document.css | qa/foundations-repair.py:静态最暗合成边界3.173:1、实底4.032:1;不是照片实测 | | P1 | Enhanced Select实际聚焦按钮丢失帮助/错误/必填语义 | 原生select仍负责表单值,按钮同步名称、describedby、invalid、required、disabled、busy;属性、选项与reset同步 | scripts/select-enhancement.js;selects.html;settings.html | qa/component-state-repair.mjs;qa/select-placement.mjs | | P1 | 表格只有全局错误,字段未关联;保存/取消跳到第一行 | 字段级错误ID/invalid/describedby、修正清除;首个错误聚焦,保存/取消回同一稳定ID行,保留IME草稿 | scripts/developer-components.js;tables.html | qa/component-state-repair.mjs;qa/developer-components.mjs | | P1 | Cascade标签指向不存在的搜索输入 | 级联采用真实具名group,各原生选择器保持标签 | scripts/developer-components.js;selects.html | qa/component-state-repair.mjs | | P1 | 菜单全部进入Tab序列,Tab/离焦不关闭 | 共享roving焦点、禁用项跳过、方向键/Home/End;Tab关闭并到下一控件,Shift+Tab/Esc恢复入口;保留原动作事件 | scripts/overlay-behavior.js;scripts/overlay-specimens.mjs;menus.html | qa/overlay-repair.mjs | | P1 | 日期全部可Tab、缺周首尾键与完整网格语义 | grid/row/gridcell与星期名称,单一日期tabstop;Home/End、方向键、跨月与边界焦点恢复 | scripts/system-review.js;date-pickers.html | qa/business-repair.mjs;qa/family-specimens.mjs | | P1 | Popover只有静态样式,缺真实开闭与焦点协议 | 具名非模态panel、触发/显式关闭/Esc/外点/离焦、视口定位、popoverchange事件;模态内使用top layer或归属回退 | scripts/overlay-behavior.js/css;scripts/overlay-specimens.mjs;popovers.html | qa/overlay-repair.mjs | | P1 | Tooltip静态可见;工作区重复逻辑缺描述、Esc和悬停延续 | 共享悬停/聚焦提示,保留描述、可移入提示阅读、Esc抑制即时重开;长名称仅溢出显示;侧栏与工作区复用一套 | scripts/overlay-behavior.js/css;scripts/collapsible-sidebar.js;scripts/workspace_repair.py;tooltips.html | qa/overlay-repair.mjs;qa/collapsible-sidebar.mjs | | P1 | 详情Esc关闭后焦点丢失 | 显式关闭与Esc使用同一恢复入口 | scripts/system-review.js;drawers.html;search.html | qa/business-repair.mjs | | P1 | 工作区搜索按钮无动作;独立搜索选择只toast | 工作区搜索实际项目/对话/当前节点;无结果、取消恢复焦点、内部Ctrl/Cmd+K;独立搜索有本地详情/对应链接与选择事件 | scripts/workspace-repair.js/css;scripts/system-review.js;workspace.html;search.html | qa/workspace-repair.mjs;qa/business-repair.mjs | | P1 | 固定“已保存10:25”不随修改变化 | 标题、节点/位置/配置、模型/启用状态和连线产生dirty;保存到本页产生独立快照及事件,任务切换保留各自状态;选中/装饰不产生假修改,刷新重置 | scripts/workspace_repair.py;scripts/workspace-repair.js;workspace.html | qa/workspace-repair.mjs | | P1 | 节点移动仅拖动,缺键盘等效 | 节点主体方向键4px、Shift+方向键16px,保留焦点与原端口点击连线;不拦截子字段。复制保留模型/禁用状态,独立配置使用副本名;卡片与配置面板模型/启用状态往返同步 | scripts/workspace-repair.js;workspace.html | qa/workspace-repair.mjs;既有端口回归 | | P1 | 版本恢复/冲突差异/审批详情仅提示或不可观察 | 恢复先比较/确认并生成新版本、保留历史;冲突显示两侧并明确选择/重试;审批详情、拒绝原因校验、结果状态;发布预览显示实际选择,统一本地事件 | scripts/system-review.js/css;versions.html;save-recovery.html;approvals.html;publishing.html | qa/business-repair.mjs | | P1 | 部分待办反馈与环图分类硬编码 | 待办成功/逾期/今日复用语义色;环图前四分类接共享chart-series,业务扩展色有明确边界 | scripts/collection-components.css;scripts/circular-progress.css | qa/foundations-repair.py;qa/todos.mjs;qa/circular-progress.mjs | | P1 | 动效时长重复,透明度回退遗漏伪元素 | spinner/skeleton/图标/环形未知进度/语音/文件夹复用受控时长与缓动Tokens;透明度/blur偏好同时处理伪元素 | scripts/development-tokens.css;scripts/document.css;scripts/motion-icons.css;scripts/workflow-content.css | qa/foundations-repair.py;qa/motion-icons.mjs | | P1 | manifest仍声明不存在的ds-overview和旧data形状 | 登记七个真实ds-analysis-*元素、各自data/state和analysis-retry/detail;登记共享overlay与workspace session契约 | component-manifest.json;scripts/overview-components.js | qa/overview-components.mjs;qa/component-status.mjs | | P1 | 按钮/响应式文档与实现不一致 | 默认md按钮full/22px、rounded为受控12px变体;工作区按主区760和容器560适配,用户侧栏偏好独立 | DESIGN.md;README.md;DEVELOPMENT_STANDARD.md;scripts/catalog-standard.html | qa/workspace-layout.mjs;qa/audit-buttons.py | | P2 | 分类计数过期,qa/catalog-build.json拼接两个JSON | 计数统一131;构建器直接写单个合法结果JSON,标准输出不当JSON拼接保存 | scripts/build-catalog-pages.mjs;CATALOG_CLASSIFICATION.md;PRODUCT.md;qa/catalog-build.json | 目录覆盖回归与JSON解析 | ## 已补齐 | 优先级 | 补齐内容 | 范围与边界 | 维护源 / 目录 | |---|---|---|---| | P1 | 数字输入独立规范 | min/max/step、空值与0区分、必填/边界错误、readonly/disabled、原生输入、字段错误关联 | scripts/family-specimens.mjs/js;number-inputs.html#number-input-standard | | P1 | 复选框独立规范 | 多选组、全选与indeterminate、最少选择校验、disabled、原生label与提交语义 | scripts/family-specimens.mjs/js;checkboxes.html#checkbox-standard | | P1 | 单选框独立规范 | 原生同name组、唯一选中、方向键平台行为、必填/disabled,不模拟额外组件体系 | scripts/family-specimens.mjs/js;radios.html#radio-standard | | P1 | 菜单/Popover/Tooltip独立规范 | 职责分工、Tokens、适用状态、真实示例、键盘/焦点、事件与生命周期 | scripts/overlay-specimens.mjs;menus.html;popovers.html;tooltips.html | | P1 | 71模块适用状态与成熟度台账 | 区分源实现、原生行为、共享继承、业务责任和不适用;独立规范/组合示例/公共API及具体验证路径,不将ready等同生产完备 | COMPONENT_STATUS.md;scripts/component-status.json;qa/component-status.mjs | | P1 | 修订与验证入口 | 唯一版本源、CHANGELOG、首页标准说明、接入契约、修复映射、可重复离线检查入口 | scripts/system-version.json;CHANGELOG.md;DEVELOPMENT_STANDARD.md;qa/run-repair-checks.mjs | ## 验证与证据边界 本轮以维护源生成全量目录,定向回归后执行既有组件/业务/工作区/画布/官网与目录回归。当前默认主题导出233个Tokens;工作区定向回归覆盖17个实际操作序列,包含独立节点页无工作区外壳的配置与复制。最终结果:58/58项检查通过(9项语法检查、46个既有/新增离线套件、3个补充契约/生成验证);工作区17/17操作序列通过。最终执行结果以 `qa/repair-validation.json` 为准;入口为 `node qa/run-repair-checks.mjs`。`qa/catalog-family-coverage.json`、`qa/catalog-manifest.json` 和 `qa/catalog-build.json` 记录源归属、章节与当前页面产物。 这些测试使用源码解析、CSS结构/静态sRGB计算及JSDOM。JSDOM的dialog、布局、ResizeObserver和动画帧有替身,不能证明真实焦点圈、原生Tab布局、照片对比、viewport定位、触屏或读屏表现。没有新增假的截图或视觉通过结论。 ## 暂未处理 | 优先级 | 项目 | 原因与后续验收 | |---|---|---| | P0(验收) | 真实浏览器渲染、缩放/长内容、照片上的对比度、触屏、读屏与系统偏好模式 | 当前工具明确禁止访问file页面和localhost绕行;实际浏览器验收仍开放。功能源已修复,但不得视为完整无障碍/视觉验收。 | | P2 | 暗色、RTL、多滑块、复杂Tree、多图表类型 | 当前页面场景无新增需求,避免为组件数量扩张。 | | P2 | 通用Overlay Drawer、全画布撤销重做 | 当前内联详情侧栏及连线历史满足示例边界;新增全局行为需要真实使用需求。 | | 场景边界 | 后端保存、权限/审批请求、真实AI/发布、正式产品组件接入 | 当前是离线设计系统原型。本轮补齐可观察本地交互和事件协议,不把模拟结果称为生产完成。 | 人工验收建议按下表逐项记录浏览器/版本、尺寸、输入方式和实际结果,失败则回到相应维护源修复。 | 人工项 | 建议覆盖 | |---|---| | 布局与缩放 | 390/768/851/1440宽、低高度、200%文本与页面缩放;侧栏hidden/peek/pinned,主区跨760,工作区容器跨560,长名称/表格内部滚动。 | | 键盘/焦点 | 菜单Tab/Shift+Tab、Popover/Tooltip Esc、日期跨月/边界、表格第三行保存/取消、对话折叠/恢复、搜索结果、节点移动及端口点击连线。 | | 读屏 | 标签/帮助/错误/required/disabled、日期年月日与星期、grid、表格首错/同一行、Popover名称、状态消息;检查动态状态不过度重复播报。 | | 材质与偏好 | 实际亮/暗照片上的文字与边界;减少透明度、减少动效、无blur和强制颜色;确认所有操作仍可达。 | | 触屏 | 端口命中、菜单/日期/浮层操作、无需hover的必要信息、软键盘打开后的Select/Popover位置。 |