Sqlite-utils 4.0: Саймон Уиллисон подготовил релиз с помощью Claude Fable

· Искусственный интеллект
Разработчик sqlite-utils Саймон Уиллисон рассказал, как ИИ-модель Claude Fable помогла найти критические проблемы перед стабильным релизом 4.0. Работа обошлась примерно в 149,25 доллара.

cover.svg

Саймон Уиллисон, автор популярной библиотеки sqlite-utils, рассказал о подготовке стабильного релиза версии 4.0 с помощью модели Claude Fable. Ранее он уже писал о кандидате в релиз 4.0rc1.

По словам Уиллисона, доступ к Claude Fable в рамках подписки Max оставался лишь на несколько дней, и он решил использовать это время, чтобы довести библиотеку до стабильной версии, в которой был бы полностью уверен. Уиллисон придерживается семантического версионирования и стремится как можно реже выпускать несовместимые мажорные версии.

Работа началась с запроса в Claude Code для веба, отправленного с iPhone: финальная проверка перед выпуском стабильной версии 4.0 с акцентом на поиск изменений, которые в будущем окажутся breaking changes, если их исправлять позже.

В ответ модель составила отчёт, в котором обнаружила пять проблем, классифицированных как блокеры релиза. Одной из самых серьёзных оказалась ошибка в методе Table.delete_where(). В отличие от корректно реализованного Table.delete(), этот метод выполняет DELETE-запрос через self.db.execute() без обёртки atomic(). В результате соединение остаётся в состоянии in_transaction=True, из-за чего все последующие вызовы atomic() идут по ветке savepoint и также не фиксируют изменения.

Уиллисон привёл сквозной пример воспроизведения проблемы: после вызова delete_where() последующие операции вставки данных в таблицы не сохраняются, а при повторном открытии базы данных теряются не только удалённые строки, но и данные, добавленные позже, включая целую отдельную таблицу.

По словам автора, стоимость привлечения Claude Fable к работе над релизом составила около 149,25 доллара.


Источник: Simon Willison

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.