executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
adapt-architectureストラングラーフィグ移行、クリサリスフェーズ、インターフェース保全を用いた 構造的変態を実行する。変換計画、並行稼働、段階的カットオーバー、ロールバック設計、 変態後の安定化をカバーする。assess-formがシステムを変換READYと分類した時、 モノリスからマイクロサービスへの移行時、依存システムが稼働し続ける中でコア サブシステムを置き換える時、またはビッグバンではなく段階的なアーキテクチャ変更が 必要な時に使用する。
Independent GitHub snapshot · Automated classification · Original documentation governs
構造的変態を実行する — 運用の継続性を維持しながら、システムのアーキテクチャを現在の形態からターゲット形態に変換する。ストラングラーフィグ移行、クリサリスフェーズ、インターフェース保全を用いて、変換中もシステムが停止しないことを保証する。
assess-form参照)がシステムをREADYと分類した場合assess-formまたは同等の分析から)現在の形態からターゲット形態への変態パスを計画する。
scale-colonyを参照)Metamorphosis Patterns:
┌───────────────┬───────────────────────────────────────────────────┐
│ Strangler Fig │ New code intercepts routes one by one; │
│ │ old code handles everything else until replaced │
│ │ ┌──────────┐ │
│ │ │ Old ████ │ → │ Old ██ New ██ │ → │ New ████ │ │
│ │ └──────────┘ │
├───────────────┼───────────────────────────────────────────────────┤
│ Chrysalis │ Wrap old system in new interface; replace │
│ │ internals while external shell stays stable │
│ │ ┌──────────┐ ┌──[new]───┐ ┌──[new]───┐ │
│ │ │ old core │ → │ old core │ → │ new core │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │
├───────────────┼───────────────────────────────────────────────────┤
│ Budding │ New system runs in parallel; traffic shifts │
│ │ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ │
│ │ │ Old │ │ New │ → │ Old │ │ New │ │
│ │ │ 100% │ │ 0% │ │ 0% │ │ 100% │ │
│ │ └──────┘ └──────┘ └──────┘ └──────┘ │
└───────────────┴───────────────────────────────────────────────────┘
期待結果: 中間形態、継ぎ目、選択された変態パターン、インターフェース保全戦略を示す変換ブループリント。各ステップは具体的かつテスト可能。
失敗時: クリーンな継ぎ目が見つからない場合、変換前に予備的な溶解(dissolve-form参照)で継ぎ目を作る必要があるかもしれない。中間形態が運用不可能な場合、変換ステップが大きすぎる — より小さな増分に分解する。
変態を支える一時的なインフラストラクチャを構築する。
期待結果: スキャフォールディングインフラストラクチャ(腐敗防止レイヤー、並行稼働、ロールバック、バリデーション)が変換開始前に整っている。スキャフォールディング自体がテスト・検証済み。
失敗時: スキャフォールディングが高コストすぎる場合、簡素化する: 最小限のスキャフォールディングはフィーチャーフラグとロールバック手順。腐敗防止レイヤーと並行稼働は安全性を追加するが、小規模な変換には常に必要ではない。
旧形態から新形態へ機能を段階的に移行する。
期待結果: 機能がコンポーネントごとに移行し、各ステップでバリデーションが行われる。システムは常に運用可能。各カットオーバーが次への信頼を構築する。
失敗時: 並行稼働で不一致が明らかになった場合、新しい実装にバグがある — カットオーバー前に修正する。カットオーバーでパフォーマンスが劣化した場合、新コンポーネントの最適化が必要か、腐敗防止レイヤーのオーバーヘッドが大きすぎる可能性がある。チームが移行途中で信頼を失った場合、一時停止して安定化する — 既知の状態にある半移行システムは、急いだ完全移行よりもはるかに良い。
最も脆弱な期間 — システムが形態の間にある時 — を乗り越える。
期待結果: クリサリスフェーズが、規律と監視を強化した意図的な期限付きの期間として管理される。一時的な複雑性は安全な変換のコストであることをチームが理解している。
失敗時: クリサリスフェーズが長引きすぎると、ハイブリッド状態が新しい常態になる — これは新旧どちらよりも悪い。期限を設定する。期限に達した場合、残りの移行を加速するか、ハイブリッド状態を「新しい形態」として受け入れて安定化する。
変換を完了し、スキャフォールディングを撤去する。
期待結果: 変換が完了。システムが新形態で稼働。スキャフォールディングが撤去済み。ドキュメントが更新済み。チームが将来の変換のための学びを記録済み。
失敗時: カットオーバー後に新形態が不安定な場合、ロールバックパスを維持して安定化を続ける。安定化が計画期間を超える場合、新アーキテクチャに設計上の問題がある可能性がある — 最も問題のあるコンポーネントの部分的ロールバックまたはターゲットフィックスが適切かどうかを検討する。
assess-form — システムが変換の準備ができているかを判断する前提条件の評価dissolve-form — 直接変換するには硬直しすぎたシステム用; 溶解がここで必要な継ぎ目を作るrepair-damage — 変換が損傷を導入した場合の回復スキルshift-camouflage — 深いアーキテクチャ変更なしで十分かもしれない表面的な適応coordinate-swarm — 分散システム全体での変換の順序付けにスウォーム調整が参考になるscale-colony — 成長圧力はアーキテクチャ適応の一般的なトリガーimplement-gitops-workflow — GitOpsが段階的カットオーバーのためのデプロイメントインフラストラクチャを提供するreview-software-architecture — ターゲットアーキテクチャを評価するための補完的なレビュースキル