Двуседмичният път към внедряването на „моменталното“ ИИ решение на Claude Code
В статия за блога на консултантската компания Thoughtbot разработчикът Fritz Meissner споделя опита си от внедряването на „моментално“ решение за нестабилни тестове (flaky tests), генерирано от изкуствен интелект [1]. Докато инструментът Claude Code е успял да локализира и коригира критичните грешки за една нощ, последващата преработка и изчистване на генерирания код са отнели две седмици интензивен човешки труд.
В продължение на години екипът е изолирал проблемните тестове със специален маркер, тъй като в противен случай те са причинявали провал на около 60% от изпълненията в системата за непрекъсната интеграция (CI/CD). Тестовете са били фокусирани върху интерактивни страници, разработени с Stimulus и Hotwire, като опитите за преминаване към Playwright са оставили част от тях трайно неработещи. Предишните опити на различни софтуерни инженери да решат проблема ръчно в рамките на седмици са завършвали без успех [1].
Използвайки модела Opus 4.6 в Claude Code, екипът е успял да постигне работещ тестов пакет. ИИ агентът е стартирал тестовете стотици пъти в постепенно нарастващи партиди, анализирайки паралелните процеси и откривайки сложни състояния на надпревара, които хората са пропускали в продължение на години. Въпреки че Claude Code е постигнал 0% неуспешни тестове на основния клон (main), той е въвел множество лоши практики [1].
Изображение: Svetni.me / Авторско изображение
Генерираният от ИИ код е съдържал ненужни изчаквания (sleeps), излишно ограничаване на обхвата на елементите и нерелевантни корекции, разположени на грешни редове. На Meissner са му били необходими две седмици, за да раздели случайните съвпадения от реалните резултати, да премахне неефективния код, да приложи добри практики и да направи чисти комити [1].
Този опит подчертава три ключови извода. Първо, опитните програмисти остават незаменими за почистването на неефективния ИИ код. Второ, ИИ е изключително ценен за рутинни, дълги процеси и за бързо навлизане в контекста на сложни системи. И накрая, техническият дълг не може да бъде избегнат — прибързаното приемане на ИИ генериран код без одит води до натрупване на лоши практики, които затрудняват поддръжката в бъдеще [1].
Източници:
[1]: AI's "overnight" solution for our flaky tests took two weeks to adopt - Thoughtbot Blog