Conversation
Adds the release-testing/release-evaluation Claude Code skill that automates MicroShift release evaluation (Phase 0): - Z-stream: evaluates all GA'd versions due next week, checks ART Jira, OCP availability, advisory CVEs, 90-day rule, and code changes - EC/RC: auto-discovers current EC/RC from ART Jira - nightly: detects missing MicroShift Brew builds vs OCP nightlies - Lifecycle filtering: skips EOL and EUS versions via Red Hat API - Already released check: verifies MicroShift release notes on docs.redhat.com - Parallel execution: uses Agent tool for concurrent per-version evaluation pre-commit.check-secrets: ENABLED
|
Skipping CI for Draft Pull Request. |
|
Important Review skippedAuto reviews are limited based on label configuration. 🚫 Review skipped — only excluded labels are configured. (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: agullon The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
| allowed-tools: WebFetch, Bash, mcp__jira__jira_search, mcp__jira__jira_get_issue, AskUserQuestion, Read, Grep, Agent | ||
| --- | ||
|
|
||
| # release-testing/release-evaluation |
There was a problem hiding this comment.
We are using : as a separator, i.e. /release-testing:evaluation
| --- | ||
| name: Release Evaluation | ||
| argument-hint: <Z|X|Y|RC|EC|nightly> [version] | ||
| description: Check OCP release schedule, verify availability, evaluate z-stream need, or check nightly build gaps |
There was a problem hiding this comment.
I think it's too much for a single command. I would split it into smaller commands and call them from each other.
| 3. Fetch OCP release calendar via WebFetch: | ||
| ``` | ||
| https://app.smartsheet.com/b/publish?EQBCT=970c5ff6c67a4ca7a153e3a6ef993e77 | ||
| ``` |
There was a problem hiding this comment.
Can you verify if this does not grant write access ?
| ## Description | ||
| Checks the OCP release schedule, verifies OCP release availability, and for z-streams evaluates whether MicroShift should participate. Also detects missing MicroShift nightly builds. This is Phase 0 of the MicroShift Release Testing process. | ||
|
|
||
| Reference: `.claude/config/release-phases.yaml` (phase: release_evaluation) |
| Use the `Agent` tool to run independent work concurrently. Key parallel patterns: | ||
|
|
||
| - **Step 1b + Step 2**: Lifecycle API, ART Jira query, and Smartsheet calendar fetch all run simultaneously | ||
| - **Z-stream (multiple versions)**: After Step 2 returns the version list, launch one Agent per version that performs Steps 3+4a+4b+4c+4e in parallel. The main agent waits for all sub-agents, then synthesizes Step 5. |
There was a problem hiding this comment.
can we use the existing script to do the job here ? i mean the advisory_publication_script.sh ?
| ``` | ||
| Usage: /release-testing/release-evaluation <Z|X|Y|RC|EC|nightly> [version] [--format short|full] | ||
| Examples: | ||
| /release-testing/release-evaluation Z |
There was a problem hiding this comment.
command could be changed to /microshift-release-evaulation and based on the version passed we could determine if it is for z/nightly/ec or rc ?
| **Goal**: Determine which MicroShift versions are still under support and which are End of Life (EOL). | ||
|
|
||
| **Actions**: | ||
| 1. Fetch the MicroShift product lifecycle via WebFetch: |
There was a problem hiding this comment.
Here as well, can we replace this with scripts instead ? scripts execute with out loading their contents into context - only the output consumes tokens, keeping context efficient.
| - For `X`/`Y`/`RC`/`EC` with a specific version: | ||
| - JQL: `project = ART AND summary ~ "Release X.Y.Z" AND status = "In Progress" ORDER BY duedate ASC` | ||
| 2. Filter results: | ||
| - Extract version from summary (format: "Release X.Y.Z [YYYY-Mon-DD]"). |
There was a problem hiding this comment.
should this be MM for consistency ?
|
|
||
| **Goal**: Confirm OCP releases are actually built before starting MicroShift testing. | ||
|
|
||
| **Parallelism**: For `Z` with multiple versions: launch one Agent per version simultaneously to check OCP payload availability. Collect all results before proceeding to Step 4. |
There was a problem hiding this comment.
Do we need to do this ? If no OCP payload , advisory publication script itself will throw you errors right ?
|
|
||
| 1. Fetch the last released MicroShift version for this major.minor from the Red Hat errata search via WebFetch: | ||
| ``` | ||
| https://access.redhat.com/errata-search/?q=Red+Hat+build+of+MicroShift&p=1&sort=portal_publication_date+desc&rows=10 |
There was a problem hiding this comment.
does rows=10 is sufficient here also this was listing releases other than microshift too
| ``` | ||
| 4.21.7 → ALREADY RELEASED (MicroShift errata published) | ||
| 4.21.8 [ART-14785 | 2026-03-31 | OCP: Accepted] → SKIP (8d since 4.21.7, 4 NO-ISSUE commits, no CVEs) | ||
| 4.19.27 [ART-14782 | 2026-04-01 | OCP: Accepted] → RELEASE (CVE-2026-XXXXX via RHBA-2026:XXXX) |
There was a problem hiding this comment.
CVE-via RHBA ? what is this about ?
| will still report schedule and availability, but skip the CVE analysis | ||
| - For 4.20+ releases, the advisory_publication_report.sh should be run from the release-4.19 | ||
| branch; the command will warn if running from a different branch | ||
| - MicroShift GA'd versions start at 4.14; versions before 4.14 are not evaluated |
Adds the release-testing/release-evaluation Claude Code skill that automates MicroShift release evaluation (Phase 0):
pre-commit.check-secrets: ENABLED