Transient 502s: retry idempotent reads, distinguish rate limits, expose sending limits
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 42/100
Línea de trabajo
Start by tracing how the CLI handles errors for box, search, thread read, and draft show, then compare that with compose and auth status --json. Define the retry, rate-limit, server-error, Retry-After, and sending-limit behavior, including --no-retry and hey limits; done means these cases are distinguishable and documented without automatic compose retries.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Context
During bursts of CLI calls, read endpoints return API error: 502 Bad Gateway for a while, then recover on their own: hey box imbox, hey search, hey thread read. The same happens to compose. In the case we saw, reads recovered within minutes while compose kept failing much longer.
From the CLI there is no way to tell whether this is rate limiting, a quota on outbound mail, or a server problem. Every failure is the same generic api error.
No account-specific details below.
Ask
- Retry idempotent reads (box, search, thread read, draft show) automatically with backoff, a few times, before returning an error. A
--no-retryflag can turn it off. - Map responses to distinct error codes: 429 as
rate_limited, 5xx asserver_error. IncludeRetry-Afterin the JSON when the server sends it. - Document or expose sending limits (messages per hour or day, recipients per message) so batch tools can pace themselves instead of discovering a limit through errors. Something like
hey limits, or fields inhey auth status --json, would do. - Don't retry compose automatically (see the companion issue on compose 502s after a successful send). For compose, report the outcome clearly instead.
Why it matters
Agent and script workflows (reply checks, follow-ups, stop watchers) run unattended. Transient read errors turn into missed replies or false "no thread" results, and silent limits turn into partial batches.
- Lenguaje dominante
- Go
- Estrellas
- 420
- Forks
- 54
- Merge medio
- 1 d 3 h
- PR fusionados (30 d)
- 43
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de basecamp/hey-cli
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
basecamp/hey-cli#607 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Installer canary failureAbiertoinstaller-canary
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
basecamp/hey-cli#601 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 58/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 50/100
Los mantenedores suelen responder en 1 día
-
Timed events show on their UTC day, not their local day, west of UTCPosiblemente ocupada @armada877 la tomó hace 22 días. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 10/100
Los mantenedores suelen responder en 1 día
Todos los issues de basecamp/hey-cli
Issues similares
-
CLI: `describe <ns>.<table>` reports "namespace does not exist" when only the table is missingPosiblemente ocupada @Shruthirdy la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
apache/iceberg-go#2423 ·
Los mantenedores suelen responder en 2 días
-
post-v4
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
rishikanthc/Scriberr#506 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
microsoft/TypeScript#65290 ·
Los mantenedores suelen responder en 1 día
-
[Bug] rollingUpdatePartition panics when live StatefulSet replicas sit far below the desired countAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
sgl-project/rbg#547 ·
Los mantenedores suelen responder en 1 día