sqlite-utils 4.0rc2:Claude Fable執筆、149.25ドル、データ損失バグを修正

✍️ OpenClawRadar📅 公開日: July 5, 2026🔗 Source
sqlite-utils 4.0rc2:Claude Fable執筆、149.25ドル、データ損失バグを修正
Ad

Simon Willison氏は、sqlite-utils 4.0rc2をリリースしました。これはSQLite用のPythonライブラリで、コードの大部分をClaude Fableが記述しました。総費用は、37回のプロンプトと34回のコミットによるAPI費用で約$149.25、30ファイルにわたって+1,321 -190行の変更が行われました。

変更点

このリリース候補では、Table.delete_where()における深刻なデータ損失バグを修正しています。以前はコミットが行われず、接続がトランザクション内のままとなり、その後のすべての書き込みに悪影響を及ぼしていました。以下はFableの分析による再現コードです。

db = sqlite_utils.Database("dw.db")
db["t"].insert_all([{"id": i} for i in range(3)], pk="id")
db["t"].delete_where("id = ?", [0])
# conn.in_transaction が True になる
db["t"].insert({"id": 50})
db["u"].insert({"a": 1})
db.close()
# 再オープン: 行は [0, 1, 2] — 削除、行50、テーブルuがすべて消えている。

Willison氏はこれを「本当に悪いバグ」と呼び、安定版4.0のリリース前にFableが発見したことを喜んでいます。

Ad

新しいトランザクションモデル

すべての書き込みメソッド(insert()upsert()update()delete()delete_where()transform()create_table()enable_fts()など)は、それぞれ独自のトランザクション内で実行され、戻り値の前にコミットします。手動でのcommit()は不要です。

2つの例外があります。

  • db.atomic()を使用して複数の操作をアトミックにグループ化する場合
  • db.begin()でトランザクションを開始した場合、ライブラリはそれをコミットしません。コミットはユーザーが制御します。

Python 3.12+ の autocompat サポート

Fableはさらに、Python 3.12の新しいsqlite3.connect(..., autocommit=True|False)モードとの互換性も確保しました。ライブラリの自動メソッド別トランザクションはデフォルトの接続モード向けに設計されており、Fableは新しいautocommit設定のもとでテストスイートが通過するように修正しました。

レビュープロセス

Willison氏は作業をiPhone上のClaude Code for Webで開始し、最終レビューはラップトップ上のGitHub PRで行いました。彼は、ドキュメントの編集内容を最初にレビューすることが変更点を理解する優れた方法だと述べています。最終レビューをGPT-5.5が行い、追加のエッジケースを発見しました。完全なPRトランスクリプトは公開されています。

対象ユーザー

軽量データベース操作にsqlite-utilsを使用しており、適切なトランザクション安全性を備えたプロダクション対応の4.0リリースを求めるPython開発者向けです。

📖 出典全文: HN AI Agents

Ad

👀 See Also

AIアシスタントがウェブページを取得する方法:ChatGPT、Claude、GeminiなどのNginxログ分析
Tools

AIアシスタントがウェブページを取得する方法:ChatGPT、Claude、GeminiなどのNginxログ分析

ある開発者が、ユニークなURLをプロンプトとして与え、Nginxログを監視することで5つの主要なAIアシスタントをテストし、それぞれの取得パターンを明らかにしました。ChatGPT、Claude、Perplexityは専用のユーザーエージェントを使用する一方、Geminiは取得を行わず自らのインデックスから回答しました。

OpenClawRadar
多段階LLMワークフローのための決定論的コンパイラアーキテクチャが強力なベンチマーク結果を示す
Tools

多段階LLMワークフローのための決定論的コンパイラアーキテクチャが強力なベンチマーク結果を示す

構造化されたLLMワークフローのための決定論的コンパイルアーキテクチャは、型付きノードレジストリ、パラメータ契約、静的検証を使用して、ワークフローグラフを事前にコンパイルします。ベンチマークでは、3〜12以上のノード深度にわたるワークフローで、GPT-4.1およびClaude Sonnet 4.6を上回る性能を示しています。

OpenClawRadar
LLMアーキテクチャギャラリー:モデル設計のビジュアルリファレンス
Tools

LLMアーキテクチャギャラリー:モデル設計のビジュアルリファレンス

セバスチャン・ラシュカのLLMアーキテクチャギャラリーは、『The Big LLM Architecture Comparison』と『A Dream of Spring for Open-Weight LLMs』からアーキテクチャ図とファクトシートを収集したもので、Llama 3 8B、DeepSeek V3、Gemma 3 27Bなどのモデルの詳細な仕様が掲載されています。

OpenClawRadar
OpenClawとSave to Spotify CLIで日次ブリーフィングをパーソナルなSpotifyポッドキャストに自動化
Tools

OpenClawとSave to Spotify CLIで日次ブリーフィングをパーソナルなSpotifyポッドキャストに自動化

OpenClawは毎朝7時に実行され、Slackのスレッド、GitHub通知、カレンダーを取得し、要約してmp3に変換し、Save to Spotify CLIを使ってプライベートエピソードとしてアップロードします。Free版とPremium版で動作します。

OpenClawRadar