opencode-workflow/skills/migration-rollout-design/README.zh-TW.md

35 lines
1.5 KiB
Markdown
Raw Normal View History

# 遷移與上線設計 (Migration Rollout Design) 知識合約指南
## 概述
`migration-rollout-design` 是知識合約用來提供遷移與上線設計的原則與模式。涵蓋向後相容、上線策略、Canary Deployment、Feature Flags、Schema Evolution 與 Rollback。供 `design-architecture` 在定義 Migration & Rollout Strategy 時參考。
## 核心原則
### 向後相容優先
- 新版本必須與舊版本共存於遷移期間
- API 必須向後相容直到所有消費者都遷移完成
- 資料庫結構必須同時支援舊版和新版程式碼
### 增量勝過 Big-Bang
- 增量遷移,一步一步來
- 每步必須可獨立部署與逆轉
- Big-Bang 遷移風險高,逆轉困難
### 預設 Rollback
- 每個遷移步驟必須有明確的 rollback 計畫
- Feature Flags 可實現即時 rollback無需重新部署
## 設計重點
- **上線策略**Blue-Green Deployment、Canary Deployment、Rolling Deployment、Feature Flag Deployment
- **Feature Flags**Release flags、Operational flags、Experiment flags、Permission flags
- **Schema Evolution**Additive Changes安全vs Destructive Changes需遷移
- **Migration Strategy**Expand → Migrate → Contract 三階段
- **Rollback**Application Rollback、Database Rollback 與決策矩陣
## 知識合約職責
- 提供遷移與上線設計的理論指引
- 不直接產生遷移腳本或上線腳本
## 不應做的事
- 不替系統選擇特定部署策略
- 不定義具體的 Feature Flag 名稱或值
- 不產生遷移或部署腳本