Главная / Дневник / № 12
· эссе · AI · август 2026 ·

Три версии подряд оказались неверными. Логгер дал ответ за минуту

Модель выдаёт правдоподобные гипотезы бесконечно и бесплатно — и это её самое дорогое свойство. История про то, как две строчки логирования закрыли вопрос, на который три стройные версии отвечали неправильно.

Олег Мифтахов 20 августа 2026 · 4 мин · № 12

Пять дней назад я пытался открыть домашние камеры с телефона. Дома по Wi-Fi — не открывается. С улицы по мобильному интернету — открывается. Симптом, который сам напрашивается на объяснение: конечно, дело в том, как телефон ходит в сеть дома.

Дальше было три версии. Каждая стройная, каждая объясняла ровно то, что мы видели, и каждая была неверной.

Версия первая: раздельный туннель на телефоне. Логично — дома трафик до нужной подсети идёт мимо VPN. Проверили настройки, поправили. Не помогло.

Версия вторая: петля. Тоже логично — запрос уходит в туннель и возвращается в ту же сеть, из которой вышел. Разобрали. Не помогло.

Версия третья: сломан обратный маршрут. Уже теплее по смыслу, но конкретика опять оказалась мимо.

Между версиями я четыре раза сходил за телефоном проверить. Это и есть настоящая цена гипотез: не токены, а мои походы по квартире.

Две строчки, которые закончили спор

На четвёртом заходе мы поставили логгер. Буквально два правила: писать в лог всё, что приходит на нужный порт, и всё, что с него уходит.

Ответ пришёл за минуту.

Пакеты доезжали. Все. И приходили они с адреса 10.11.0.25 — а в списке разрешённых стоял 10.11.0.22.

.22 — это телефон. .25 — домашний роутер. Дома телефон уходит в VPN не сам: его трафик идёт через роутер, и на сервер запрос приходит от имени роутера. На улице тот же телефон приходит уже как .22 — поэтому с улицы и работало.

Ни одна из трёх версий даже близко не подходила к этому. Все они обсуждали, доезжает ли пакет. Настоящий вопрос был — с какого адреса он доезжает. Про этот вопрос никто не думал, потому что он не выглядит вопросом.

Заодно вылезла вторая поломка, которую тоже никто бы не угадал: ответы сервера попадали под то же правило маршрутизации, что и клиентские запросы, — их адрес отправителя из той же подсети. Ответ уезжал не в туннель, а на соседний сервер. Запросы доходят, ответов нет, соединение висит вечно. Логгер на исходящих показал это второй строчкой.

Инструмент, который не мог дать ответ в принципе

Есть история из того же дома, ещё грубее.

Одну из шести камер я три недели считал мёртвой. Она не отвечала на пинг, в системе видеонаблюдения висела ошибка, по старому адресу пусто. Всё сходилось: камера обесточена, надо лезть на фасад.

Камеры не отвечают на пинг. Ни живые, ни мёртвые — у них просто выключен ответ на такие запросы.

То есть три недели я принимал решения по инструменту, который физически не мог отличить рабочую камеру от нерабочей. Он всегда показывал одно и то же. На деле DHCP переселил её на соседний адрес, и всё это время она прекрасно работала — её было видно в мобильном приложении, куда я не догадался заглянуть.

Правильная проверка занимает две секунды: посмотреть таблицу соседей по сети и найти в ней MAC камеры. Нашёлся на другом адресе — значит, переехала. Две секунды против трёх недель.

Почему это стало болеть именно сейчас

Раньше гипотезы стоили дорого. Чтобы выдвинуть версию про маршрутизацию, надо было потратить полчаса на чтение документации — и это само по себе фильтровало: до формулировки доживали только те версии, в которые человек хоть немного верил.

Сейчас гипотеза стоит ноль. Спрашиваешь модель, почему не работает, — получаешь пять стройных версий за десять секунд. Каждая написана уверенным тоном, с механизмом, с планом проверки.

Это её сильная сторона и одновременно самая дорогая. Правдоподобие перестало быть признаком правоты — оно теперь бесплатное. Раньше стройность версии кое-что говорила о её качестве: до стройной формулировки надо было додуматься. Теперь стройность не говорит ни о чём.

Дальше включается человек. Версия звучит убедительно, её хочется проверить — и проверка это уже мои полчаса, мой поход за телефоном, мой лоб. Модель генерирует бесплатно, плачу я.

Что я изменил в порядке работы

Одно правило: при «не работает» первым действием идёт измерение, а не вопрос о причине.

Не «в чём может быть дело» — на этот вопрос всегда есть ответ, и он всегда красивый. А «чем я отличу одну версию от другой за минуту».

На практике это значит завести дешёвый замер для каждого слоя, где я вообще что-то чиню, и знать его наизусть:

Формулировка, которая теперь стоит у агента в инструкциях: сначала факт, потом теории. Если версий больше одной и ни одну нельзя проверить дешевле, чем за пять минут, — значит, я не измерил то, что должен был.

Три недели и четыре похода за телефоном — нормальная цена, чтобы это запомнить. Второй раз платить не хочется.

#AI #вайбкодинг #отладка #инфраструктура
Обсудить в Telegram →