feat: add async resume jobs and doc navigation
This commit is contained in:
@@ -12,11 +12,16 @@
|
||||
|
||||
开始编码前必须阅读:
|
||||
|
||||
1. `plans/reader-mcp-architecture-design.md`
|
||||
2. `plans/reader-mcp-implementation-plan.md`
|
||||
3. 本文件
|
||||
4. `plans/issues/2026-04-06-reader-digest-sigterm.md`
|
||||
5. `docs/openclaw/openclaw-handoff.md`
|
||||
1. `README.md`
|
||||
2. `docs/README.md`
|
||||
3. `docs/openclaw/README.md`
|
||||
4. `docs/openclaw/openclaw-handoff.md`
|
||||
5. `docs/openclaw/openclaw-orchestration-flow.md`
|
||||
6. `plans/README.md`
|
||||
7. `plans/reader-mcp-architecture-design.md`
|
||||
8. `plans/reader-mcp-implementation-plan.md`
|
||||
9. 本文件
|
||||
10. `plans/issues/2026-04-06-reader-digest-sigterm.md`
|
||||
|
||||
---
|
||||
|
||||
@@ -184,6 +189,43 @@
|
||||
- 2026-04-07:已完成 `resume_run` minimal design 与现有 runtime/workflow/server 代码对齐分析,开始实现最小恢复链路。
|
||||
- 2026-04-07:已完成 `resume_run` 最小实现编码,新增 runtime 恢复服务并接入 MCP server;当前进入设计对齐与本地自检。
|
||||
- 2026-04-07:已完成 `resume_run` 架构对齐与本地自检;已验证 `write_run_report` 可恢复,且 `extract_articles` 会被明确拒绝恢复。
|
||||
- 2026-04-14:已补 `inspect_resume_plan`、artifact-first 恢复判定,以及生产模式下稳定 `summary-batch` / `candidate-batch` artifacts;当前 `resume` 的剩余主问题不再是恢复点判断,而是同步执行模型仍可能让 OpenClaw 恢复阶段超时。
|
||||
|
||||
---
|
||||
|
||||
### [DONE][P1] 把 `resume_run` 升级为最小真异步 job
|
||||
|
||||
目标:
|
||||
- 解决 `resume_run` 在 OpenClaw → MCP 同步链路里仍可能超时的问题
|
||||
- 让恢复也具备“启动 / 轮询 / 读取结果”的正式控制面
|
||||
|
||||
要求:
|
||||
- 新增最小异步接口:
|
||||
- `start_resume_job`
|
||||
- `get_resume_job_status`
|
||||
- `get_resume_job_result`
|
||||
- 状态目录固定落到:
|
||||
- `outputs/freshrss/resume_jobs/<job_id>/`
|
||||
- 至少包含:
|
||||
- `run-state.json`
|
||||
- `input.json`
|
||||
- `result.json`(成功时)
|
||||
- `job-report.json`
|
||||
- 启动前必须先走 `inspect_resume_plan`
|
||||
- 业务执行继续复用现有 `resume_service`,不要重写恢复主逻辑
|
||||
- `resume_run` 保留为同步 debug / fallback 路径,但不再作为 OpenClaw 的默认恢复入口
|
||||
|
||||
完成标准:
|
||||
- 可恢复 run 上,`start_resume_job` 能成功返回 `job_id`
|
||||
- `get_resume_job_status` 能稳定反映恢复 job 生命周期
|
||||
- `get_resume_job_result` 能稳定返回 `run_id`、`resume_from_stage`、最终状态与关键产物路径
|
||||
- 恢复耗时超过单次 MCP 同步窗口时,OpenClaw 仍不会因为同步调用挂住
|
||||
|
||||
进展备注:
|
||||
- 2026-04-14:已落地 `src/summary_mcp/runtime/resume_jobs.py` 与 `scripts/run_resume_job.py`,新增 `start_resume_job` / `get_resume_job_status` / `get_resume_job_result`
|
||||
- 2026-04-14:启动前会先走 `inspect_resume_plan`;不可恢复 run 会在 job 输入校验阶段直接失败,不进入后台恢复执行
|
||||
- 2026-04-14:后台执行复用现有 `_resume_freshrss_run(...)`,没有重写恢复主逻辑
|
||||
- 2026-04-14:已完成本地 synthetic 验证:`write_run_report` 恢复可通过 `start -> poll -> result` 闭环成功收敛
|
||||
|
||||
---
|
||||
|
||||
@@ -304,6 +346,7 @@
|
||||
- 2026-04-07:新增架构设计文档 `plans/reader-mcp-architecture-design.md`
|
||||
- 2026-04-07:新增实施计划文档 `plans/reader-mcp-implementation-plan.md`
|
||||
- 2026-04-07:完成 `freshrss` pipeline 的 run-state 基础设施,新增 `runtime` 包并覆盖关键 stages 状态持久化。
|
||||
- 2026-04-14:已补 OpenClaw 文档导航、历史归档、design/notes/plans 导航,并统一当前正式口径为 async job 编排入口。
|
||||
|
||||
### 风险提醒
|
||||
|
||||
|
||||
Reference in New Issue
Block a user