[BUG] sessions définitivement cassées par 400 « text content blocks must be non-empty » à la reprise

Resolved 💬 1 comment Opened May 3, 2026 by RonanB-AI Closed Jun 2, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Plateforme : Claude Code web (claude.ai/code), workspace lié à un dépôt GitHub.

Symptôme : après une déconnexion / reprise de session, le moindre message envoyé (« hello », « test », etc.) renvoie immédiatement :

API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"messages: text content blocks must be non-empty"},"request_id":"req_011CagDZguoU1CdJLcPG9SN2"}
Autres request_id rencontrés sur la même session : req_011Cag9a5rUJnfnBZY96r6wZ, req_011CagBaHN1HejmeuS3fy8d4, req_011CagG1xMCd51VP8TWhAM8Z.

L'erreur apparaît juste après le marqueur « Session reprise » dans l'UI. Le bouton « Réessayer » rejoue le même historique cassé et reproduit la même erreur à l'identique. Aucun message envoyé sur la session ne peut plus aboutir.

Cause probable : un tour assistant antérieur a été persisté avec un bloc texte vide (cf. issues GitHub #52689, #24662, #22923, #50010). À la reprise, Claude Code rejoue l'historique complet à l'API Messages, qui rejette les blocs texte vides → 400 systématique.

Impact : la session entière devient définitivement irrécupérable. Aucun moyen côté UI d'éditer / tronquer / supprimer le tour fautif. Le seul contournement est de démarrer une nouvelle session et de recoller le contexte à la main, ce qui fait perdre tout l'historique de travail (plusieurs sessions affectées de mon côté sur le workspace Vigoria).

Demandes :

Filtrer ou réparer les blocs texte vides côté serveur lors de la reprise (skip défensif avant d'appeler l'API).
Permettre à l'utilisateur de supprimer/tronquer un tour cassé depuis l'UI.
Proposer un export de transcript pour ne pas perdre le contexte quand une session est condamnée.

What Should Happen?

Claude should answer normally

Error Messages/Logs

Steps to Reproduce

<img width="932" height="602" alt="Image" src="https://github.com/user-attachments/assets/71ee9ba3-f461-43e2-929c-ee39d74ca408" />
<img width="902" height="648" alt="Image" src="https://github.com/user-attachments/assets/58715340-2c9a-4e5a-9f45-670cceebd591" />

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.126 (Claude Code) — c'est la version de la CLI installée dans cet environnement (ton workspace web exécute la CLI en arrière-plan).

Platform

Anthropic API

Operating System

Other

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗