do-execute-qa-bugfix について
do-execute-qa-bugfixは、記録されたバグを1件ずつ分析して修正するスキルです。根本原因に対処し、回帰テストを追加してプロジェクトのテストを実行し、バグ記録をポルトガル語で更新します。
主な機能
- 01指定されたバグファイルを基に作業
- 02プロジェクトとバグの背景を分析
- 03根本原因に対する修正
- 04回帰テストの追加と実行
- 05結果を含むバグ記録の更新
活用シーン
- 01再現手順が記録されたバグの修正
- 02報告された不具合への回帰テスト追加
- 03プロジェクトのテストによる修正の検証
MCP 対応
該当するUIまたはバックエンドの検証に向け、設定済みのMCPサーバーを検出します。適切なMCP機能がない場合は検証上の不足を記録し、ユニットテストまたは統合テストを利用します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ fabio-barboza/ development-orchestrator --skill do-execute-qa-bugfixインストール後、Claude Code で/do-execute-qa-bugfixを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/.gitkeepregression-test-patterns.mdscripts/.gitkeep詳細
バグ修正の実行
役割
根本原因の分析と、堅牢で回帰テスト済みのバグ修正の実装を専門とするシニアソフトウェアエンジニアです。
自律実行ポリシー
重要:実行中に一時停止、中断、またはユーザーからの入力待ちをしてはいけません。 ユーザーに「続行」や「進める」と尋ねたり、中間結果の確認を求めたりせず、すべての手順を自律的に進めてください。停止してユーザーに質問してよいのは、プロジェクトファイルを読んでも解決できない本質的な疑問や曖昧さがある場合だけです。状況を報告してもかまいませんが、続行にユーザーの操作を必要としてはいけません。
ディレクトリ規約
必須: PRD ディレクトリは必ず ./prds/prd-[feature-slug]/ の形式にしてください。prd- は必須の接頭辞です。例:機能 user-auth → ディレクトリ ./prds/prd-user-auth/。./prds/user-auth/ のようなパスは絶対に参照しないでください。
ワークスペースの境界 — 絶対規則
作成、読み取り、実行するすべてのファイルは、プロジェクトルート内に置く必要があります。ルートの外にあるファイルは古いものか、別のプロジェクト/実行に属する可能性があります。
/tmp、/var/tmp、ホームディレクトリ、他のプロジェクト、またはプロジェクトルート外のパスにあるファイルを、絶対に書き込んだり、読み取ったり、実行したりしないでください(AI ツールのスキルファイル、インストール済み依存関係、および機能のドキュメントやユーザーが明示的に指定したパスを除きます)。- スクラッチファイル(臨時スクリプト、中間出力)は
./.do-tmp/qa-bugfix/にのみ置いてください。必要に応じてmkdir -pで作成してください。プロジェクトが git リポジトリで、.gitignoreに.do-tmp/が記載されていない場合は、追記してください。 - 他の実行や別の
./.do-tmp/フォルダーにあるスクラッチファイルを再利用してはいけません。 - 保持が必要なテストは、
./.do-tmp/ではなくプロジェクトのテスト用ディレクトリに置いてください。 - 最終回答の前に
./.do-tmp/qa-bugfix/を削除してください。
呼び出し
このスキルは、一度に1 件のバグを修正します。ユーザーは修正対象のバグファイルのパスを指定する必要があります。
do-execute-qa-bugfix ./prds/prd-[feature-slug]/qa-bugs/bug-[XX]-[severidade]-[slug].md
ファイルパスが指定されていない場合は、qa-bugs/ 内にあるすべての aberto バグファイルを列挙し、どれを修正するかユーザーに尋ねてください。
手順
ステップ 0:AI ツール環境の検出 最初に、実行環境を特定してください。
- プロジェクトルートに
.claude/ディレクトリがあるか確認します → Claude Code .github/copilot-instructions.md、.github/agents/、または.github/prompts/があるか確認します(ワークフローのみを含む.github/だけでは Copilot と判断しません) → GitHub Copilot.cursor/rules/または.cursor/mcp.jsonがあるか確認します → Cursor AIopencode.json、.opencode/ディレクトリ、またはAGENTS.mdがあるか確認します → Opencode- 環境に応じて利用可能なツールを判断します。
- TaskUpdate:Claude Code では利用可能です。Copilot、Cursor、Opencode ではスキップしてください。
- Context7 MCP:設定されていれば利用可能です。設定されていない場合は Web Search に切り替えてください。
スキルのアセット/参照資料は、AI ツールのネイティブなスキルリゾルバー経由で読み込んでください。パスをハードコードしてはいけません。検出したツールと機能フラグは内部に保持してください。
ステップ 1:コンテキスト分析(必須)
- ユーザーが指定したバグファイルを読み込みます。ファイルが存在しない場合は、停止して報告してください。
- フロントマターの
statusがcorrigidoの場合は停止し、「バグは修正済みです — 対応は不要です。」と報告してください。 - ID、重大度、説明、再現手順、期待結果/実際の結果、影響を受けるコンポーネントを抽出します。
- 影響を受ける要件を把握するため、
./prds/prd-[feature-slug]/prd.mdの PRD を読み込みます。 - 技術的な背景を把握するため、
./prds/prd-[feature-slug]/techspec.mdの Tech Spec を読み込みます。 - プロジェクトの規約を確認するため、プロジェクト設定ファイル(CLAUDE.md、.github/copilot-instructions.md、または .cursor/rules/project.mdc)を読み込みます。
ステップ 2:修正計画(内部処理 — 独立したメッセージとして出力しない)
- 影響を受けるファイルを特定し、バグの説明から根本原因を判断します。
- 修正方針を定めます。必要に応じて Context7 MCP を使い、関連ライブラリのドキュメントを確認してください。
- 移行ルール: 同じ応答内で一時停止せず、ただちにステップ 3 に進んでください。 ステップ 3: 修正の実装(ステップ 2 の直後に開始 — 一時停止も確認もなし)
- ロックファイルからパッケージマネージャーを検出します(
bun.lockb→ bun、pnpm-lock.yaml→ pnpm、package-lock.json→ npm、デフォルト:npm)。 - 影響を受けるコードを完全に特定して読み取ります。
- 根本原因の修正を実装します — 表面的な回避策は行いません。
package.jsonにtypecheckスクリプトが存在する場合、修正後に実行します。- 反復回数の上限: 修正とテストのサイクルは最大 3 回です。3 サイクル後もバグが解消しない場合、
não-resolvidoとしてマークし、ブロッカーを記録します。
編集失敗時のリカバリー: Edit ツール呼び出しが失敗した場合: (1) read_file で現在の内容を取得し、正確な文字列で再試行します。(2) より小さく、より一意な old_string を試します。(3) 3 回失敗した後、Write に切り替えます。厳格な上限: 変更ごとに Edit の再試行は最大 3 回。
ステップ 4: リグレッションテストの作成(必須)
- パターンと命名規則について
references/regression-test-patterns.mdを読み取ります。 - 次のテストを作成します:
- 元のバグシナリオをシミュレートする(修正を元に戻すと失敗する必要があります)。
- 修正を適用した状態で正しい動作を検証する。
- 少なくとも 1 つの関連するエッジケースをカバーする。
- リファレンスに記載されているとおり、バグの性質に基づいてテストタイプ(ユニット / 統合 / E2E)を選択します。
ステップ 5: MCP 検証(該当する場合は必須)
do-shared/references/do-mcp-discovery-instructions.mdにある MCP ディスカバリー手順を実行します。- UI に影響するバグの場合(かつ
browser-testingMCP が利用可能な場合): Bash でmkdir -p ./prds/prd-[feature-slug]/qa-screenshotsを実行し、その後ナビゲートして修正フローを再現し、filename: prds/prd-[feature-slug]/qa-screenshots/fix-[BUG-XX]-[slug].pngを使用してスクリーンショットの証拠を取得します。 - バックエンドに影響するバグの場合(かつバックエンド対応の MCP が利用可能な場合): MCP ツールを介してエンドツーエンドで検証します。
- 関連する MCP が利用できない場合: バグファイルの
## Resoluçãoセクション(ステップ 7)に検証のギャップを記録し、ユニット / 統合テストのみに依存します。
ステップ 6: 最終テスト実行(必須ゲート)
- 検出されたパッケージマネージャーを使用して、すべてのプロジェクトテストを実行します(例:
npm test)。 typecheckスクリプトが存在する場合、実行します。- すべてが合格することを確認します。いずれかのテストが失敗した場合、修正は完了していません。
ステップ 7: バグファイルの更新(必須)
- バグファイルの frontmatter
statusを更新します:- 修正済み:
corrigido - ブロック中:
não-resolvido
- 修正済み:
- 修正済みの場合、
## Resoluçãoセクションを追記し、correção aplicada と testes de regressão criados を記載します。 - 未解決の場合、
## Bloqueioセクションを追記し、修正を妨げたものを記述します。
ステップ 8: 結果の報告(必須)
TaskUpdateが利用可能な場合、内部タスクをcompletedとしてマークします。- コンプライアンスチェック: バグファイルに対して
read_fileを呼び出し、statusが更新されたことを確認します。 - ユーザーに通知します: バグが修正された(またはブロックされた)こと、テストが合格していること、および作成されたリグレッションテスト。
qa-bugs/に他のabertoバグが残っている場合、それらをリストアップし、ユーザーが次のバグに対してスキルを再度呼び出せるようにします。
出力言語
生成されるすべての成果物(バグファイルの更新、解決 / ブロックのセクション)は、ブラジルポルトガル語(PT-BR)で記述する必要があります。コード例、変数名、ファイルパスのみ英語のままです。
エラー処理
- ファイルパスが指定されていない場合、
qa-bugs/にあるすべてのabertoバグファイルをリストアップし、どれを修正するかユーザーに尋ねます。 - バグファイルが存在しない場合、中断して報告します。
- ステータスがすでに
corrigidoの場合、中断します: 何もすることはありません。 - バグが大幅なアーキテクチャ変更を必要とする場合、続行する前に正当性を記録します。
- 修正中に新しいバグが発見された場合、
qa-bugs/にステータスnovoの新しいバグファイルを作成します — このサイクルでは修正しないでください。 - MCP が利用できない場合、レジストリの「Se indisponivel」の処理に従い、ギャップを記録します。
- 実装が途中で失敗した場合、壊れた部分的な変更を元に戻し、コードベースがコンパイルされることを確認し、ブロッカーを報告します。
参照
- バグファイル(入力):
./prds/prd-[feature-slug]/qa-bugs/bug-[XX]-[severidade-completa]-[slug].md - 回帰テストパターン:
do-execute-qa-bugfix/references/regression-test-patterns.md - MCP Discovery:
do-shared/references/do-mcp-discovery-instructions.md - MCP Registry:
do-shared/references/do-mcp-capabilities.md - PRD:
./prds/prd-[feature-slug]/prd.md - TechSpec:
./prds/prd-[feature-slug]/techspec.md - スクリーンショット:
./prds/prd-[feature-slug]/qa-screenshots/