Detailed implementation guide for validating proposed release blockers
Inherits all available tools
Additional assets for this skill
This skill inherits all available tools. When active, it can use any tool Claude has access to.
This skill provides detailed implementation guidance for the /jira:validate-blockers command, which helps release managers make data-driven blocker approval/rejection decisions.
This skill is invoked automatically when the /jira:validate-blockers command is executed. It provides step-by-step implementation details for:
mcp__atlassian__jira_*Parse command-line arguments:
--bug flag value (optional, for single bug validation mode)Project:
Validate inputs:
--bug nor target-version is provided, error out with message: "Error: Either target-version or --bug must be provided. Usage: /jira:validate-blockers [target-version] [component-filter] [--bug issue-key]"Determine query mode:
Single bug mode (if --bug is provided):
mcp__atlassian__jira_get_issue to fetch the single bugVersion + component mode (if both target version and component are provided):
Version only mode (if only target version provided):
Base JQL for proposed blockers:
project = OCPBUGS AND type = Bug AND "Release Blocker" = Proposed
IMPORTANT: Use "Release Blocker" = Proposed NOT cf[12319743]. The field ID customfield_12319743 is the Release Blocker field, but in JQL use the field name.
Version filter construction:
When target version is provided (e.g., "4.21"), expand to search for both X.Y and X.Y.0:
AND ("Target Version" in (4.21, 4.21.0) OR "Target Backport Versions" in (4.21, 4.21.0) OR affectedVersion in (4.21, 4.21.0))
Status exclusion filter:
Always exclude already-fixed bugs:
AND status not in (Closed, "Release Pending", Verified, ON_QA)
Component filter construction:
No component specified:
Single component:
AND component = "{COMPONENT}"
Multiple components (comma-separated):
AND component IN ({COMPONENT_LIST})
Final JQL examples:
Version only (4.21):
project = OCPBUGS AND type = Bug AND "Release Blocker" = Proposed AND ("Target Version" in (4.21, 4.21.0) OR "Target Backport Versions" in (4.21, 4.21.0) OR affectedVersion in (4.21, 4.21.0)) AND status not in (Closed, "Release Pending", Verified, ON_QA)
Version + component (4.21, "Hypershift"):
project = OCPBUGS AND type = Bug AND "Release Blocker" = Proposed AND ("Target Version" in (4.21, 4.21.0) OR "Target Backport Versions" in (4.21, 4.21.0) OR affectedVersion in (4.21, 4.21.0)) AND status not in (Closed, "Release Pending", Verified, ON_QA) AND component = "Hypershift"
Version + multiple components (4.21, "Hypershift,CVO"):
project = OCPBUGS AND type = Bug AND "Release Blocker" = Proposed AND ("Target Version" in (4.21, 4.21.0) OR "Target Backport Versions" in (4.21, 4.21.0) OR affectedVersion in (4.21, 4.21.0)) AND status not in (Closed, "Release Pending", Verified, ON_QA) AND component IN ("Hypershift", "Cluster Version Operator")
Use MCP tools to fetch proposed blockers:
For version/component mode, use mcp__atlassian__jira_search:
Parse the response to extract:
Custom fields to include:
customfield_12319743 - Release Blocker status (should be "Proposed")customfield_12319940 - Target VersionFor single bug mode (--bug flag), use mcp__atlassian__jira_get_issue:
Handle query results:
Analyze each proposed blocker using Red Hat OpenShift release blocker criteria.
Red Hat OpenShift Release Blocker Criteria:
Based on the official OpenShift blocker definition, bugs should be approved as release blockers when they meet these criteria:
Automatic/Strong Blockers (Recommend APPROVE):
Never Blockers (Recommend REJECT):
ci-fail, ci-only, test-flakeWorkaround Assessment (may affect recommendation):
An acceptable workaround must meet ALL three criteria:
If a workaround doesn't meet all three criteria, it's NOT an acceptable workaround.
For each proposed blocker:
ci-fail, ci-only, test-flakeexpand="renderedFields" to get comment textUse MCP tools:
mcp__atlassian__jira_get_issue with expand="renderedFields" to get commentsCreate comprehensive Markdown report with all blocker validation results.
Report Structure:
# 🚫 Release Blocker Validation Report
**Components**: {component list or "All"} | **Project**: OCPBUGS | **Proposed Blockers**: {count} | **Generated**: {timestamp}
## Summary
- ✅ **Recommend APPROVE**: X
- ❌ **Recommend REJECT**: Y
- ⚠️ **Needs DISCUSSION**: Z
---
## Blocker Analysis
### {BUG-KEY}: {Summary} {VERDICT}
**Recommendation**: {APPROVE/REJECT/DISCUSS} - {One-line justification}
**Criteria Matched**:
- {✅/❌} {Criterion name}
- {✅/❌} {Criterion name}
- ...
**Justification**:
{Detailed explanation of why this bug should or shouldn't be a blocker}
**Suggested Action**: {What to do next}
---
[Repeat for each proposed blocker]
---
## Next Steps
1. Review APPROVE recommendations - add to blocker list
2. Review REJECT recommendations - remove blocker status
3. Discuss unclear cases in triage meeting
Special case for single bug mode:
When --bug flag is used, adapt the report to focus on a single bug:
Invalid issue ID (single bug mode):
Invalid arguments:
No proposed blockers found:
MCP tool errors:
mcp__atlassian__jira_search fails, display JQL query and error messagemcp__atlassian__jira_get_issue fails:
https://issues.redhat.com/browse/{issue-key}Large result sets (>50 blockers):
mcp__atlassian__jira_search with appropriate limits (avoid pagination when possible)Version only (4.21):
project = OCPBUGS AND type = Bug AND "Release Blocker" = Proposed AND ("Target Version" in (4.21, 4.21.0) OR "Target Backport Versions" in (4.21, 4.21.0) OR affectedVersion in (4.21, 4.21.0)) AND status not in (Closed, "Release Pending", Verified, ON_QA)
Version + single component (4.21, "Hypershift"):
project = OCPBUGS AND type = Bug AND "Release Blocker" = Proposed AND ("Target Version" in (4.21, 4.21.0) OR "Target Backport Versions" in (4.21, 4.21.0) OR affectedVersion in (4.21, 4.21.0)) AND status not in (Closed, "Release Pending", Verified, ON_QA) AND component = "Hypershift"
Version + multiple components (4.21, multiple):
project = OCPBUGS AND type = Bug AND "Release Blocker" = Proposed AND ("Target Version" in (4.21, 4.21.0) OR "Target Backport Versions" in (4.21, 4.21.0) OR affectedVersion in (4.21, 4.21.0)) AND status not in (Closed, "Release Pending", Verified, ON_QA) AND component IN ("Hypershift", "Cluster Version Operator")
Field IDs Reference:
customfield_12319743 (use "Release Blocker" in JQL)customfield_12319940 (use "Target Version" in JQL)