{
  "schema_version": 1,
  "title": "AI UI/UX 设计手册",
  "language": "zh-CN",
  "source_root": "docs/books/ui-ux/",
  "site_root": "/books/ui-ux/",
  "sources_checked_on": "2026-11-12",
  "scope": {
    "primary": "响应式 Web",
    "secondary": [
      "移动端差异",
      "小程序差异",
      "桌面、语音与空间交互分类"
    ],
    "limits": "分类和条件性参考，不是所有场景的全集或完整生产组件库；无障碍需结合实际项目审计。"
  },
  "entry": "00-ai-reading-contract.md",
  "retrieval": "先读 required_for_ui_tasks，再按任务匹配 keywords。产品实现基线始终适用，专项章节按需加载。",
  "design_precedence": [
    "当前任务明确要求",
    "已确认的项目设计及平台约束",
    "现有组件与 token",
    "本手册条件性建议",
    "探索方案"
  ],
  "requirement_kinds": [
    "规范：附具体来源、等级与例外",
    "建议：允许按证据调整",
    "示例：不代表生产能力"
  ],
  "output_contract": [
    "用户与任务",
    "所选规则 ID、理由及例外",
    "页面模块",
    "页面与状态矩阵",
    "语义 token 和素材",
    "设计缺口与假设",
    "实现与检查证据",
    "未验证项",
    "用户术语与文案来源",
    "共享层与受保护个例",
    "数值与字段计量来源",
    "并发策略与副作用清理",
    "受影响路由与复验范围"
  ],
  "chapters": [
    {
      "id": "00",
      "file": "00-ai-reading-contract.md",
      "title": "AI 阅读协议",
      "keywords": [
        "入口",
        "提示词",
        "任务",
        "设计依据"
      ],
      "rules": [
        "AI-01",
        "AI-02",
        "AI-03",
        "AI-04",
        "AI-05"
      ]
    },
    {
      "id": "01",
      "file": "01-principles.md",
      "title": "通用原则",
      "keywords": [
        "原则",
        "层级",
        "一致性",
        "反馈",
        "控制"
      ],
      "rules": [
        "P-01",
        "P-02",
        "P-03",
        "P-04",
        "P-05",
        "P-06",
        "P-07",
        "P-08"
      ]
    },
    {
      "id": "02",
      "file": "02-layout-typography.md",
      "title": "布局与排版",
      "keywords": [
        "导航",
        "布局",
        "网格",
        "密度",
        "中文",
        "响应式"
      ],
      "rules": [
        "IA-01",
        "IA-02",
        "LAY-01",
        "LAY-02",
        "LAY-03",
        "TYPE-01"
      ]
    },
    {
      "id": "03",
      "file": "03-input-and-interaction.md",
      "title": "输入与交互",
      "keywords": [
        "点击",
        "触控",
        "键盘",
        "拖拽",
        "手势",
        "语音",
        "输入法"
      ],
      "rules": [
        "INT-01",
        "INT-02",
        "INT-03",
        "INT-04"
      ]
    },
    {
      "id": "04",
      "file": "04-components-and-feedback.md",
      "title": "组件与反馈",
      "keywords": [
        "按钮",
        "表单",
        "弹窗",
        "选择器",
        "表格",
        "分页"
      ],
      "rules": [
        "CMP-01",
        "CMP-02",
        "CMP-03",
        "CMP-04",
        "CMP-05"
      ]
    },
    {
      "id": "05",
      "file": "05-state-and-recovery.md",
      "title": "状态与恢复",
      "keywords": [
        "加载",
        "空状态",
        "失败",
        "离线",
        "重试",
        "冲突",
        "结果未知"
      ],
      "rules": [
        "ST-01",
        "ST-02",
        "ST-03",
        "ST-04",
        "ST-05"
      ]
    },
    {
      "id": "06",
      "file": "06-scenario-patterns.md",
      "title": "业务场景",
      "keywords": [
        "管理",
        "电商",
        "支付",
        "订阅",
        "协作",
        "AI",
        "媒体",
        "场景"
      ],
      "rules": [
        "SCN-01",
        "SCN-02",
        "SCN-03",
        "SCN-04"
      ]
    },
    {
      "id": "07",
      "file": "07-inverse-design.md",
      "title": "逆向思维",
      "keywords": [
        "简化",
        "克制",
        "逆向",
        "确认",
        "撤销",
        "打断"
      ],
      "rules": [
        "REV-01",
        "REV-02",
        "REV-03",
        "REV-04",
        "REV-05",
        "REV-06"
      ]
    },
    {
      "id": "08",
      "file": "08-color-system.md",
      "title": "色彩系统",
      "keywords": [
        "颜色",
        "配色",
        "主题",
        "深色",
        "token",
        "对比度"
      ],
      "rules": [
        "COL-01",
        "COL-02",
        "COL-03",
        "COL-04",
        "COL-05"
      ]
    },
    {
      "id": "09",
      "file": "09-visual-styles.md",
      "title": "风格选型",
      "keywords": [
        "风格",
        "编辑",
        "极简",
        "玻璃",
        "拟物",
        "复古",
        "品牌"
      ],
      "rules": [
        "STY-01",
        "STY-02",
        "STY-03"
      ]
    },
    {
      "id": "10",
      "file": "10-motion-and-performance.md",
      "title": "动效与性能",
      "keywords": [
        "静态",
        "动态",
        "动画",
        "转场",
        "实时",
        "性能",
        "减少运动",
        "声音",
        "触觉"
      ],
      "rules": [
        "MOT-01",
        "MOT-02",
        "MOT-03",
        "MOT-04",
        "MOT-05",
        "MOT-06"
      ]
    },
    {
      "id": "11",
      "file": "11-images-and-icons.md",
      "title": "图片与图标",
      "keywords": [
        "图片",
        "图标",
        "插画",
        "SVG",
        "素材",
        "裁切",
        "授权"
      ],
      "rules": [
        "AST-01",
        "AST-02",
        "AST-03",
        "AST-04",
        "AST-05"
      ]
    },
    {
      "id": "12",
      "file": "12-accessibility-and-adaptation.md",
      "title": "无障碍与特殊环境",
      "keywords": [
        "读屏",
        "焦点",
        "大字号",
        "RTL",
        "国际化",
        "弱网",
        "权限"
      ],
      "rules": [
        "A11Y-01",
        "A11Y-02",
        "A11Y-03",
        "ADAPT-01",
        "I18N-01"
      ]
    },
    {
      "id": "13",
      "file": "13-ai-delivery.md",
      "title": "AI 协作与验收",
      "keywords": [
        "规格",
        "任务卡",
        "交付",
        "验收",
        "截图",
        "证据"
      ],
      "rules": [
        "DEL-01",
        "DEL-02",
        "DEL-03",
        "DEL-04",
        "DEL-05",
        "DEL-06",
        "DEL-07"
      ]
    },
    {
      "id": "14",
      "file": "14-code-recipes.md",
      "title": "代码配方",
      "keywords": [
        "代码",
        "HTML",
        "CSS",
        "Vue",
        "请求",
        "模态框"
      ],
      "rules": [
        "CODE-01",
        "CODE-02",
        "CODE-03",
        "CODE-04",
        "CODE-05",
        "CODE-06"
      ]
    },
    {
      "id": "15",
      "file": "15-playground.md",
      "title": "交互演示",
      "keywords": [
        "演示",
        "实验",
        "切换",
        "模拟"
      ],
      "rules": [],
      "implemented_demos": [
        "配色与表面",
        "页面状态",
        "模拟保存与重试",
        "模态框焦点",
        "运动与静态替代"
      ]
    },
    {
      "id": "16",
      "file": "16-maintenance-and-sources.md",
      "title": "来源与扩展",
      "keywords": [
        "来源",
        "规范",
        "维护",
        "扩展"
      ],
      "rules": [
        "REF-01",
        "REF-02",
        "REF-03"
      ]
    },
    {
      "id": "17",
      "file": "17-user-facing-language.md",
      "title": "用户文案与内部语言隔离",
      "keywords": [
        "文案",
        "内部用语",
        "用户语言",
        "错误映射",
        "研发说明"
      ],
      "rules": [
        "COPY-01",
        "COPY-02",
        "COPY-03",
        "COPY-04",
        "COPY-05",
        "COPY-06",
        "COPY-07"
      ]
    },
    {
      "id": "18",
      "file": "18-shared-code-and-exceptions.md",
      "title": "共用代码与个例保护",
      "keywords": [
        "抽象",
        "复用",
        "组件",
        "拆分",
        "共用代码",
        "个例",
        "变体"
      ],
      "rules": [
        "ABS-01",
        "ABS-02",
        "ABS-03",
        "ABS-04",
        "ABS-05",
        "ABS-06",
        "ABS-07"
      ]
    },
    {
      "id": "19",
      "file": "19-tokens-and-magic-values.md",
      "title": "变量与魔法数值",
      "keywords": [
        "变量",
        "魔法数",
        "配置",
        "单位",
        "业务限制",
        "统一调整"
      ],
      "rules": [
        "VAL-01",
        "VAL-02",
        "VAL-03",
        "VAL-04",
        "VAL-05",
        "VAL-06"
      ]
    },
    {
      "id": "20",
      "file": "20-content-capacity.md",
      "title": "文案容量与排版",
      "keywords": [
        "文案长度",
        "字数",
        "字号",
        "emoji",
        "字素簇",
        "截断",
        "翻译"
      ],
      "rules": [
        "TEXT-01",
        "TEXT-02",
        "TEXT-03",
        "TEXT-04",
        "TEXT-05",
        "TEXT-06",
        "TEXT-07"
      ]
    },
    {
      "id": "21",
      "file": "21-advanced-js-interaction.md",
      "title": "深度 JS 交互",
      "keywords": [
        "JavaScript",
        "状态机",
        "并发",
        "竞态",
        "取消",
        "拖拽",
        "撤销",
        "清理"
      ],
      "rules": [
        "JS-01",
        "JS-02",
        "JS-03",
        "JS-04",
        "JS-05",
        "JS-06",
        "JS-07",
        "JS-08"
      ]
    },
    {
      "id": "22",
      "file": "22-multi-page-consistency.md",
      "title": "多页面风格一致性",
      "keywords": [
        "风格统一",
        "多页面",
        "偷懒",
        "设计丢失",
        "路由",
        "退化",
        "回归"
      ],
      "rules": [
        "CONS-01",
        "CONS-02",
        "CONS-03",
        "CONS-04",
        "CONS-05",
        "CONS-06"
      ]
    },
    {
      "id": "23",
      "file": "23-implementation-review.md",
      "title": "AI 实现质量关卡",
      "keywords": [
        "审查",
        "关卡",
        "任务卡",
        "发布",
        "质量",
        "AGENTS"
      ],
      "rules": [
        "GATE-01",
        "GATE-02",
        "GATE-03",
        "GATE-04",
        "GATE-05"
      ]
    }
  ],
  "resources": {
    "palettes": "/ui-ux/palettes.json",
    "css": "/ui-ux/tokens.css",
    "color_utils": "/ui-ux/color-utils.mjs",
    "brief": "/ui-ux/design-brief.example.json",
    "assets": "/ui-ux/assets.json",
    "starter": "/ui-ux/starter.html",
    "license": "/ui-ux/LICENSE.txt",
    "text_policy": "/ui-ux/text-policy.mjs",
    "project_rules": "/ui-ux/project-ui-rules.example.md"
  },
  "verification": {
    "source": "node scripts/verify-ui-ux.mjs",
    "build": "npm run build",
    "browser": "UIUX_BASE_URL=http://127.0.0.1:5176 node scripts/verify-ui-ux-browser.mjs",
    "meaning": "检查结果只证明实际运行范围；人工验收与真实读屏测试另行记录。",
    "behavior": "node scripts/verify-ui-ux-behavior.mjs"
  },
  "required_for_ui_tasks": [
    "00-ai-reading-contract.md",
    "23-implementation-review.md"
  ],
  "site_path_rule": "部署后以 site_root 加文件名，并将末尾 .md 替换为 .html；总览为 site_root。",
  "quality_contract": {
    "product_copy": "面向实际用户，内部说明、原始异常、教学控制不进入产品区",
    "reuse": "按语义和变化原因共享，个例注明作用域与保留行为",
    "values": "视觉变量、业务规则、交互策略分别管理，单位与来源明确",
    "content": "业务长度、编辑预算、字号、容器容量分别处理，计量规则一致",
    "interaction": "状态所有权、并发、取消、恢复、焦点与生命周期明确",
    "multi_page": "每个实际路由与适用状态有设计依据和证据，公共修改触发复验"
  }
}
