Files
2026-05-27 23:29:53 +01:00

2.1 KiB

name: retry description: Use when implementing or debugging code that uses @suaveplan/retry: Retry strategies with exponential/linear/constant backoff, jitter, circuit breaker with half-open probing, sleep and timeout helpers.

@suaveplan/retry

Retry strategies and circuit-breaker for async operations. The package provides constant, linear, and exponential backoff with four jitter modes (full, equal, decorrelated, none), a sleep helper with AbortSignal support, a per-attempt withTimeout wrapper, and a three-state circuit breaker (closed → open → half-open) with event emission and configurable failure/success thresholds. All entry points accept an injectable Clock and AbortSignal so they integrate cleanly with test harnesses and request cancellation.

When to use this skill

  • Implementing or debugging code that imports @suaveplan/retry.
  • The task touches: see package README.
  • You need API guidance for this package's exports.

Quick reference

import { /* see API Reference below */ } from "@suaveplan/retry";

Dependencies

Workspace dependencies: @suaveplan/error, @suaveplan/events, @suaveplan/types

Where to read more

This skill is intentionally short. The package's own documentation is the authoritative source — read these in order:

  1. packages/foundation/retry/README.md — overview, install, quick-start, module index
  2. packages/foundation/retry/src/**/*.md — co-located docs per implementation file (Purpose, Features, Basic + Advanced examples, full API reference, Implementation notes — all packages ship ≥200 words per module)
  3. packages/foundation/retry/package.json exports map — every subpath you can import from

When the user asks an API question, read the relevant co-located .md first; do not answer from training-data memory.

See also

  • @suaveplan/error
  • @suaveplan/events
  • @suaveplan/types

This SKILL.md is auto-generated by suaveplan-skills/scripts/generate-skills.ts from the package's README. Do not edit by hand — re-run the generator after the README changes.