← Все статьи

Fable 5 и qa-mcp: как ИИ помог вскрыть протокол TestClient в 1С

Кейс с Habr: от Vanessa Automation к нативному TestClient через Python — где Codex застрял на неделю, Fable 5 за сутки собрал карту протокола для qa-mcp.

Содержание

Коротко

На Habr автор экосистемы «ИИ для 1С» рассказывает, как строил qa-mcpMCP-сервер для UI-тестирования 1С:Предприятие без Vanessa Automation в цепочке. Реверс протокола TestClient неделями шёл по кругу с Codex; модель Fable 5 от Anthropic за ~день дала 70–80% исследовательского прорыва.

Что произошло

Продукт «ИИ для 1С» собирает набор MCP-коннекторов: метаданные конфигурации, справка, данные в базе, правка BSL/XML, админ-команды. Для UI-тестов сначала обернули Vanessa Automation — зрелый BDD-слой с русскими Gherkin-шагами и .feature-файлами.

На Linux в headless с Xvfb это терпимо: тесты бегут фоном. На рабочем Windows-ноутбуке картина другая — агент поднимает полноценный сеанс с окнами плюс менеджер тестирования; формы мелькают перед глазами, сценарий сбивается случайным кликом, память тает. Идея: сохранить Gherkin, но управлять TestClient напрямую из Python, минуя лишнюю среду выполнения.

Штатное тестирование — пара «менеджер тестирования» (/TESTMANAGER) и «клиент тестирования» (/TESTCLIENT), обмен бинарными кадрами. Vanessa переводит человекочитаемые сценарии в этот механизм. Задача автора — .feature → transpiler → нативный протокол → форма .

Неделю с Codex в режиме глубокого рассуждения: pcap, гипотезы о длинах полей, replay кадров — «что-то получалось», но общей карты не было. Темп указывал на год работы ради замены слоя, который уже работает.

Появилась Fable 5 («урезанный Mythos»). За pro-подписку (~$20) автор скормил модели сырые дампы, провалившиеся гипотезы и куски Python. Меньше чем за сутки — понимание handshake, переиспользуемых кадров, динамических полей и границ, где нельзя «додумывать», а нужен захват трафика. Дальше Codex и Claude Code Opus 4.8 ещё ~две недели довели до продукта.

Итог qa-mcp (состояние на 23.06.2026): ~60 MCP-инструментов, 475 offline-тестов, transpile корпуса Vanessa с 12% до 100% на их сценариях, Gherkin/BDD, отчёты JUnit/Allure, проверки UI → база через OData, генерация smoke-тестов из метаданных, замеры покрытия через debug protocol, детектор дрейфа протокола при смене версии платформы.

Почему это важно

Это редкий публичный кейс, где ИИ не «написал CRUD», а разобрал закрытый бинарный протокол ERP-платформы — задачу, которую команды обычно откладывают. Для разработчиков и авторов агентных контуров важен вывод: верхний слой (Gherkin, привычные шаги) можно сохранить, а середину — заменить на прямой TestClient, если нужен QA, ориентированный на агентов, без второго полноэкранного на ноутбуке.

qa-mcp добавляет то, чего не хватало в Vanessa-MCP: assert_data по OData (кнопка нажалась ≠ документ провёлся), матрица прав по ролям, дымовые тесты из метаданных, CI-контроль по времени шага и построчному покрытию через /e1crdbg/. Оговорка честная: протокол не публичный API — шаблоны привязаны к версии платформы (lab: 8.3.27.2130); protocol drift detector предупреждает о сдвиге.

На практике

  1. Не спешите выбрасывать Vanessa — если BDD-корпус и headless-стенд устраивают, qa-mcp — альтернатива для рабочего процесса с агентом, а не «Vanessa плохая».
  2. Разделите исследование и код — тяжёлый реверс протокола автор отдал модели с большим контекстом (Fable 5); прикладной код и интеграции — Codex/Claude по спецификациям.
  3. Transpile с unmapped — не распознанный шаг попадает в отчёт, а не проглатывается молча.
  4. UI + данные — после записи формы проверяйте OData, не только закрытие окна.
  5. Версия платформы — зафиксируйте манифест шаблонов; при обновлении гоняйте live-regression и python -m qa_mcp.regression.versioning.
  6. Smoke из meta-mcpgenerate_smoke_suite открывает основные формы справочников/документов по карте метаданных.
Слой Роль
.feature / Gherkin Авторский язык сценариев
qa-mcp / FastMCP Transpile, run, assert, отчёты
TestClient протокол Нативное управление UI
OData / debug protocol Проверка данных и покрытия кода

Итог

Статья — про компромисс между зрелым BDD-инструментом и QA, заточенным под агентов: Fable 5 сняла блокер на «последней миле» протокола, qa-mcp сохранил Gherkin и добавил проверки данных и производительности. Если вы строите ИИ-разработку в , имеет смысл следить за проектом — и закладывать детектор дрейфа протокола, а не надеяться на вечную совместимость байтовых шаблонов.