Skip to content

docs(retry-client): plan des retentatives automatiques du client - #13

Open
arsenik-dtheo[bot] wants to merge 2 commits into
mainfrom
epic-6-docs
Open

arsenik-dtheo[bot] wants to merge 2 commits into
mainfrom
epic-6-docs

Conversation

@arsenik-dtheo

@arsenik-dtheo arsenik-dtheo Bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

Closes #6

🔍 Ce que dépose cette PR

La spec et la session d'affinage des retentatives automatiques dans le client HTTP du gem, posées sur la branche de l'épic avant tout code — avec l'ADR-0001, le glossaire initial et la mise à jour du contrat API d'AGENTS.md issus de l'affinage.

📚 Contenu

  • Spec : docs/plans/retry-client/spec.md
  • Affinage : docs/plans/retry-client/affinage.md
  • ADR : docs/adr/0001-retentatives-automatiques-par-defaut.md
  • Glossaire : LEXIQUE.md — termes ajoutés : erreur retentable, erreur de connexion

🧭 Ce que la spec arrête

  • Retry actif par défaut : 2 retries sur 429/529/5xx et erreurs réseau (ADR-0001, écartant l'ancien contrat « retry 429/529 manuel »).
  • Nouvelle Typesafe::ConnectionError < APIError encapsulant les échecs réseau, marquée retentable.
  • Configuration via un unique Hash retry_options: (max_retries / base_delay / max_delay, défauts 2 / 0,5 / 8,0) sur Client.new, hérité par Jev.
  • ArgumentError sur clé inconnue ou valeur invalide, à la construction.
  • Délai : Retry-After honoré, sinon backoff exponentiel avec plafond et jitter ; silencieux en v1.

🧪 Seam de test

  • Seam retenu : Client#evaluate / Jev#evaluate + WebMock + sleep stubbé — le seam existant de spec/typesafe/client_spec.rb, le plus haut et déjà en place.

⚠️ Bas de la pile

@arsenik-dtheo
arsenik-dtheo Bot added this pull request to stack #19 September 20, 2026 23:41
…e commit

La consigne « Always bump the version » à chaque commit datait d'avant le
workflow épic/stack : chaque PR de la pile bumpait la version. Remplacée par
un bump unique porté par le PR final de l'épic (version, CHANGELOG, lockfile,
spec de contrat).

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

retry-client: retentatives automatiques dans le client HTTP

0 participants