# SentAI 后台交互审计与重构规范 ## 1. 当前接口梳理 ### 通用 - `GET /health` ### 认证 - `POST /api/auth/login` ### 巡检平台 - `GET /api/dashboard/summary` - `GET /api/tasks` - `POST /api/tasks` - `PUT /api/tasks/:id` - `PATCH /api/tasks/:id/status` - `GET /api/runs/report` - `GET /api/runs` - `GET /api/runs/:runId` - `POST /api/runs/execute/:taskId` ### Agent-S - `GET /api/agent/health` - `POST /api/agent/run` ### 环境监测 - `GET /api/monitoring/summary` - `GET /api/monitoring/agents` - `POST /api/monitoring/agents` - `PUT /api/monitoring/agents/:id` - `PATCH /api/monitoring/agents/:id/status` - `PATCH /api/monitoring/agents/:id/features` - `POST /api/monitoring/agents/:id/verify` - `POST /api/monitoring/agents/:id/package` - `GET /api/monitoring/targets` - `POST /api/monitoring/targets` - `PUT /api/monitoring/targets/:id` - `PATCH /api/monitoring/targets/:id/status` - `DELETE /api/monitoring/targets/:id` - `GET /api/monitoring/runs` - `GET /api/monitoring/runs/:runId` - `DELETE /api/monitoring/runs/:runId` - `POST /api/monitoring/runs/actions/delete` - `POST /api/monitoring/runs/:runId/requeue` - `POST /api/monitoring/runs/actions/clear-queued` - `POST /api/monitoring/runs/actions/requeue-stale` - `POST /api/monitoring/runs/execute/:targetId` - `GET /api/monitoring/logs/recent` - `POST /api/monitoring/agent/heartbeat` - `POST /api/monitoring/agent/jobs/claim` - `POST /api/monitoring/agent/jobs/:runId/result` - `POST /api/monitoring/logs/ingest` ## 2. 当前页面问题清单 ### 导航与页面结构 - 多个页面各自维护导航文案和页面头,结构重复,状态不一致。 - 首页、环境监测、Agent 节点存在多套“工作区导航”实现,用户切换成本高。 - 列表页、详情页、表单页没有稳定的信息层级,容易在同一页堆叠过多内容。 ### 列表页 - 列表工具栏不统一:有的页面只有搜索,有的页面有筛选但没有排序/批量操作。 - 执行记录与监测记录早期偏“卡片流”,长周期使用时不利于检索、对比、批量处理。 - 目标列表、记录列表、Agent 列表都缺少统一的“主操作区 + 批量操作区 + 视图控制”节奏。 ### 详情页 - 详情区域字段排列依赖当前页面作者习惯,没有统一的“摘要 / 核心信息 / 附属信息 / 历史”结构。 - 执行结果与证据入口分散,用户不容易快速判断“先看哪里”。 ### 表单页 - 相同概念在不同页面命名不一致,例如“接入地址”在不同模式下含义完全不同。 - 高级 JSON 仍承担了部分主流程字段,降低可配置性和可维护性。 - 表单缺少“推荐填写顺序”和“默认执行路径”的稳定提示。 ### 全局反馈 - loading / empty / error / success / confirm 的样式和触发方式不统一。 - 批量删除、执行、重新入队等危险操作仍然缺少标准化二次确认摘要。 ## 3. 新的后台交互规范 ### 3.1 顶层信息架构 - 一级导航固定为:`概览`、`巡检任务`、`巡检报告`、`执行记录`、`环境监测`、`Agent 节点` - 每个一级资源只保留一个主目标: - 列表页:筛选、浏览、批量操作 - 详情页:判断状态、查看证据、执行操作 - 表单页:新增或编辑,不与大列表强耦合 ### 3.2 列表页规范 - 统一工具栏顺序: - 搜索 - 筛选 - 排序 - 批量操作 - 导出 - 新建 - 列表行以“低噪音高密度”为主,状态用小标签,不用整块背景色表达。 - 列表默认支持: - 多选 - 批量删除/批量重试/批量启停 - 分页 - 分组或折叠 ### 3.3 详情页规范 - 统一为 5 个区块: - 摘要区 - 核心信息区 - 附属信息区 - 操作区 - 历史区 - 危险操作集中放在操作区,不散落在多个卡片内部。 ### 3.4 表单页规范 - 表单按“基础信息 > 执行/接入方式 > 认证信息 > 证据采集 > 高级配置”分组。 - 可视化字段优先,高级 JSON 仅作为扩展入口。 - 同一个字段名在不同资源中尽量保持语义一致。 ### 3.5 全局反馈规范 - loading:顶部状态条 + 局部按钮忙碌态 - empty:资源型空状态,不显示“孤零零一句话” - error:显示人类可理解错误,不直接暴露底层异常 - success:顶部通知,带影响条数 - danger confirm:明确展示影响范围、资源名称和数量 ## 4. 重构优先级 ### P1 导航框架 - 抽离共享导航配置 - 抽离共享后台框架组件 - 页面头和主操作区统一 ### P2 列表页 - 统一工具栏 - 统一多选/批量操作 - 统一分页和分组 ### P3 详情页 - 统一摘要结构 - 统一证据入口 - 统一历史区 ### P4 表单页 - 统一分段结构 - 把主流程字段从 JSON 中提取出来 ### P5 全局反馈 - 统一反馈组件 - 统一确认弹窗策略 ## 5. 第一轮实施范围 - 抽离共享导航配置和后台框架 - 先重构 `环境监测` 与 `Agent 节点` - 后续将 `巡检任务 / 报告 / 执行记录` 接入同一框架