CawPlan Risk Assessment — A5 Release Risk Assessment
cawplan skill check
Hard Gates (MUST)
- Rules compute the level, AI writes the summary:
risk_level Use compute response as authoritative; Agent must notrecompute on its own or silently downgrade CRITICAL。
- Save requires double gate: show compute result → user confirmation →
--body-file + --dry-run → submit gate → --confirm executes save。
- Prohibitedto treat A3 execution progress,
cawplan-plan-track schedule of risk/risk_reason as A5 conclusion;Prohibitedto claim this conclusion is equivalent to the Release Readiness of the A8 Ticket Report.
Allowedto call versions track / tickets search / execution failures asread-only context enrichment, must be marked "not involved in rule computation".
- Prohibited
cawplan api, direct connection to TestRail, A1/A2/A4/A8 write operations.
- User display: friendly field names;
product_id/version_id/UUID hidden by default; Agent's own AskUserQuestion(not written into allowed-tools)。
Reference loading (MUST)
| Timing |
Read |
Prohibited |
| Opening |
None |
One-time Read of all references |
| Parse context / compute / enrichment / interpret reasons |
compute-rules.md |
— |
| Output template / enrichment table / runs appendix |
ux.md |
together with save-rules.md Read |
| Save / override / handoff to A4·A7 |
save-rules.md |
— |
Allowed commands
| Step |
Command |
| Auxiliary |
products list、versions list |
| Read-only enrichment (Step 4b) |
versions track <product_id> <version_id> |
| Read-only enrichment (Step 4b) |
tickets search --unique_ids <id1,id2,...>(Not required --time_range) |
| Read-only enrichment (Step 4b) |
qa-insights testrail execution failures <product_id> <version_id> [--run-id] [--limit] |
| Threshold (optional) |
qa-insights risk-rules get <product_id> |
| History |
qa-insights risk-assessment get <product_id> <version_id> |
| Compute |
qa-insights risk-assessment compute <product_id> <version_id> [--ticket-id] [--plan-mapping-ids] [--no-refresh-execution] |
| Save |
qa-insights risk-assessment save <product_id> <version_id> --body-file <path> [--dry-run] --confirm |
Workflow
| Step |
Action |
Detail |
| 0 |
Parse product / version; optional ticket_id |
compute-rules.md §0 |
| 1 |
Intent triage: history only vs recompute vs save |
compute-rules.md §Intent |
| 2 |
Optional risk-rules get(user asks about threshold or HIGH reason) |
compute-rules.md §Rules |
| 3 |
Optional risk-assessment get(history only and recompute not requested) |
compute-rules.md §Get |
| 4 |
risk-assessment compute(refreshes execution data by default) |
compute-rules.md §Compute |
| 4b |
Read-only enrichment (after compute or get; conditionally triggered by reason; can be parallel) |
compute-rules.md §Enrich · ux.md §Enrich |
| 5 |
Agent interpretation: summary + layered report;do not modify risk_level |
ux.md §Output |
| 6 |
Save decision gate (stop if user did not request save) |
save-rules.md §Prompts |
| 7 |
Assemble body-file → --dry-run → submit gate → --confirm |
save-rules.md §Save |
| 8 |
Save result + one handoff sentence at the end (A4/A7) |
save-rules.md §Handoff |
User explicitly says "only the last conclusion / no recompute" → skip Step 4, go Step 3 → 4b → 5。
User explicitly says "save" but no compute in this session → first Step 4 or confirm to reuse get record then save。
Output summary
Not saved: risk level + release/completeness context + coverage priority metrics + enrichment detail table + recommended actions + whether-to-save question.
Saved: append saved_at、saved_by、note、ai_summary。
Template see ux.md §Output、save-rules.md §Saved。
References
- compute-rules.md — context, compute/get, interpretation of level and reasons, enrichment triggering
- ux.md — Report template, enrichment table, runs appendix, recommended actions display
- save-rules.md — Save body, override, confirmation gate, A4/A7 connection