@eqs/http : une cible déclarée n'a aucun transport brut, et le message de délai ignore le signal de l'appelant #133

Closed
opened 2026-10-12 07:01:35 +00:00 by nicolas-fryder · 0 comments

Deux constats liés, trouvés au même endroit (HQ dans ATLAS).

1. Pas de transport brut sous la base d'une cible

Commande : déclarer defineTarget('hq', …), puis vouloir lire un binaire, un 4xx OAuth comme une réponse, ou un statut d'erreur sans lever, sous la base HQ.
Attendu : un chemin qui rend la Response (ou statut + corps) avec les garanties du mutator (traceparent, identité, redirections refusées).
Observé : le mutator lève sur un statut d'erreur et lit le corps en JSON ; appel refuse toute adresse sous la base d'une cible déclarée. Aucun chemin n'existe.
Contournement : ATLAS reconstruit ReponseHq, refusOAuth (point de jeton de la liaison, où un 4xx est une réponse) et la sortie de la sonde de santé à partir de l'ApiError.

2. Le message de délai cite le délai de la cible, pas celui de l'appelant

Commande : eqsMutator(url, { signal: AbortSignal.timeout(20) }) sur une cible timeoutMs: 15000 qui ne répond pas.
Attendu : « … n'a pas répondu en 20 ms ».
Observé : « hq n’a pas répondu en 15000 ms ».

Versions : @eqs/http 0.17.1.

Ouvert depuis le rejeu du rétrofit d'ATLAS (étape 6).

Deux constats liés, trouvés au même endroit (HQ dans ATLAS). ## 1. Pas de transport brut sous la base d'une cible **Commande** : déclarer `defineTarget('hq', …)`, puis vouloir lire un binaire, un 4xx OAuth comme une réponse, ou un statut d'erreur sans lever, sous la base HQ. **Attendu** : un chemin qui rend la `Response` (ou statut + corps) avec les garanties du mutator (traceparent, identité, redirections refusées). **Observé** : le mutator lève sur un statut d'erreur et lit le corps en JSON ; `appel` refuse toute adresse sous la base d'une cible déclarée. Aucun chemin n'existe. **Contournement** : ATLAS reconstruit `ReponseHq`, `refusOAuth` (point de jeton de la liaison, où un 4xx est une réponse) et la sortie de la sonde de santé à partir de l'`ApiError`. ## 2. Le message de délai cite le délai de la cible, pas celui de l'appelant **Commande** : `eqsMutator(url, { signal: AbortSignal.timeout(20) })` sur une cible `timeoutMs: 15000` qui ne répond pas. **Attendu** : « … n'a pas répondu en 20 ms ». **Observé** : « hq n’a pas répondu en 15000 ms ». **Versions** : @eqs/http 0.17.1. *Ouvert depuis le rejeu du rétrofit d'ATLAS (étape 6).*
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Infrastructure/eqs-platform#133
No description provided.