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 /ja/docs/modules/task-recovery.md (or send Accept: text/markdown).
タスク API と復旧
新しいタスクを作らずに不確かな送信を復旧する。
始める前に
[ファイル] → [フォルダーを開く] を使用して、Visual Studio Code でダウンロードした supastack プロジェクトを開き、[ターミナル] → [新しいターミナル] を選択します。リポジトリ ルートは、package.json、アプリ、およびパッケージを含むフォルダーです。そこで以下のコマンドを実行し、ターミナルを開いたままにしておきます。コマンドが認識されない場合は、続行する前にツールのインストール ガイドを完了してください。
まずプラットフォームのチュートリアルをお読みください。サーバーは、ブラウザまたは電話のリクエストに応答するアプリ プロセスです。 Web は apps/web/.env.local を読み取り、Expo は apps/mobile/.env.local を読み取り、データベース移行コマンドは root .env を読み取ります。データベースなしの /dashboard デモは、Postgres の移行が必要な実際の /auth アカウントとは別のものです。電話またはデスクトップのみのチェックアウトには、別途実行される 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 ID で再試行します。同じキーで変更された入力は 409 idempotencyConflict を返します。
あいまいな enqueue 後の HTTP 202 はディスパッチが不確かであることを意味します。Trigger が作業を受け入れた証明ではありません。すでに実行中または終了したタスクは、別の enqueue なしに保存済み状態を返します。復旧には依然として認証、所有権、権限が必要です。
検証とトラブルシューティング
失われた応答、変更された入力の競合、別のワークスペースからのリクエスト、リフレッシュ後の復元を実行します。自動 outbox ディスパッチャーもエンドツーエンドの exactly-once 保証もありません。副作用を調査せずに実行中タスクを再キューしないでください。