API Error: Connection lost mid-response в Claude Code — ошибка обрыва, переименованная в v2.1.227
В Claude Code посреди ответа появляется «API Error: Connection lost mid-response. The response above may be incomplete.», и работа останавливается. Материалов по этой строке находится мало, и причина простая: название сравнительно новое. Официальный справочник ошибок прямо пишет, что до v2.1.227 Connection lost mid-response отображалось как Connection closed mid-response, а вместе с этим Response stalled mid-stream заменили на The response stopped arriving и Connection closed while thinking, before producing a response — на Connection lost before a response was produced. То есть явление прежнее, поменялись только слова. Статья отталкивается от переименования и опирается только на официальную документацию и публичные issue. Сначала разобраны официальные определения шести сообщений об обрыве (Server error, Connection lost, computer went to sleep, The response stopped arriving, Part of the response never arrived, The response stream was malformed) и причина, по которой уже выведенный текст сохраняется намеренно: повторная отправка грозит выполнить тот же вызов инструмента дважды, а процедура восстановления сводится к ответу continue. Дальше объясняется, почему повтор не идёт автоматически, через развилку Automatic retries: обрыв до того, как что-либо завершено, повторяется с экспоненциальной задержкой до десяти раз; после размышления, но до вывода — не более двух раз, после чего ход закрывается сообщением Connection lost before a response was produced; а после завершённого блока повтора нет, есть только пометка. Затем идут три слоя, на которых может рваться связь (машина и канал, маршрут с прокси и шлюзами, сторона сервиса и переиспользование соединений), перечитывание материала mTLS при ротации сертификатов начиная с v2.1.232, чек-лист из девяти шагов, умолчания четырёх сторожевых таймеров потока (first-byte 180 секунд, event 300 секунд, byte 180 секунд, body idle 5 минут) и переменные CLAUDE_CODE_MAX_RETRIES, CLAUDE_CODE_RETRY_WATCHDOG, API_TIMEOUT_MS, таблица отличий от восьми похожих сообщений и реальные отчёты, где обычный HTTPS исправен, а по ECONNRESET падает только CLI (#86473 и #85979). В конце всё разделено по достоверности: симптом и процедура восстановления задокументированы официально, официального объяснения причины нет, а упоминания о смене формулировки в CHANGELOG не найдено.