# analyze_code_structure フォーマット回帰の修正

## 概要

`analyze_code_structure` ツールは v1.6.1.4 と v1.9.4 の間で重大なフォーマット回帰が発生し、後方互換性を破壊し、元の仕様に違反しています。

## 問題の説明

### バージョン比較

**v1.6.1.4 (正しい実装)**:
- `full`: 適切な構造を持つ Markdown テーブル形式
- `compact`: 複雑度情報を含む Markdown テーブル形式
- `csv`: シンプルな CSV 構造
- サポート形式: `["full", "compact", "csv"]`

**v1.9.4 (壊れた実装)**:
- `full`: プレーンテキスト形式（仕様違反）
- `compact`: 複雑度情報のないプレーンテキストリスト形式
- `csv`: 詳細なパラメータ/修飾子を含む複雑な CSV 構造
- サポート形式: `["html_compact", "html_json", "full", "compact", "csv", "json", "html"]`

### 具体的な問題

1. **Full フォーマットの完全な破綻**
   - v1.6.1.4: 適切な Markdown テーブル形式
   - v1.9.4: `=` セパレータを使用したプレーンテキスト形式（仕様違反）

2. **Compact フォーマットの不一致**
   - v1.6.1.4: 複雑度スコアを含む Markdown テーブル
   - v1.9.4: 複雑度情報のないプレーンテキストリスト

3. **CSV フォーマットの構造変更**
   - v1.6.1.4: シンプルな CSV 構造
   - v1.9.4: 詳細なパラメータ/修飾子の分解を含む複雑な CSV

4. **無許可のフォーマット追加**
   - HTML フォーマット（`html`, `html_compact`, `html_json`）が仕様なしで追加された
   - これらのフォーマットは元の `analyze_code_structure` 仕様の一部ではない

## 根本原因

v1.9.4 で `FormatterRegistry` の導入により、従来の `TableFormatter` 実装が置き換えられましたが、新しいフォーマッターは元の仕様に違反する完全に異なる出力フォーマットを生成しています。

## 影響

- **破壊的変更**: Markdown テーブル形式を期待する既存の統合が失敗する
- **仕様違反**: ツールがドキュメント化された出力フォーマットを生成しなくなった
- **機能回帰**: compact フォーマットで複雑度情報が失われた
- **互換性の問題**: CSV 構造の変更によりパースロジックが破壊される

## 提案された解決策

拡張性のために新しい FormatterRegistry アーキテクチャを維持しながら、元の v1.6.1.4 フォーマット仕様を復元する。

## 成功基準

1. `full` フォーマットが v1.6.1.4 と同一の Markdown テーブルを生成する
2. `compact` フォーマットが Markdown テーブル形式で複雑度情報を含む
3. `csv` フォーマットが v1.6.1.4 と互換性のあるシンプルな構造を維持する
4. HTML フォーマットが別のツールに移動されるか、実験的な機能として明確にマークされる
5. すべての既存テストが修正されたフォーマット期待値でパスする

## 関連する問題

- 既存の MCP 統合との後方互換性
- フォーマット仕様のドキュメント更新が必要
- 正しいフォーマット期待値を反映するテストスイートの更新

