cawplan-ticket-report-generate について
CawPlan のチケットと実行データから QA レポートを作成するスキルです。サブツリーの処理、カバレッジ集計、本文検証、確認ゲートを含む収集から公開までの手順を定めています。
主な機能
- 01起点チケットからサブツリーを展開
- 02ticket_id に基づくレポートの POST・PUT
- 03実行サマリーの更新とカバレッジ集計
- 04コンパクトな HTML レポートの生成と検証
- 05プレビューと公開前の確認ゲート
活用シーン
- 01チケットの QA レポート作成と公開
- 02既存レポートの進捗や完了状態の更新
- 03公開前の本文とリンクの検証
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ cawcut/ skill-cawplan --skill cawplan-ticket-report-generateインストール後、Claude Code で/cawplan-ticket-report-generateを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/collect.mdhtml-example.mdpublish.mdscripts/validate_report_details.js詳細
CawPlan チケット QA レポート — A7
cawplan skill check
言語(MUST)
ユーザーの今回の主言語(中/英)で返信してください。確認ゲート、プレビュー、エラー、結果表の言語を一致させてください。同じ段落内での二言語併記は禁止です。HTML セクション見出しは返信の言語に合わせてください。同義語:進捗→PROGRESS;完了/sign-off→COMPLETION;更新/republish→PUT;公開→status=approved。
ハードゲート(MUST)
- anchor +
version_id;任意の階層/type でもブロックしません。 - DB への保存は
qa_reportPOST/PUT(publish §Upsert)のみです。DB の新規列/サーバー側 upsert は禁止です。 - Upsert:
list-versionでticket_id==anchorを検索します。0 件→POST、1 件→PUT、1 件超→停止します。 - サブツリー:anchor に対する
tickets getは1 回のみ実行し、childrenをローカルで平坦化します(depth≤3)。depth≥4 は暗黙に切り捨てます。sub_issue_count>0かつchildrenがない場合はSUBTREE_TRUNCATEDです。サブツリーの構築にtickets listを使うことは禁止です。 - 実行:scope ごとに
execution summary --refreshを直列で実行します。pass_qualityを使用してください。pass_rate/AQA は禁止です。 - coverage:
Σexecuted/Σtotalは重複排除しません。Coverage% は Test Summary にのみ記載します。Test Approach または details の本文に、coverage に関する免責事項/脚注(「注:coverage は概算値であり、Σ実行済み/Σ全テストケースで計算し、チケット間のテストケース重複排除は行っていません。」およびその英語相当文など)を記載することは禁止です。 - Labels は後回し(V2):グループ分けには
typeとpriorityのみを使用します。labels のためにtickets list/一括 get を呼び出すことは禁止です。 - Issue Summary/Verification/payload の詳細は
collect §ModeMatrix、§IssueSummary、§Bucketsを参照してください。details の読者と HTML compact についてはpublish §Audience、§HTML、html-example.mdを参照してください。Verification Status は子チケット D1–D3 のみを集計し、anchor は除外します(coverage/R1–R8 は引き続き全scope_idsを使用します)。 - Notes:
data.parentを優先します。存在しない場合はget(parent_id)を1 回実行します。 - 二重確認ゲート Step 6→7。ゲートを飛ばすことは禁止です。
- details のハード検証:Step 5 で body を組み立てた後、MUST
node scripts/validate_report_details.js --body-file …を実行します。失敗した場合は補完に戻り、Step 6 のプレビュー/Step 7 の保存は禁止です(publish §Gates·html-example.md)。 - プレビュー/保存:レポート番号とレポートチケットは必ずハイパーリンクにしてください(
publish §Links)。UUID は非表示にします。 - 最終的な Release Readiness に A5 を使用してはいけません。
- ホットリレー:同じ anchor+version で更新が要求されていない場合は
anchor_detail_cacheを再利用します。execution は再利用可能ですが、プレビューで明記してください。
Reference の読み込み(MUST)
現在の Step に対応する § のみを Read してください(## § 見出しで特定)。references 全文の Read は禁止です。
| Step | Read |
|---|---|
| 0–2 | collect §0 · §Anchor · §Subtree · §Relation |
| 3, 7–8 | publish §Upsert · §Links · §Result · §Errors |
| 4 | collect §Execution |
| 5 | collect §Feature · §IssueSummary · §Buckets · §ModeMatrix · publish §Rules · §Template · §Audience · §HTML · html-example.md |
| 6 | publish §Gates(details スクリプト検証ゲートを含む) |
許可されるコマンド
products list · versions list · config env · versions get · tickets get · tickets search --display_ids(Step 0 のみ)· qa-insights module-tree get · qa-insights requirements get · qa-insights testpoints list · api GET .../qa/requirements · qa-reports list-version|create|update · qa-insights testrail execution summary --ticket-id --refresh · tickets history(任意。collect §IssueSummary を参照)· node scripts/validate_report_details.js(Step 5→6、MUST)
禁止:tickets list、tickets relate list、TestRail への直接接続、cawplan api による保存(Requirement の読み取りを除く)、qa-insights への書き込み、A5 への書き込み、確認ゲートを暗黙に飛ばすこと。
ワークフロー
| Step | アクション | Detail |
|---|---|---|
| 0 | コンテキスト;portal_base;major_version_id | collect §0 |
| 1 | anchor に対する tickets get→children D1–D3 を平坦化、relations、parent→anchor_detail_cache | collect §Anchor · §Subtree |
| 2 | Relation 確認ゲート(キャッシュを読み取り、version をまたぐものを除外) | collect §Relation · publish §Gates |
| 3 | list-version→POST/PUT | publish §Upsert |
| 4 | execution を直列実行;coverage を集計 | collect §Execution |
| 5 | feature_name、Issue Summary、分類、R1–R8、compact HTML+payload;validate_report_details.js の検証に合格 | collect §Feature · §IssueSummary · §Buckets · §ModeMatrix · publish §Rules · §Template · §Audience · html-example.md |
| 6 | プレビュー + 本文プレビューゲート(Step 5 の検証合格が必須) | publish §Gates |
| 7 | 保存・公開ゲート → --body-file | publish §Upsert |
| 8 | 保存結果 | publish §Result |
Republish:Step 3 で一致→Step 7 で PUT。PROGRESS→COMPLETION:同じレコードを PUT し、4–7 を再実行します。
References
- collect.md
- publish.md
- html-example.md — compact な単一行 HTML の完全な例(Step 5 のレイアウト参考)