Digital Appendix
『AIエージェントが見つけたサーバーレス』のデジタル付録
長期実行の版管理
長期実行の版管理
対象本文
第14章の長期実行を含むrollout、旧版排出、段階配備、migration boundaryを補います。単純なstateless requestのtraffic splitではなく、履歴・session・side effectを持つ実行を対象にします。
収集方法
2026年7月10日にAWS Step Functions、Google Cloud Workflows、Microsoft Durable Task、Temporal、Cloudflare Workersの版管理一次資料を同じ軸で比較しました。
現在の答え
各社は、新版と旧版を同時に扱い、既存実行を無条件で新版へ差し替えない方向へ収斂しています。差は、版をstate machine、workflow revision、orchestration instance、worker deployment、script bundleのどこへ結ぶかにあります。
| 基盤 | 版の単位 | 新規実行 | 既存実行 | 注意する境界 |
|---|---|---|---|---|
| AWS Step Functions | immutable state machine versionとalias | aliasのrouting configurationでversionへ配分 | 開始時に解決したversionで実行 | alias変更は新規開始に作用。external task/resource版は別 |
| Google Cloud Workflows | deploymentごとのrevision | 現行revisionで開始 | 更新は進行中executionへ影響せず、executionにrevision IDを記録 | called service、secret、container imageはworkflow revision外 |
| Microsoft Durable Task | orchestration versionとworkerの適合strategy | client/worker設定でversionを関連付け | instance作成時のversionを基準に対応workerへroute | code changeのreplay compatibilityとmigrationを検証 |
| Temporal | Worker Versioning、deployment/version、pinning | routing/rampでcompatible deploymentへ配分 | pinned workflowは対応workerへ。Continue-As-New等を更新境界にできる | patching、activity版、child workflow、external side effect |
| Cloudflare Workers | Worker versionとdeployment | deploymentで複数versionへ割合配分 | version affinityで一連のrequestを同版へ寄せられる | Durable Object/Workflow/storage stateはbundle版に自動包含されない |
安全な既定は次です。
- 新規実行だけを段階配分する。
- 既存実行は開始時の
release_id、workflow版、model/prompt/tool版へ固定して排出する。 - migrationはconversation boundary、human approval待ち、Continue-As-New等の明示的な安全境界だけで行う。
- input、checkpoint、policy、side effect、compensationが新旧で互換だと試験できない限り、running instanceを書き換えない。
rollbackも一つではありません。入口trafficを旧版へ戻すこと、running workflowを停止すること、作用済み結果を補償すること、modelやtoolだけを戻すことを分けます。Cloudflareのversion affinityはHTTP request群の一貫性に役立ちますが、durable workflow history全体の版固定と同じ保証ではありません。
一次資料
- Step Functions versions and aliases: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-cd-aliasing-versioning.html
- Google Workflows create/update: https://docs.cloud.google.com/workflows/docs/creating-updating-workflow
- Google Workflows execution revision: https://docs.cloud.google.com/workflows/docs/executing-workflow
- Microsoft Durable Task versioning: https://learn.microsoft.com/en-us/azure/durable-task/common/durable-orchestration-versioning
- Temporal Worker Versioning: https://docs.temporal.io/production-deployment/worker-deployments/worker-versioning
- Cloudflare Workers versions and deployments: https://developers.cloudflare.com/workers/configuration/versions-and-deployments/
既知の未知
- TemporalとCloudflareのversioning API・用語は変更が速く、過去のblog/changelogと現行docsが異なる場合があります。
- 各workflow定義の版に、called API、model、prompt、secret、policy、storage schemaは自動では含まれません。
- running instance migrationの可否はproduct機能だけでなく、application stateとside effectの互換性に依存します。
- 本表はrollback成功を保証せず、必要な試験項目を示します。
変更履歴
- 0.9.0 (2026-07-10): 五基盤の版の結合先、新規配分、既存固定、migration boundaryを比較する初版ドラフトを作成。