Agent Skills by ALSEL
汎用ソフトウェア開発⭐ リポ 2品質スコア 59/100

retries-idempotency

@alexasomba/paystack-nodeのリトライ、Retry-After動作、べき等性キー、タイムアウト、安全なリトライセマンティクスを設定する際に使用します。

description の原文を見る

Use when configuring @alexasomba/paystack-node retries, Retry-After behavior, idempotency keys, timeouts, and safe retry semantics.

SKILL.md 本文

Paystack Node リトライとべき等性

Node SDKはトランジェント障害をリトライして、POSTリクエストにべき等キーを追加できます。決済、送金、払戻、顧客ミューテーションに対して、意図的に設定してください。

リトライ設定

const paystack = createPaystack({
  secretKey: process.env.PAYSTACK_SECRET_KEY!,
  retry: {
    retries: 3,
    minDelayMs: 500,
    maxDelayMs: 5_000,
    retryOnStatuses: [408, 429, 500, 502, 503, 504],
  },
});

SDKは429レスポンスのRetry-Afterが存在する場合、それを遵守します。

べき等性

POSTリクエストで生成されたUUIDキーに対して idempotencyKey: "auto" を使用します。

const paystack = createPaystack({
  secretKey: process.env.PAYSTACK_SECRET_KEY!,
  idempotencyKey: "auto",
});

プロセス再起動後に同じビジネス操作をリトライする場合は、安定したカスタムキーを使用します。

const paystack = createPaystack({
  secretKey: process.env.PAYSTACK_SECRET_KEY!,
  idempotencyKey: () => currentPaymentAttempt.idempotencyKey,
});

ベストプラクティス

  • GET、HEAD、OPTIONSはトランジェント障害に対して自由にリトライできます。
  • POSTはべき等キーが存在する場合のみリトライします。
  • ビジネス操作リファレンスとPaystackリファレンスをデータベースに保存します。
  • 決済呼び出しがリクエストワーカーを無限に待機させないようにタイムアウトを使用します。
  • 関連性のない操作で静的なべき等キーを再利用しないでください。

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
alexasomba
リポジトリ
alexasomba/paystack-node
ライセンス
MIT
最終更新
2026/5/9

Source: https://github.com/alexasomba/paystack-node / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: alexasomba · alexasomba/paystack-node · ライセンス: MIT