Claude Code のキュー監査でブログ記事の「テーマ汚染」を発見した話
何が起きたか
ブログの投稿キューを整理しようと Claude Code でスクリプトの diff をレビューしていたら、想定外の問題が見つかった。BSky/X のキューは問題なし。でも noteキューに「人間関係」キーワードが混入した5件、blogキューに旧テーマタイトルの記事が8件残っていた。テーマ移行のつもりがキューの中身は全然移行できていなかった——という話。
環境
- macOS / MacBook Pro M5 32GB
- Claude Code(ターミナル)
- Codex(バックグラウンドレビュー)
- 自前の priority_stock_manager.py + quality_guard.py
実際に試したこと
まず diff のレビューをかけた。観点はこの4つ。
1. バグ・クラッシュリスク(非同期処理・ファイルI/O競合)
2. 意図通りに動かない可能性(重複チェック漏れ・条件分岐ミス)
3. セキュリティ上の問題
4. 改善提案(本当に必要なものだけ)
深刻度を🔴🟡🟢で分類して日本語で出すよう指示した。同時に Codex をバックグラウンドで走らせてセカンドオピニオンを取る構成にした。
Codex の結果を待つ間に、Claude Code がキューの監査結果を先に返してきた。
BSky/Xキュー:クリーン ✅
noteキュー 5件 → 「人間関係」キーワード混入
blogキュー 8件 → 旧テーマタイトル混入(posted_titles.jsonも含む)
Xキュー 5件 → session_log.json の text フィールドが空(tweets[]には内容あり、実害なし)
X の件は実害なしと判定されたので放置。問題は note と blog。
解決までの実際の手順
削除対象をリストアップしたら、blog キューから6件が対象になった。
s080_A_20260410_priority_stock_managerが見せ.json
s075_B_20260410_ローカルAI自動化とサーバー検出並行させる実戦検証.json
s100_S_20260406_ClaudeAIとChatGPTの使い分け完全ガイ.json
s080_A_20260410_ローカルAIのゴミ掃除とBlueskyでの仮説検証.json
s080_A_20260410_macOS標準flockがなくてもPIDでロック再.json
s080_A_20260410_MacBo...(以下略)
スコアが s100_S(Sグレード・スコア100)のファイルも含まれていた。品質は高くても、テーマが「ChatGPTとの使い分け」という旧テーマ系なので削除対象になった。スコアと投稿可否は別の軸で管理しないといけない、という教訓。
旧テーマファイルの除外処理と、posted_titles.json から旧テーマエントリを削除する処理を走らせた。変更が入ったファイルの差分を確認すると、quality_guard.py・commander_actions.py・commander_agent.py・各種 blog スクリプトなど 40 本超が一度に変わっていた。
git diff --stat HEAD~1
# .claude/settings.local.json | 71 +-
# 00_Shared/quality_guard.py | 34 +
# 01_Scripts/agent_loop/commander_actions.py | 54 +
# 01_Scripts/blog/add_meta_descriptions.py | ...
この量の変更を人間が一行ずつレビューするのは現実的じゃない。だから Claude Code に diff を渡してクラッシュリスクと意図ずれを先に潰す、という流れにしている。
試してわかったこと
テーマ移行は「生成ロジックを変える」だけじゃ終わらない。キューに積まれた在庫は別で監査しないと、旧テーマ記事が普通に投稿されていく。今回は note 5件・blog 8件が残存していた。
スコアリングと「投稿可否」は切り離す必要がある。s100_S のファイルでもテーマ違反なら trash に落とす——そういう判定軸を quality_guard.py に追加することになった。
Claude Code でセッションがコンテキスト上限に達して継続になるケースがある。会話ログが長くなるほど起きやすい。重要な中間状態(キュー状態・削除対象リスト)は都度ファイルに書き出しておかないと、継続後に文脈が飛ぶ。
まとめ
テーマ移行はキューの中身まで監査しないと完結しない。スコア高くてもテーマ違反は削除——その判定を自動化に組み込んだ。Claude Code の diff レビュー+Codex バックグラウンドのセカンドオピニオン構成は、40本超の変更を人間が追わずに済む現実的な手段。