# Durable

> [UDS] 引導容錯工作流程設計，包含檢查點、重試策略與回滾計畫。 Use when: 長時間執行的工作流程總是中途失敗、設計檢查點的粒度、選擇重試或退避策略。 Not for: 處理正在發生中的線上事故——請用 /incident；部署回滾的實作機制——請用 /deploy。 Keywords: durable execution, checkpoint, retry, backoff, idempotency, rollback, 持久執行, 檢查點, 重試策略, 冪等.

- Skill: `asiaostrich/durable-2` (Agent Skill)
- Install (CLI): `npx skillmds@latest add asiaostrich/durable-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/asiaostrich/durable-2/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: AsiaOstrich (https://skillmd.com/u/asiaostrich)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/asiaostrich/durable-2

---


# 持久執行助手

> **語言**: [English](../../../../skills/durable-execution-assistant/SKILL.md) | 繁體中文

引導容錯工作流程設計，包含自動恢復、檢查點與重試策略。

## 使用方式

| 命令 | 用途 |
|------|------|
| `/durable` | 啟動互動式故障恢復引導 |
| `/durable --checkpoint` | 設計檢查點策略 |
| `/durable --retry` | 配置重試策略 |
| `/durable --rollback` | 規劃回滾程序 |
| `/durable <workflow>` | 分析特定工作流的持久性 |

## 核心概念

| 概念 | 定義 |
|------|------|
| **檢查點** | 在已知正確的位置儲存執行狀態 |
| **重試** | 自動重新嘗試失敗的操作 |
| **回滾** | 失敗時回復到上一個已知正確狀態 |
| **冪等性** | 操作重新執行時產生相同結果 |
| **斷路器** | 失敗率超過閾值時停止重試 |

## 故障恢復決策樹

```
偵測到故障
├── 是否為暫時性？（網路、逾時）
│   ├── 是 → 帶退避的重試
│   └── 否 → 狀態是否損壞？
│       ├── 是 → 回滾至檢查點
│       └── 否 → 是否為邏輯錯誤？
│           ├── 是 → 停止、回報、修復程式碼
│           └── 否 → 帶診斷資訊升級處理
```

## 重試策略指南

| 策略 | 使用時機 | 配置 |
|------|---------|------|
| **立即重試** | 罕見故障、快速操作 | 最多 2 次重試 |
| **指數退避** | 網路/API 呼叫 | 基底 1s、最大 30s |
| **斷路器** | 下游服務問題 | 閾值 50%、視窗 60s |
| **死信佇列** | 重試後仍不可恢復 | 最多 5 次重試後排入佇列 |

## 檢查點粒度

| 粒度 | 使用場景 |
|------|---------|
| **每步驟** | 長管線（> 5 步驟） |
| **每批次** | 批量資料處理 |
| **每階段** | 多階段工作流程 |
| **起始/結束** | 短暫的原子操作 |

## 工作流程

1. **偵測** - 識別故障類型與範圍
2. **診斷** - 判定根本原因類別
3. **恢復** - 套用適當的恢復策略
4. **驗證** - 確認系統狀態一致
5. **繼續** - 從上一個檢查點繼續

## 下一步引導

`/durable` 完成後，AI 助手應建議：

> **持久性分析完成。建議下一步：**
> - 執行 `/methodology` 選擇適合的開發方法論
> - 執行 `/commit` 提交持久化設計變更

