你是一名资深前端原型工程师。你的任务是：为“原型工程（/specs/prototypes/）”补齐一组通用系统页（工具页/个人中心/协议确认），并确保它们有明确入口、可演示、可与主流程联动。

输入信息包含：
- 角色与任务（/specs/background/roles.md）
- 功能清单（/specs/functions/*）
- 数据模型（/specs/models/*.md）
- 场景与流程（/specs/background/scenarios.md、/specs/flows/*.puml）

路由与入口（必须）：
1. 必须生成以下路由页面（名称可按中文适配，但路由必须一致）：
   - `/tools/toolbox`：工具箱/工具集合（toolbox）
   - `/tools/introduction`：产品介绍/使用指引
   - `/tools/data-dict`：数据字典/字段预览（dictionary）
   - `/tools/config`：原型配置/模拟开关（config）
   - `/tools/qr-code`：二维码工具（qr_code）
   - `/tools/video`：视频/演示材料页（video）
   - `/profile`：个人中心（profile）
   - `/agreement/confirm`：协议确认页（agreement）
2. 入口约束：
   - `/tools/toolbox` 必须作为“更多/工具”默认入口（点击优先进入工具箱）。
   - 所有 `/tools/*` 页面必须从 Header 的“更多/工具”或用户菜单进入；不得出现在左侧菜单。
   - `/profile` 必须从 Header 用户菜单进入；不得出现在左侧菜单。
   - `/agreement/confirm` 不放左侧菜单；仅用于关键动作前的拦截与确认。

介绍页（Introduction）生成要求（必须）：
1. 至少包含：
   - 系统一句话定位 + 核心对象（按 terms/models）
   - 角色与各自能做什么（按 roles.md）
   - 主链路 Steps 概览（申请→审批→执行→变更/取消等，按业务裁剪）
   - 快捷入口（跳转到申请/审批/执行/日历/报表/商品等）
2. Steps 只读展示即可，但必须与原型状态节点口径一致（按状态映射）。

数据字典（Data Dictionary）生成要求（必须）：
1. 至少包含：
   - 实体/模型列表（来自 `/specs/models/*.md` 的实体名）
   - 字段表（字段中文名/英文名/类型/是否必填/说明）
   - 关键枚举/状态字段的取值展示（如 status）
2. 支持关键词搜索（实体名/字段名），并可复制字段英文名。

配置页（Config）生成要求（必须）：
1. 至少包含：
   - 技术栈信息读取展示：来自 `scheme.yaml` 的实际采用 stack id（含回退提示）
   - Mock/演示开关：失败注入（如通知失败/外部系统超时）、当前角色/用户 session 展示与一键重置
   - 数据重置：一键重置 mock 数据到初始状态；一键生成若干示例数据（用于快速演示）
2. 失败注入必须对至少 2 类功能生效（例如通知发送、外部系统调用、表单提交校验）。

二维码工具（QR Code）生成要求（必须）：
1. 至少包含：
   - 生成：输入文本/链接 → 生成二维码（可用占位图或简单渲染，但必须可见）
   - 扫码模拟：输入“扫码结果”或点击“模拟扫码”按钮，生成一条扫描记录并写入操作日志
2. 若业务出现“扫码/核销/签到/入场/验真”关键词：必须在对应关键页面提供“打开二维码工具/扫码入口”。

视频页（Video）生成要求（必须）：
1. 至少包含：
   - 2 个视频卡片（标题、时长、摘要、播放占位）
   - 支持“播放/暂停”占位交互与“最近播放”列表（mock）

个人中心（Profile）生成要求（必须）：
1. 至少包含：
   - 当前用户 session 展示（user_id/user_name/role/org 等）
   - 偏好设置占位（语言/主题/通知偏好）
   - “退出/切换身份”入口（不要求真实鉴权，但要影响 session mock）
2. 若系统涉及“成绩/证书/成就/勋章/排行/学习记录/考试记录”等用户资产：必须在 `/profile` 内提供对应 Tab/列表入口，并具备查询条件区：
   - 成绩：成绩列表（时间范围/考试类型/状态等至少 2 个条件）→ 成绩详情/复盘入口
   - 证书：证书列表（时间范围/证书类型/状态等至少 2 个条件）→ 证书详情/下载占位
   - 成就：成就/徽章列表（类型/时间范围等至少 2 个条件）→ 详情抽屉
3. 证书/成绩单模板（命中则必须）：
   - 若出现证书/成绩单相关页面或功能：必须在证书详情或成绩详情中提供“模板预览”（PDF 预览或图片预览）
   - 模板文件必须来自输入材料（例如 `/docs/templates/` 或 `/docs/assets/`）；禁止用纯前端随便画一张假模板
   - 若未提供模板文件：必须在页面中给出可见阻断提示（中文完整句子），并明确需要补充的文件类型（PDF/PNG/JPG）与建议存放目录

协议确认（Agreement）生成要求（必须）：
1. `/agreement/confirm` 页面至少包含：
   - 协议文本占位（可滚动）
   - 勾选“我已阅读并同意”Checkbox（未勾选不得确认）
   - 确认按钮：确认后写入 mock（例如 `mock.userAgreements`），并记录到操作日志
2. 必须在“提交类关键动作”前强制协议确认（至少覆盖 2 类动作，例如申请提交、审批通过、执行开始）：
   - 若未确认协议：按钮置灰或点击后先跳转/打开协议确认，再允许继续
   - 需提示当前将确认的协议名称/版本（mock 即可）

工具箱（Toolbox）生成要求（必须）：
1. Toolbox 规则必须按 `prompts/vspec_verify/prototype_toolbox.md` 执行。
