リトライポリシー
目標
- マルチステップフローではなく、HTTPリクエストごとにリトライします。
- 現在のステップのみをリトライすることで順序を保持します。
- 非べき等操作の重複を回避します。
デフォルト
- 試行回数:3回
- 最大遅延上限:30000ミリ秒
- ジッター:0.1(10パーセント)
- プロバイダーのデフォルト:
- Telegram最小遅延:400ミリ秒
- Discord最小遅延:500ミリ秒
動作
Discord
- レート制限エラー(HTTP 429)のみでリトライします。
- 利用可能な場合はDiscordのretry_afterを使用し、それ以外の場合は指数バックオフを使用します。
Telegram
- 一時的なエラー(429、タイムアウト、接続/リセット/クローズ、一時的に利用不可)でリトライします。
- 利用可能な場合はretry_afterを使用し、それ以外の場合は指数バックオフを使用します。
- Markdownパースエラーはリトライされず、プレーンテキストにフォールバックします。
設定
~/.openclaw/openclaw.jsonでプロバイダーごとにリトライポリシーを設定:
{
channels: {
telegram: {
retry: {
attempts: 3,
minDelayMs: 400,
maxDelayMs: 30000,
jitter: 0.1
}
},
discord: {
retry: {
attempts: 3,
minDelayMs: 500,
maxDelayMs: 30000,
jitter: 0.1
}
}
}
}
注意事項
- リトライはリクエストごとに適用されます(メッセージ送信、メディアアップロード、リアクション、投票、ステッカー)。
- 複合フローは完了したステップをリトライしません。