MyBotBoxMyBotBox

トリガーの健全性と信頼性

MyBotBox がトリガーの信頼性を維持する仕組み — リトライ、重複排除、バックフィル、リカバリー。

トリガーはデプロイ済みワークフローへの入り口であるため、上流サービスが不安定な場合でも 信頼性を保てるよう設計されています。これらの設定は何もしなくても、デフォルトで有効になっています。

Webhook の重複排除

受信した Webhook は複数回配信される場合があります。MyBotBox は各イベントのフィンガープリントを記録し、 重複を無視するため、プロバイダーが再送信しても、実際のイベントごとにワークフローはちょうど1回だけ実行されます。

署名付き Webhook を使用するプロバイダー(Slack、Stripe、GitHub など)は、受け付ける前に検証されます。 署名がない、または署名が正しくないペイロードは拒否されます。

初回ポーリング時のバックフィル

ポーリングトリガー(RSS、IMAP、Gmail、Outlook、Google Tasks)が初めて実行されるとき、 ワークフローが全履歴で溢れないよう、ソースのベースラインを設定します。 初回ポーリングの動作は次のように選択できます。

モード初回ポーリングの動作
スキップすべてを既読としてマーク。新しいアイテムのみで実行
直近 N 件最新の N 件で実行し、以降はそこから継続

初回ポーリング以降は、本当に新しいアイテムのみが実行をトリガーします。

リトライとバックオフ

失敗したポーリングまたはディスパッチは、破棄されるのではなくバックオフを伴ってリトライされます。 一時的なエラー(プロバイダーのタイムアウト、短時間の障害)は、イベントを失うことなく自動的に回復します。

自動リカバリー

バックグラウンドモニターがスケジュールに従ってトリガーの健全性を確認します。 障害が発生していたトリガーは、根本的な問題が解消されると自動的に再起動されるため、 手動で介入しなくてもワークフローが再開されます。

トリガーが引き続き失敗している場合(たとえば、資格情報の期限切れなど)、依存している 接続を再認証してください。モニターは一時的な障害からは回復できますが、 失効したトークンを修復することはできません。