機能トレースナビゲーター(ユーザーアクション → コールグラフ → コードウォークスルー)
UIやAPIの入口からコントローラー、サービス、データ層まで単一機能を追跡し、コールグラフと注釈付きウォークスルーを生成します。
プロンプト概要
あなたへのヒント
- 実際の実行経路を特定するためにログやテスト名を提供してください。 - 代替フローを捉えるためにエラーハンドリングコードを含めてください。 - 本番で使用される短いサンプルペイロードを追加してください。
運用チームよりNexusAi Technology解決する課題
機能の全レイヤーにわたる完全な経路を見つけるのはミスが起こりやすいです。本ツールは信頼できるコールグラフを作成し、次に調査すべき箇所を明確にします。
エンドツーエンドの経路の明確化
データがレイヤーを通じてどのように移動するかを正確に示します。
実用的な注釈
各ステップに目的、入出力、副作用を含みます。
テストギャップ検出
経路上の不足または弱いテストを強調表示します。
次に読むファイルの案内
次に読むべきファイルとその理由を教えます。
AIプロンプト指示
シニアのフルスタックエンジニア兼コードマッピング担当として振る舞ってください。
このタスクが重要な理由:
エンドツーエンドのトレースは、データの流れ、副作用の発生箇所、保守やテストで重要なコンポーネントを明らかにします。
重要な制約:
- 提供されたルート、コントローラー、サービス、モデルのスニペットのみを使用してください。
- 複数のバリアントがある場合は、本番環境の経路を優先してください。
ユーザー入力:
- 機能の説明(例:「POST /tasks によるタスク作成」)
- 関連ファイル:ルートハンドラー、コントローラー、サービス、モデル、ミドルウェア
- この経路をカバーするログやテスト名
目的:
1) エントリーから永続化までの明確なコールグラフを作成する。
2) 主要な関数に目的、入力/出力、副作用を注釈する。
3) リスク、テスト不足、可観測性のギャップを特定する。
4) 次に読むべきファイルの順序を推奨する。
分析の流れ:
1) ルートから開始し、コントローラーとサービスの呼び出しを特定する。
2) データ変換とバリデーションを追跡する。
3) 外部呼び出し(DB、キュー、HTTP)とエラー処理を記録する。
4) 既存のテストと照合する。
5) パフォーマンス、信頼性、可読性の懸念をまとめる。
必要な出力形式:
- コピー&ペースト可能なテキスト形式のコールグラフ(インデント付きリスト)
- 各ステップの注釈:目的、パラメータ、出力、副作用
- 不足しているテストと推奨テストケース
- 次にレビューすべき5つのファイル
品質管理:
- 正確な関数名とファイルパスを含める。
- 推測と断言を区別し、推測は明確にマークする。
検証チェックリスト:
- 全レイヤーが網羅されていること(ルート → コントローラー → サービス → モデル)
- 外部連携が特定されていること
最終指示:
新しいエンジニアがバグ修正を自信を持って実装できるようなトレースを提供してください。
期待される成果
コールグラフ: POST /tasks → routes/tasks.js:createTask → controllers/taskController.js:create → services/taskService.js:createTask → models/task.js:Task.create 注釈: - createTask (ルート): ボディスキーマを検証し、コントローラーに転送 - controller.create: DTOをマッピングし、try/catchで処理 - service.createTask: ビジネスルールを適用し、タイトルの重複を排除 - Task.create: 永続化し、IDを返す 不足テスト: タイトル重複拒否、不正ペイロード400エラー。 次に読むファイル: middleware/validateBody.js, services/notifications.js
実装ステップ
Codexでトレースを構築する
Codexを開きます。対象機能のルート、コントローラー、サービス、モデルのスニペットを貼り付けます。このプロンプトを使ってコールグラフと注釈付きウォークスルーを依頼してください。関数名とパスを含む階層的なトレースが得られます。
12 minVS Codeで呼び出しを検証する
VS Codeで各関数にジャンプし、パラメータ、戻り値、副作用を確認します。欠落しているステップ(キュー、キャッシュ、HTTP呼び出し)を追加または修正してください。
10 minテストチェックリストに変換する
不足しているテストリストをテストランナーのテスト名に変換し、プレースホルダーを作成します。トレースとチェックリストをリポジトリのドキュメントで共有し、次のプルリクエストの指針としてください。
8 min
