feat(web): split plan page from tasks (FE-6)

- Nav overview group: 首页 / 任务 / 计划 / Agent 会话; tasks page drops the plan tab
- /console/tasks?tab=plan[&job=] redirects to /console/schedules[?job=]
- Plan page: 自动任务 compact grouped list (switch, interval preset/custom, last result,
  countdown, failure reason, run now/skip/run records) and Agent 巡检 cards (goal,
  allowlist, budget, upstream/model, trigger, cost per run, recent sessions); split stats
- Home plan band: two counts linking to #auto / #checks
- Docs: console-ia §7.4a, glossary, schedules runbook; smoke routes

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-09-29 17:13:54 +08:00
1 parent c3aaf901ad
commit baf2d6ea04
22 files changed
+1030 -417

No files matched your search

+10 -1
View File
@@ -312,7 +312,7 @@
| --- | --- |
| `/console/engine[?…]` | `/console/tasks[?…]` |
| `/console/engine/:runId` | `/console/tasks?run=:runId`(任务抽屉) |
| `/console/schedules` | `/console/tasks?tab=plan` |
| `/console/schedules` | ~~`/console/tasks?tab=plan`~~ FE-6 起反过来:`/console/tasks?tab=plan[&job=]` → `/console/schedules[?job=]` |
| `/console/tasks?tab=business` / `tab=tasks` | `/console/tasks` |
| `/console/identity`(`tab=pool`) | `/console/library?filter=unidentified` |
| `/console/identity?tab=external` / `aliases` | `/console/library?view=identities` / `view=aliases` |
@@ -330,6 +330,15 @@
正在进行(任务流进行中前 5 + 排队/下载计数)、需要我处理(计数 + 前 3 条)、媒体概览(作品/季/资产计数、版本目标满足率、今日产出)、计划带(下一次运行的 5 项、启用/失败计数、快速开关)、最近完成/失败、缓存与保留、来源健康(站点 + 账号状态,来自 `/sites?include=accounts`,有问题的排前)、运行状态摘要(`/system/health`)。
### 7.4a 任务与计划分开(FE-6,2026-09-29)
- 侧栏概览组:首页 / 任务 / 计划 / Agent 会话(共 15 项)。任务页只剩 全部 / 进行中 / 失败 三个页签。
- 计划页 `/console/schedules`(`components/schedules/schedule-board.tsx` 的 `PlanBoard`):顶部两组计数(自动任务:已启用 / 上次失败 / 运行中;Agent 巡检:已启用 / 上次失败 / 近 7 天费用),点一下滚到对应节。
- 「自动任务」`#auto`:kind=task,按 采集 / 下载 / 整理 / 维护 分组的紧凑列表(`auto-task-list.tsx`):名称、开关、间隔(下拉常用值 + 自定义;cron 直接改表达式)、上次结果与耗时、下次运行倒计时、失败原因(折叠)、操作(立即执行 / 跳过本次 / 运行记录 → 任务页 `kind=schedule&ref=` / 恢复默认)。
- 「Agent 巡检」`#checks`:kind=agent_check,卡片(`agent-check-card.tsx`):目标模板、能力白名单(前 6 项 + N)、预算、上游(最近会话的 provider · model,没有会话时显示默认 Agent 上游)、触发条件、间隔、下次、每次费用(上次 + 近 N 次平均)、最近结果、最近 3 个会话(链到 `/console/agent/:id`);运行记录抽屉逐条链会话;新建 / 编辑巡检对话框。费用与模型来自 `GET /agent/runs?trigger=schedule`,按 `createdBy = schedule:<id>` 分组。
- `?job=` 高亮并滚到该行 / 卡片。
- 首页计划带改为两个计数块:自动任务(启用 / 失败)→ `#auto`,Agent 巡检(启用 / 近 7 天费用)→ `#checks`。
### 7.5 运行状态页(`/console/status`)
顶部横幅按 `level` 列出问题;进程表(类型、主机/pid、版本、启动、最后心跳、延迟/峰值、并发、运行中、SSE、内存);趋势(1/6/24/168 小时,事件循环延迟峰值与 SSE 连接数,recharts 无彩,多进程靠线型和图例区分);数据库、任务引擎、定时任务(失败项链到计划卡)、磁盘(阈值刻线)、挂载根。
+2 -1
View File
@@ -33,12 +33,13 @@
| OAuth 型上游的登录 | 订阅登录 | OAuth 登录、账号授权 |
| 密钥、Cookie、密码、令牌的统称 | 凭证 | 凭据、认证信息 |
| ScheduledJob | 定时任务 | 计划任务、周期作业、cron 任务 |
| 定时任务的配置页 `/console/schedules` | 计划;两节叫"自动任务"(kind=task)与"Agent 巡检" | 定时任务看板、计划任务 |
| kind=agent_check 的定时任务 | 巡检 | 巡查、Agent 定时任务 |
| 定时任务每次执行的记录 | 运行记录 | 历史、执行历史 |
| AgentRun(parent_run_id 非空) | 子会话;派生它的叫"父会话" | 子代理、子 Agent、subagent |
| AgentRun 被中止 | 停止;状态"已停止" | 中止、取消 |
| AutomationGrant | 持续授权 | 自动化授权、automation_grant |
| agent.plan 的步骤清单 | 步骤;进度写"步骤 2/5" | 计划(计划只指下载计划 / 整理计划)、TODO、任务列表 |
| agent.plan 的步骤清单 | 步骤;进度写"步骤 2/5" | 计划(计划只指下载计划 / 整理计划 / 计划页)、TODO、任务列表 |
| web.search / web.fetch | 网页搜索 / 读取网页;设置卡叫"网页搜索",提供方叫"搜索服务" | 联网、上网、爬取、网络代理 |
| agent.propose_options | 方案;动作叫"选定",都不要叫"退回" | 选项、提案 |
| scope.proposeFirst | 先看方案再执行 | 只要方案、只给方案、plan_only 模式 |
+1 -1
View File
@@ -1,6 +1,6 @@
# 定时任务与看板
所有周期任务都登记在 `scheduled_job` 表里,由 io worker 上唯一的调度器按表驱动。控制台「定时任务」页(`/console/schedules`)可以查看和调整。
所有周期任务都登记在 `scheduled_job` 表里,由 io worker 上唯一的调度器按表驱动。控制台「计划」页(`/console/schedules`,分「自动任务」与「Agent 巡检」两节)可以查看和调整。
## 组成