For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /zh/docs/modules/task-recovery.md (or send Accept: text/markdown).
任务 API 与恢复
恢复一次不确定的提交,而不是新建任务。
开始之前
使用“文件”→“打开文件夹”在 Visual Studio Code 中打开下载的 supastack 项目,然后选择“终端”→“新建终端”。存储库根目录是包含 package.json、apps 和 packages 的文件夹。运行下面的命令并保持终端打开。如果无法识别命令,请先完成工具安装指南,然后再继续。
首先阅读平台教程。服务器是响应浏览器或电话请求的应用程序进程。 Web 读取 apps/web/.env.local,Expo 读取 apps/mobile/.env.local,数据库迁移命令读取 root .env。无数据库/仪表板演示与真实/身份验证帐户分开,需要迁移Postgres。仅电话或桌面结帐需要单独运行的 Web 后端。
corepack pnpm --filter @supastack/web dev安装与配置
POST /api/ai/tasks 要求已认证的工作区与有效权限。带键请求会在派发前预留一个不可变任务。Idempotency-Key 接受 16–128 个 ASCII 字母、数字、下划线或连字符。
POST /api/ai/tasks
Idempotency-Key: a-stable-client-submission-key
Recovery body: { "resume": true }
Status: GET /api/ai/tasks/{taskId}实现流程
提交前先持久化恢复键。派发不确定时,复用同一键并带上 resume 请求体;服务端加载原始输入,用同一个任务级 Trigger 身份重试。同一键下变更输入会返回 409 idempotencyConflict。
模糊入队后的 HTTP 202 表示派发不确定,并不证明 Trigger 已接受该工作。已在运行或已终结的任务直接返回已保存状态,不再入队。恢复仍要求认证、归属与权限。
验证与排障
演练响应丢失、输入变更冲突、跨工作区请求与刷新恢复。系统没有自动 outbox 派发器,也没有端到端 exactly-once 保证。未调查副作用之前,不要把运行中的任务重置回排队。