same finding raised across multiple plans — candidates to publish as team conventions.
Observability registration presentconvention
sofia, ana · 2 times in 30 days
conventionweight 6
Why @acme/retry and not a hand-rolled backoff loop? @acme/retry ties into @acme/observability so retry counts and backoff durations appear in traces automatically; a bespoke loop produces the same network behaviour but is invisible to the observability stack.
complianceweight 3
Why log only a correlation ID and not the customerId? Correlation IDs let you join to the payment record in a controlled context; logging customerId directly copies PII into the log store, which is typically lower-trust and harder to redact later.
edge-caseweight 2
Why a total-time budget or circuit breaker and not only a per-request timeout? A per-request timeout bounds individual attempts; a circuit breaker or budget bounds the whole retry fan-out, preventing the queue from filling with jobs that are all burning their full attempt window simultaneously.
smoke1 topic
conventionweight 3
Why @acme/retry with idempotency-keys and not manual try/catch retries? Manual retries are simpler but lack idempotency guarantees, meaning a retried non-idempotent call can cause duplicate side effects.