29日で26のリポジトリをAIパイプラインで構築―壊れたのはコードではなかった
ある開発者がClaude Codeを使用して29日間で26のリポジトリと335ページを構築しました。本当の問題は構文エラーやビルド失敗ではなく、構造的な欠陥でした:SEOカニバリゼーション、URL規約の不一致、ソースとプロダクション環境の乖離、そして検証ツール自体のバグです。トークン消費の93%はコンテキストの再読み取りに浪費されました。教訓:公開前にベンチマーク、コピー前に差分確認、静的解析を信じる前に本番サイトを確認、スケール前に規約を文書化、一度に一つのタスク。
ある開発者がClaude Codeを使用して29日間で26のリポジトリ、1,549回のコミット、335ページを構築しました。パイプラインは静的ファーストアーキテクチャを採用し、すべてのコンテンツはCloudflare Workersのエッジにデプロイされました。各セッションは同じループに従いました:目標を記述し、モデルに計画と構築を任せ、差分をレビューし、モデルに自身の作業をライブサイトで検証させ、コミットする。検証ステップが重要であり、以下のすべての失敗事例は運ではなくチェックによって捕捉されました。
実際に壊れたのは、構文エラー、ビルド失敗、または実行できないコードではありませんでした。すべての実際の問題は構造的であり、単一の差分では見えず、システム全体を見たときにのみ現れるものでした。
最初の問題は、パイプラインが自身と競合したことです。ワードツールハブを要求すると、パイプラインは喜んで/word-tools/に作成しましたが、既存のツールは/tools/にありました。同じクエリをターゲットとする2つのページは、古典的なSEOカニバリゼーションを引き起こしました。教訓:モデルは要求されたページに対して最適化を行い、既存のサイトに対しては行いません。
2番目の問題はURL規約の不一致です。一部のツールはフラットファイル(page.html)、他のツールはディレクトリ(page/index.html)として構築されました。Cloudflareの静的アセット配信では、これらの末尾スラッシュの動作が逆になるため、サイトは正規URLの不一致、2ホップのリダイレクトチェーン、およびSearch Consoleのリダイレクトエラーを蓄積しました。修正にはスプリント最大のコミット日(それぞれ114コミット)が費やされ、文書化されたURL規約と、すべてのリリースをゲートするデプロイ前クローラーチェッカーが作成されました。教訓:モデルが従わなければならない規約は、2番目のリポジトリの前ではなく、20番目のリポジトリの後に書くべきです。
3番目の問題は、ソースとプロダクションが静かに乖離したことです。ゲームリポジトリはハブサイトにミラーリングされてデプロイされました。数週間にわたり、SEO改善がプロダクションミラーに適用され、ソースリポジトリにバックポートされることはありませんでした。罠は明白でした:「同期」操作(ソースをミラーにコピー)は、ライブメタデータを静かに破壊していたでしょう。これは、コピー前の差分チェックが必須になったことで初めて発見されました。教訓:同じファイルの任意の2つのコピーは乖離し、AIはチェックが比較を強制しない限り気づきません。
4番目の問題は、検証ツール自体も嘘をついたことです。最初のリンクグラフ監査は孤立したページの波を報告しましたが、誤報でした:クローラーは絶対URLを未解決の相対hrefと比較していました。後の正規URL監査は123の不一致を報告しましたが、これも誤報で、チェッカーはファイルパスがサービングパスと等しいと仮定していましたが、CDNはクリーンURLを提供していました。両方とも、静的解析を信じる前にライブサイトをプローブすることで発見されました。教訓:検証者を検証せよ。AIが書いたチェックは、それを書いたAIのすべての盲点を継承します。
経済面:スプリントは44の作業セッションと826 MBのセッション記録を生成しました。トークン請求書を監査したところ、約93%のトークン消費は、分割すべきだった長時間セッション内で、キャッシュされたコンテキストを何度も再読み取りすることに費やされていました。修正は無料でした:タスク間でコンテキストをクリアし、永続的な知識を次回のセッションが数百トークンでロードできる小さなメモリファイルに保持し、「1セッション=1タスク」をデフォルトにすることです。
最後に、このサイトは257ページの検索データから7,320インプレッションと207クリックを獲得しました。約5週間のドメインとしては正常で健全な軌道です。最大のクリック獲得者は2048ゲームページであり、可視のAIソルバーがありました—そこに最も本物のエンジニアリングが存在しています。検索需要はページ数ではなく深さに従いました。
生き残ったルール:公開前に再現可能なベンチマークを実施する;ファイルを上書きする操作は常に差分を確認する;静的解析を信じる前にHTTPで本番サイトを検証する;スケールする前に規約をモデルが毎セッションロードするメモリファイルに文書化する;1セッションで1タスク;単一の差分ではなくシステム全体をチェックする監査をスケジュールする。