No English page yet. Showing the Japanese source.
Retry Budget/Backoff/Fallback Correctness
記事状態: 公開 · 最終確認: 2026-10-05
要点
Retryは各layerの「最大N回」ではなく、original user/workflow requestに対するend-to-end budgetとして管理します。budgetにはtotal downstream attemptsだけでなく、wall-clock deadline、token/compute/API cost、side-effect riskを含めます。
現在の判断
Retryは各layerの「最大N回」ではなく、original user/workflow requestに対するend-to-end budgetとして管理します。budgetにはtotal downstream attemptsだけでなく、wall-clock deadline、token/compute/API cost、side-effect riskを含めます。
どこまで当てはまるか
Retry Budget/Backoff/Fallback Correctness
詳しく理解する
RETRY OWNERSHIP
SDK、orchestrator、service、tool clientがそれぞれ自動retryを持つ場合、全layerで独立にretryしません。Amazonの分散システム運用例では、5層のcall stackで各layerが3 attemptsを行うと、最下流databaseへのloadが最大243倍に増幅し得ます。retry ownerを一つまたは明示的に調整された少数layerへ固定し、original request IDでtotal attemptsを数えます。
RETRYABILITY
同じrequestを再送すれば成功する可能性があるtransient failureだけをretry候補にします。429、408、5xx、network errorは候補ですが、status codeだけで無条件にretryしません。provider/product guidance、Retry-After、quota、operation semantics、残deadlineを確認します。invalid credential、schema invalid、unsupported operation、明示的policy denial等を同じ入力でblind retryしません。
BACKOFF AND JITTER
retry間隔はbounded exponential backoffを基本とし、jitterで同期再試行を分散します。backoffだけでは十分ではありません。最大attempt、最大backoff、end-to-end deadlineをcapし、deadline内に意味のあるresponseを返せないretryを開始しません。
SDK AUTO RETRY
GenAI SDKやcloud client libraryには既定の自動retryが存在する場合があります。2026-10-05時点のGoogle Gemini Enterprise Agent Platform documentationでは、Gen AI SDK clientがtransient timeout/network/429/5xxにexponential-backoff retryを持ち、Python例では最大4 retries、初期待機約1秒、最大約60秒と説明されています。この既定値を全SDK/versionへ一般化せず、実際のclient/version/configurationをinventoryします。上位orchestratorのretryと二重化しないようtotal budgetへ算入します。
IDEMPOTENCY AND PRECONDITIONS
retry安全性はoperation固有です。Google Cloud Storageでは一部mutationがgeneration/metageneration preconditionを付けた場合にconditionally idempotentになります。client libraryごとにretry defaultも異なります。「cloud APIだからretry可能」と一般化せず、operationごとのidempotency、precondition、request tokenを固定します。
AMBIGUOUS SIDE EFFECT
timeoutやconnection lossはremote operationが実行されなかった証明ではありません。payment、email、ticket update、resource creation等ではstable idempotency/operation keyを維持し、authoritative status APIまたはresource readbackで既済みか確認します。remote commit後response lossの可能性がある状態をblind retryしません。
FALLBACK CORRECTNESS
fallback responseが返ったことをavailability successと同義にしません。別model、別provider、cache、retrieval-off、tool-less responseでは、freshness、quality、tool capability、structured-output contract、policy、data residencyが変わり得ます。fallback routeには最低限、required capability、freshness bound、policy/data classification、residency、output contract、残deadlineをpreconditionとして持たせます。条件を満たさないfallbackは、エラーを隠す代替成功経路として使いません。
コストと運用負荷
retry/fallbackをoriginal requestの残deadlineと残cost budgetに従わせます。attemptごとにdeadline remainingとtoken/API costを更新し、成功確率があってもuser-visible deadlineを超えるretryやfallbackは開始しません。background recoveryが必要ならinteractive requestとは別workflowへ切り離します。
OBSERVABILITY
original request IDに対してtotal attempts、retry layer/owner、provider/model/tool、error class/status、backoff、deadline remaining、token/API cost、idempotency/operation key、authoritative readback、fallback route、final dispositionを記録します。retry amplification ratio、deadline exhaustion、cost amplification、fallback rate/quality、duplicate-side-effect incidentを監視します。
実装・運用
本項は2026-10-05時点のAmazon Builders' Library、Google Cloud Storage retry documentation、Gemini Enterprise Agent Platform retry documentationとbounded local fixtureに基づきます。production provider/tool mutationやoutage injectionは未実施です。
よくある失敗・反証
nested SDK/orchestrator retry、retry storm、synchronized retry、cap plateau、Retry-After無視、quota exhaustion、invalid request retry、deadline overrun、token/cost amplification、timeout-after-commit、duplicate side effect、idempotency key loss、precondition omission、stale/low-capability fallback、policy/residency mismatch、fallback loop、telemetry gap、cancellation raceを想定します。
nested retry amplification、provider-specific idempotency、SDK auto-retry、deadline/cost budget、fallback semantic correctnessを監査可能な運用境界として固定します。
実務での使い方
本項は2026-10-05時点のAmazon Builders' Library、Google Cloud Storage retry documentation、Gemini Enterprise Agent Platform retry documentationとbounded local fixtureに基づきます。production provider/tool mutationやoutage injectionは未実施です。
まだ確認できていないこと
- EA-247-UNKNOWN-01
対象Agent runtime、provider/model/tool、SDK version/default retry、orchestrator retry、Retry-After処理、retry/deadline/token/cost budget、side-effect idempotency/status API、fallback route/capability、residency/policy、SLO、production failure distributionは未確認です。
根拠資料
この記事には、直接開ける外部出典が登録されていません。出典IDや検証情報は末尾で確認できます。
更新履歴
EA-247-FIRST-20261005: canonical audit/publication binding
出典ID・検証情報・機械可読データ
根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。
- 記事ID
- EA-247
- 最終確認日
- 2026-10-05
- 提供元・モデル・プラン・利用環境
- —
- 対象地域
- —
元資料の全文と収録照合記録
PUBLIC_CLAIM
Retryは各layerの「最大N回」ではなく、original user/workflow requestに対するend-to-end budgetとして管理します。budgetにはtotal downstream attemptsだけでなく、wall-clock deadline、token/compute/API cost、side-effect riskを含めます。
RETRY_OWNERSHIP
SDK、orchestrator、service、tool clientがそれぞれ自動retryを持つ場合、全layerで独立にretryしません。Amazonの分散システム運用例では、5層のcall stackで各layerが3 attemptsを行うと、最下流databaseへのloadが最大243倍に増幅し得ます。retry ownerを一つまたは明示的に調整された少数layerへ固定し、original request IDでtotal attemptsを数えます。
RETRYABILITY
同じrequestを再送すれば成功する可能性があるtransient failureだけをretry候補にします。429、408、5xx、network errorは候補ですが、status codeだけで無条件にretryしません。provider/product guidance、Retry-After、quota、operation semantics、残deadlineを確認します。invalid credential、schema invalid、unsupported operation、明示的policy denial等を同じ入力でblind retryしません。
BACKOFF_AND_JITTER
retry間隔はbounded exponential backoffを基本とし、jitterで同期再試行を分散します。backoffだけでは十分ではありません。最大attempt、最大backoff、end-to-end deadlineをcapし、deadline内に意味のあるresponseを返せないretryを開始しません。
SDK_AUTO_RETRY
GenAI SDKやcloud client libraryには既定の自動retryが存在する場合があります。2026-10-05時点のGoogle Gemini Enterprise Agent Platform documentationでは、Gen AI SDK clientがtransient timeout/network/429/5xxにexponential-backoff retryを持ち、Python例では最大4 retries、初期待機約1秒、最大約60秒と説明されています。この既定値を全SDK/versionへ一般化せず、実際のclient/version/configurationをinventoryします。上位orchestratorのretryと二重化しないようtotal budgetへ算入します。
IDEMPOTENCY_AND_PRECONDITIONS
retry安全性はoperation固有です。Google Cloud Storageでは一部mutationがgeneration/metageneration preconditionを付けた場合にconditionally idempotentになります。client libraryごとにretry defaultも異なります。「cloud APIだからretry可能」と一般化せず、operationごとのidempotency、precondition、request tokenを固定します。
AMBIGUOUS_SIDE_EFFECT
timeoutやconnection lossはremote operationが実行されなかった証明ではありません。payment、email、ticket update、resource creation等ではstable idempotency/operation keyを維持し、authoritative status APIまたはresource readbackで既済みか確認します。remote commit後response lossの可能性がある状態をblind retryしません。
FALLBACK_CORRECTNESS
fallback responseが返ったことをavailability successと同義にしません。別model、別provider、cache、retrieval-off、tool-less responseでは、freshness、quality、tool capability、structured-output contract、policy、data residencyが変わり得ます。fallback routeには最低限、required capability、freshness bound、policy/data classification、residency、output contract、残deadlineをpreconditionとして持たせます。条件を満たさないfallbackは、エラーを隠す代替成功経路として使いません。
DEADLINE_AND_COST
retry/fallbackをoriginal requestの残deadlineと残cost budgetに従わせます。attemptごとにdeadline remainingとtoken/API costを更新し、成功確率があってもuser-visible deadlineを超えるretryやfallbackは開始しません。background recoveryが必要ならinteractive requestとは別workflowへ切り離します。
OBSERVABILITY
original request IDに対してtotal attempts、retry layer/owner、provider/model/tool、error class/status、backoff、deadline remaining、token/API cost、idempotency/operation key、authoritative readback、fallback route、final dispositionを記録します。retry amplification ratio、deadline exhaustion、cost amplification、fallback rate/quality、duplicate-side-effect incidentを監視します。
FAILURE_ENVELOPE
nested SDK/orchestrator retry、retry storm、synchronized retry、cap plateau、Retry-After無視、quota exhaustion、invalid request retry、deadline overrun、token/cost amplification、timeout-after-commit、duplicate side effect、idempotency key loss、precondition omission、stale/low-capability fallback、policy/residency mismatch、fallback loop、telemetry gap、cancellation raceを想定します。
IMPLEMENTATION_STATE
本項は2026-10-05時点のAmazon Builders' Library、Google Cloud Storage retry documentation、Gemini Enterprise Agent Platform retry documentationとbounded local fixtureに基づきます。production provider/tool mutationやoutage injectionは未実施です。
SAFE_WORDING
Retryは各layerの回数設定ではなく、original requestに対するend-to-end attempt/deadline/cost budgetとして管理してください。Backoffとjitterはretry集中を緩和しますが、nested retry、non-idempotent side effect、deadline超過を自動的には防ぎません。SDKの自動retryを含むretry ownerを明示し、ambiguous side effectはreadback/reconciliationし、fallbackはcapability・freshness・policy・residencyを満たす場合だけ成功経路として扱います。
OPEN_UNKNOWN
対象Agent runtime、provider/model/tool、SDK version/default retry、orchestrator retry、Retry-After処理、retry/deadline/token/cost budget、side-effect idempotency/status API、fallback route/capability、residency/policy、SLO、production failure distributionは未確認です。
STOP_CONDITION
nested retry amplification、provider-specific idempotency、SDK auto-retry、deadline/cost budget、fallback semantic correctnessを監査可能な運用境界として固定します。
EA-247-CURRENT-APPROVAL研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKET現行本文の監査・revision対応
- 裏付ける内容
- 現行台帳のAUDIT_PASSと候補・revision・本文ハッシュの対応を確認しています。
- 確認日
- —
- 出典・実験ID
- CANDIDATE-EA247-FIRST-20261005-C2-RESCUE20261013
- 検証箇所
- 1KqhJtiSb2S84rWmeYVwKcT_76dBwZ_B0ZZuAWQqH0rQ · EA_REVISION_LEDGER!A50:U50 · EA-247-FIRST-20261005
- 適用範囲
- —
- 出典・来歴
- CURRENT_CANONICAL_APPROVAL_READBACK
- 限界
- 監査状態と来歴の記録です。外部根拠の最新性や本文の全主張を追加保証しません。
EA-247-CURRENT-BODY-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACK現行本文の収録照合
- 裏付ける内容
- 公開生成入力の本文SHA-256が、監査済み候補に結び付いたハッシュと一致しています。
- 確認日
- 2026-10-13
- 出典・実験ID
- BODY-SHA256:fec3689440b3d2d7e7919146446978ac1507ad55d4b5174571bb4e05b32d0bf5
- 検証箇所
- content/staging/EA-247.md · fec3689440b3d2d7e7919146446978ac1507ad55d4b5174571bb4e05b32d0bf5 · EA-247-FIRST-20261005
- 適用範囲
- —
- 出典・来歴
- CURRENT_APPROVED_BODY_HASH_MATCH
- 限界
- 本文の同一性の検査です。外部システムの挙動や全主張の真偽を実証したものではありません。
- 出典ID
- CANDIDATE-EA247-FIRST-20261005-C2-RESCUE20261013, BODY-SHA256:fec3689440b3d2d7e7919146446978ac1507ad55d4b5174571bb4e05b32d0bf5
- 追跡中のUNKNOWN ID
- EA-247-UNKNOWN-01
- 再確認のきっかけ
- canonical revision/publication state change · body artifact hash change · source currentness change · new contradiction or implementation readback
機械検査: 通過 — Automated validation does not guarantee accuracy or authorize execution.
同じ記事IDの機械可読データです。