# Day 2:任务规则中心联调 TODO 目标:把任务规则中心从静态 UI 改成可对接后端的生产形态,覆盖规则、技能、MCP、任务四类资产。重点是规则 Markdown 编辑、版本切换、审核者信息、上线约束。 参考文档: - `document/development/agent plan/07_capability_registry.md` - `document/development/agent plan/13_rule_formation_lifecycle.md` - `document/development/agent plan/06_data_contracts_and_governance.md` ## 0. 开始前检查 - [ ] 确认 Day 1 API 已可访问。 - [ ] 确认前端任务规则中心文件位置。 - [ ] 确认现有路由名称和导航名称。 - [ ] 确认现有 UI 风格,不重新做大改版。 - [ ] 确认当前页面已有页签:规则、技能、MCP、任务。 - [ ] 确认详情页隐藏顶部 title bar 的逻辑仍然有效。 - [ ] 确认返回列表栏高度没有被重新拉高。 ## 1. API Client - [ ] 新增或扩展资产列表请求函数。 - [ ] 新增资产详情请求函数。 - [ ] 新增版本列表请求函数。 - [ ] 新增规则 Markdown 保存请求函数。 - [ ] 新增审核请求函数。 - [ ] 新增上线请求函数。 - [ ] 新增运行日志请求函数。 - [ ] 给所有请求增加加载态。 - [ ] 给所有请求增加错误态。 - [ ] 给所有写请求增加成功提示。 验收证据: - [ ] 前端不再只依赖本地硬编码资产数据。 - [ ] 后端不可用时页面有明确错误提示。 ## 2. 列表页数据接入 - [ ] 规则页签请求 `asset_type=rule`。 - [ ] 技能页签请求 `asset_type=skill`。 - [ ] MCP 页签请求 `asset_type=mcp`。 - [ ] 任务页签请求 `asset_type=task`。 - [ ] 搜索框传递关键词或本地过滤。 - [ ] 类型下拉和搜索框可以同时生效。 - [ ] 状态筛选可以过滤 `draft | review | active | disabled`。 - [ ] 列表卡片展示名称。 - [ ] 列表卡片展示摘要。 - [ ] 列表卡片展示状态。 - [ ] 列表卡片展示负责人。 - [ ] 列表卡片展示最近更新时间。 - [ ] 空数据时展示空态。 - [ ] 加载中时展示骨架或加载状态。 验收证据: - [ ] 四个页签都能切换。 - [ ] 四个页签都有数据或空态。 - [ ] 搜索和筛选不会互相覆盖。 ## 3. 规则详情页主信息 - [ ] 打开规则资产时请求详情 API。 - [ ] Hero title 展示规则名称。 - [ ] Hero title 下方展示审核者。 - [ ] Hero title 下方展示审核状态。 - [ ] Hero title 下方展示上线条件。 - [ ] Hero title 高度保持紧凑。 - [ ] 详情页不显示外层顶部 title bar。 - [ ] 返回列表栏高度保持原有紧凑高度。 验收证据: - [ ] 用户能一眼看到该规则是否已审核。 - [ ] 用户不会看到两层 title。 ## 4. Markdown 编辑器 - [ ] 从当前版本读取 Markdown 内容。 - [ ] Markdown 编辑框高度和右侧版本卡片底部对齐。 - [ ] Markdown 编辑框支持长内容滚动。 - [ ] Markdown 编辑框保存时调用 API。 - [ ] 保存后创建新版本或更新草稿版本,按后端约定执行。 - [ ] 保存成功后刷新版本列表。 - [ ] 保存失败时保留用户输入。 - [ ] 编辑器禁用态覆盖 `active` 且无编辑权限的情况。 - [ ] 编辑器底部展示最后保存时间。 验收证据: - [ ] 编辑 Markdown 后刷新页面内容仍存在。 - [ ] 保存失败不会丢内容。 - [ ] 左右卡片底部视觉对齐。 ## 5. 版本卡片 - [ ] 右侧只保留版本信息卡片。 - [ ] 版本卡片宽度足够展示版本号、日期、状态。 - [ ] 展示最近 5 个版本。 - [ ] 当前版本有明显但不突兀的标识。 - [ ] 当前版本标识居中显示。 - [ ] 选中状态只变色,不改变内容对齐。 - [ ] 日期列和其他版本日期对齐。 - [ ] 点击非当前版本时弹出确认弹窗。 - [ ] 弹窗展示目标版本号。 - [ ] 弹窗展示切换风险提示。 - [ ] 确认后切换当前展示内容。 - [ ] 取消后不改变当前版本。 验收证据: - [ ] 版本切换不会造成列表文字位移。 - [ ] 当前版本背景能完全覆盖内容区域。 - [ ] 版本卡片不贴右侧边界。 ## 6. 审核与上线 - [ ] 详情中展示审核者姓名。 - [ ] 详情中展示审核时间。 - [ ] 详情中展示审核意见。 - [ ] 未审核规则显示不能上线原因。 - [ ] 点击上线时调用后端上线接口。 - [ ] 后端拒绝时展示拒绝原因。 - [ ] 审核通过后上线按钮可用。 - [ ] 审核动作写入审计日志。 - [ ] 上线动作写入审计日志。 验收证据: - [ ] pending 规则无法上线。 - [ ] approved 规则可以上线。 - [ ] rejected 规则无法上线。 ## 7. 技能详情 - [ ] 技能页签列表展示能力名称。 - [ ] 技能详情展示能力说明。 - [ ] 技能详情展示输入参数。 - [ ] 技能详情展示输出参数。 - [ ] 技能详情展示依赖能力。 - [ ] 技能详情展示适用场景。 - [ ] 技能详情展示负责人。 - [ ] 技能详情展示版本。 - [ ] 技能详情不使用规则 Markdown 编辑器。 验收证据: - [ ] 技能和规则详情不会混用 UI。 ## 8. MCP 详情 - [ ] MCP 页签列表展示外部服务名称。 - [ ] MCP 详情展示服务类型。 - [ ] MCP 详情展示调用地址或能力名。 - [ ] MCP 详情展示鉴权方式。 - [ ] MCP 详情展示超时配置。 - [ ] MCP 详情展示降级策略。 - [ ] MCP 详情展示最近调用状态。 - [ ] MCP 详情展示负责人。 验收证据: - [ ] MCP 被定义为外部服务,而不是技能规则。 ## 9. 任务详情 - [ ] 任务页签展示定时任务名称。 - [ ] 任务详情展示 cron 或调度周期。 - [ ] 任务详情展示执行 Agent,默认 Hermes。 - [ ] 任务详情展示任务目标。 - [ ] 任务详情展示风险等级。 - [ ] 任务详情展示最近执行时间。 - [ ] 任务详情展示最近执行结果。 - [ ] 任务详情展示启停状态。 验收证据: - [ ] 定时任务用户可见名称为“任务”。 - [ ] 技术字段可保留 `schedule`,但 UI 不显示“定时任务”。 ## 10. 前端质量 - [ ] 页面在 1366 宽度下无横向滚动。 - [ ] 页面在 1920 宽度下右侧卡片不过宽。 - [ ] 页面在窄屏下详情区域可滚动。 - [ ] 所有按钮有禁用态。 - [ ] 所有弹窗有取消按钮。 - [ ] 所有表单错误有提示。 - [ ] 所有日期格式统一。 - [ ] 状态颜色和现有系统一致。 验收证据: - [ ] `npm run build` 通过。 - [ ] 任务规则中心手动走查通过。 ## 11. Day 2 验收 - [ ] 规则、技能、MCP、任务四个页签可用。 - [ ] 搜索框和筛选下拉可用。 - [ ] 规则详情展示 Markdown。 - [ ] 规则 Markdown 可保存。 - [ ] 右侧只保留版本信息。 - [ ] 版本可切换且有弹窗确认。 - [ ] 审核者信息在标题下方。 - [ ] 未审核规则不能上线。 - [ ] 前端构建通过。 - [ ] 所有完成项已用 `[x] ~~...~~` 标记。 ## 阻塞记录 - [ ] 暂无。 ## 日终交接 - [ ] 写明已接入的 API。 - [ ] 写明仍然使用 Mock 的字段。 - [ ] 写明 UI 未完成项。 - [ ] 写明 Day 3 语义本体需要复用的资产数据。