Claude Code 開発で機能が静かにデグレードする — 出力品質テストで防ぐ方法

Claude Code でリファクタリングや新機能追加を行うと、既存機能の出力品質が意図せず劣化することがある。機能は正しく動いておりテストも通るが、ユーザーが期待する情報が出力から消えている。この記事では、実際に遭遇した「静かなデグレード」の事例と、出力仕様テストによる対策を紹介する。 何が起きたか 日本株・BTC のトレーディングシステムで、日次の投資提案を GitHub Issues に自動投稿している。このシステムにポートフォリオ統合最適化機能を追加した際、以下の流れで問題が発生した。 統合最適化機能を追加。成功時は 1 つの統合 Issue に「市場概要」「総評」を含む詳細な分析を出力する設計 失敗時のフォールバックとして、銘柄別 Issue + サマリー Issue を作成するパスも実装 テスト全パス、PR マージ ある日、ポートフォリオ最適化が失敗しフォールバックが発動 サマリー Issue を見るとポートフォリオ一覧とリンクテーブルだけ — 「結局ホールドすべき?買うべき?」がわからない 統合パスには存在する「銘柄横断の総評」が、フォールバックパスでは最初から実装されていなかった。しかしテストは両方とも通っていた。 サマリー Issue の Before / After デグレード状態(修正前): 1 2 3 4 5 6 7 # 2026-04-03 総合投資評価 ## 現在のポートフォリオ (ポジション一覧テーブル) ## 銘柄別計画 (リンクテーブル) ## 子課題チェックリスト (チェックボックス一覧) 修正後: ...

2026年4月3日 · 3 分