◉CLAUDE LABEN
●2.1.283 — 週末の Claude Code リリースはなく、最新は 9月25日の 2.1.283 のまま。権限モード未設定時の既定が auto に変わった点は、許可ルールとの照合が要ります●PLANS — Pro と Team Standard の既定モデルが Sonnet から Opus へ。Claude Code 2.1.280 の変更で、プラン選びの前提が変わっています●10/07 — Claude Desktop / Cowork の管理構成キー旧綴りの受付終了まで残り9日。締切後は読み込みが fail-closed になります●AUTO — 「許可ルールに書いたコマンドが auto モードで拒否される」という問いが出ています。呼ぶ形を許可ルールに揃える話題です●NEW — 既定の Opus が 5.5 に変わった週、別名のまま残していた3箇所の確認●CURSOR — Cursor 経由で Claude を使うとクレジットがモデル原価に比例して減る構造。1日50件を超えるなら定額の Claude Code Pro が安定という整理が出ています●2.1.283 — 週末の Claude Code リリースはなく、最新は 9月25日の 2.1.283 のまま。権限モード未設定時の既定が auto に変わった点は、許可ルールとの照合が要ります●PLANS — Pro と Team Standard の既定モデルが Sonnet から Opus へ。Claude Code 2.1.280 の変更で、プラン選びの前提が変わっています●10/07 — Claude Desktop / Cowork の管理構成キー旧綴りの受付終了まで残り9日。締切後は読み込みが fail-closed になります●AUTO — 「許可ルールに書いたコマンドが auto モードで拒否される」という問いが出ています。呼ぶ形を許可ルールに揃える話題です●NEW — 既定の Opus が 5.5 に変わった週、別名のまま残していた3箇所の確認●CURSOR — Cursor 経由で Claude を使うとクレジットがモデル原価に比例して減る構造。1日50件を超えるなら定額の Claude Code Pro が安定という整理が出ています
記事一覧/Claude Code
⟐ Claude Code/2026-06-24上級

修正済みのファイルを、もう一度直そうとしました — 浅い永続クローンの陳腐化と「読む前に取り直す」判断

無人のエージェントが、すでに直したファイルをもう一度直そうとしていました。原因は数日前の浅い永続クローンを読み続けていたことです。ローカルHEADとリモートHEADの突き合わせで陳腐化を数値で検知し、判断の前にだけ取り直す設計と、二重作業を防ぐ冪等性の考え方を整理します。

Claude Code258git17自動化88クローン冪等性5

✦ プレミアム記事

無人で回しているパイプラインのログを見ていて、手が止まったことがあります。前の日に直したはずの箇所を、エージェントがもう一度、まったく同じ意図で直そうとしていたのです。差分は出ているのにリモートには何も増えない。失敗もしていない。ただ、すでに片付いた仕事をやり直そうとしていました。

原因は地味でした。作業を速くするために /tmp に置いていた浅いクローンが、数日かけて静かに古くなっていたのです。エージェントはその古い木を読んで「まだ直っていない」と判断し、淡々と二度目の修正を始めていました。

個人開発で複数のリポジトリを毎日決まった時刻に自動で触っていると、この「黙って古くなるクローン」は思った以上に厄介な相手になります。今日はこの一件を題材に、陳腐化を数値で捕まえて、判断の前にだけ取り直す設計を整理してみます。

もう直したはずの場所を、もう一度直そうとした

その日のエージェントは、いつものように永続化していたクローンを再利用していました。git pull --rebase は走っていて、ログ上はエラーもありません。それでも、生成しようとしていた成果物は前日に公開済みのものとほとんど同じでした。

手元で確かめると、原因はすぐに見えました。永続クローン側の記事数は 668、リモートを取り直すと 671。3 本ぶん、つまり別のセッションが先に追加した成果がローカルには反映されていなかったのです。HEAD のコミットも食い違っていました。エージェントは「671 のうち 3 本が新しい」という事実を知らないまま、668 の世界で「まだ無い」と判断していたわけです。

私自身、最初は pull を信じきっていたので、しばらく原因を疑う場所を間違えました。書き込みの権限を疑い、ネットワークを疑い、最後にようやく「読んでいる木そのものが古い」という当たり前のところに戻ってきました。

「書けない」と「古い」は、まったく別の故障です

この手の不具合を切り分けるとき、最初に分けておきたいのが障害の種類です。見た目は似ていても、効く対策がまるで違います。

症状典型的な原因効く対策
push しても何も増えない(commit は成功表示)git identity 未設定・index.lock 残留・空コミットcommit 前に user.email/name を設定し、成否は local==remote の SHA 比較で判定
書き込みで Permission denied作業ディレクトリの所有者違い・ディスク満杯書き込めるパスへフォールバック、容量確保
差分は出るのに「やるべきことが無い」判断になる読んでいるクローンが古い判断の前にリモートとの遅れを測り、必要なら取り直す

今回の一件は、いちばん下の行です。書き込みは正常で、権限も問題ない。壊れていたのは「読み取りの鮮度」でした。git push が成功と言うのに何も増えない 系の対処や、所有者違いのフォールバックをいくら積み上げても、この故障には届きません。だからこそ、独立した一つの故障として扱う価値があります。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦git ls-remote でローカル HEAD とリモート HEAD を突き合わせ、何コミット遅れているかを push 前に数値で出す手順
✦「書き込みが失敗する」障害と「読み取りが古い」障害を切り分け、後者だけに効く再クローン判定を入れる設計
✦生成の前に成果物の実体を確認して二重作業を止める、冪等な無人パイプラインの組み方
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

⟐ Claude Code2026-08-02
予算上限で止まった実行の再開設計 — 停止点36通りを総当たりして分かったこと
ヘッドレス実行が予算上限で止まると、成功でも失敗でもない第三の終了が生まれます。停止点36通りを総当たりして再開の健全性と総支出を測った実験から、原子的な書き込みとインデックス優先の再開、上限をバッチ全体でなく最小の再開単位に掛ける設計へ至った記録です。
⟐ Claude Code2026-09-02
モデル切り替えの記録と歯止めを、フック2本で作る
PreModelSwitch と PostModelSwitch を使い、無人実行中のモデル切り替えを記録するフックと、約束していない切り替えだけを止めるフックをゼロから作ります。実測値つきの手順です。
⟐ Claude Code2026-09-01
heredoc のクォートを1つ落とすと、ログに書いた金額や日付が別物になります
未クォートの heredoc は本文の変数とバックティックを実行します。実測した4通りの書き換わり方、3種類のクォート記法の比較、プレースホルダと sed で値を安全に埋める手順、既存スクリプトを棚卸しする検出コードまでをまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます