Skip to content

fix: l'API n'arrivait pas à joindre le service IA (HTTP/2 h2c refusé par uvicorn) - #163

Merged
algabah2004 merged 3 commits into
mainfrom
fix-ia-http11
Nov 14, 2026
Merged

algabah2004 merged 3 commits into
mainfrom
fix-ia-http11

Conversation

@algabah2004

Copy link
Copy Markdown
Owner

Le bug

Avec IA_FOURNISSEUR=service, toute demande répondait « Votre besoin n'a pas pu être analysé ». Journal de l'API : Service IA injoignable pour une demande : BadRequest. Journal du service IA : Unsupported upgrade request / Invalid HTTP request received.

Cause : le HttpClient de Java tente par défaut une montée vers HTTP/2 en clair (h2c, en-tête Upgrade) sur une adresse http://. uvicorn ne la gère pas et répond 400. Les tests passaient car leur faux serveur acceptait la montée. En production aussi, l'orientation et la carte de compétences IA seraient tombées en repli.

Ce qui a été fait

  • PlansIaHttp (orientation, plans) et CartesIaHttp (carte de compétences) : HttpClient.Version.HTTP_1_1.
  • Les faux serveurs des tests refusent maintenant Upgrade comme uvicorn.

Les autres clients HTTP (GitHub, Brevo) parlent en https://, où HTTP/2 se négocie sans montée : pas concernés.

Comment c'est vérifié

  • tests : AdaptateursIaTest échoue sans la correction (2 erreurs, 400), passe avec ; CartesIaTest 6/6.
  • testé manuellement : demande d'un particulier en local avec DeepSeek.

Outils d'IA utilisés : Claude Code (Claude Opus 5.5).

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings November 14, 2026 17:27

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

…panne de l'IA

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@algabah2004

Copy link
Copy Markdown
Owner Author

Ajout : une demande créée pendant une panne de l'IA restait définitivement en « délai dépassé » après 2 minutes, et « Réessayer » ne faisait que relire. Maintenant chaque lecture retente le dépôt : la demande repart dès que l'IA revient. Test : reessayer_apres_une_panne_de_plus_de_deux_minutes_relance_l_analyse (DemandesTest 21/21).

@algabah2004
algabah2004 merged commit 9d622b0 into main Nov 14, 2026
7 checks passed
@algabah2004
algabah2004 deleted the fix-ia-http11 branch November 14, 2026 18:39
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.

2 participants