feat(ci): add openshift-ci-mcp MCP server to new ci-extras plugin - #557
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughIntroduces a new Changesci-extras Plugin Addition
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested labels
Suggested reviewers
🚥 Pre-merge checks | ✅ 10✅ Passed checks (10 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
f7a5d0d to
6bb1ab7
Compare
|
/assign @stbenjam |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@plugins/ci/.mcp.json`:
- Line 7: In the plugins/ci/.mcp.json file, replace the `@latest` version
specifier in the github.com/openshift-eng/openshift-ci-mcp/cmd/openshift-ci-mcp
module reference with a specific pinned version (such as v0.5.0) to ensure
reproducible and deterministic builds. This will prevent silent behavior changes
between runs caused by automatically pulling the latest version.
In `@plugins/ci/README.md`:
- Around line 238-242: The documentation section for enabling proxy tools
(ENABLE_PROXY_TOOLS=true) is missing critical information about the requirement
to restart the MCP session or server for the changes to take effect. Add a note
after the export command in the README.md file explaining that users must
restart the MCP session/server after setting the environment variable for the
proxy tools to become available.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: c11ad28e-2df0-45b1-a353-402921607269
📒 Files selected for processing (4)
.skillsaw.yamldocs/index.htmlplugins/ci/.mcp.jsonplugins/ci/README.md
|
Hey thanks for the PR! The CI plugin is in the critical path for a number of autonomous agents (and evals of them), I am a little bit concerned to enable this by default as it now provides duplicate paths for obtaining similar data. I am thinking we want to create I'd merge a new |
|
Yeah no problem, I'll add one as part of this PR |
|
@stbenjam I added the ci-extras plugin but wasn't sure if I should add it to the openshift-developer bundle. WDYT? |
There was a problem hiding this comment.
🧹 Nitpick comments (2)
plugins/ci-extras/commands/check-release-health.md (2)
17-19: 💤 Low valueAdd language specifier to fenced code block.
The synopsis code block is missing a language identifier. Specify the syntax to comply with Markdown linting standards.
Fix markdown code block syntax
## Synopsis -``` +```bash /ci-extras:check-release-health <release version></details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.In
@plugins/ci-extras/commands/check-release-health.mdaround lines 17 - 19, The
fenced code block containing the /ci-extras:check-release-health command
synopsis is missing a language identifier, which violates Markdown linting
standards. Add bash as the language specifier to the opening triple backticks
(changetobash) before the /ci-extras:check-release-health command line
to properly specify the syntax highlighting for the code block.</details> <!-- cr-comment:v1:52ec8d90218c724bd1ce31db --> --- `29-32`: _⚡ Quick win_ **Reduce repetitive sentence beginnings in implementation steps.** Four consecutive steps begin with "Fetch", reducing clarity and readability. Vary the sentence structure by combining related actions or using synonyms. <details> <summary>Refactor implementation steps for variety</summary> ```diff ## Implementation 1. Fetch release health metrics with `get_release_health` for the specified version. -2. Fetch recent payload acceptance status with `get_payload_status`. -3. Fetch recent test failures with `get_recent_test_failures`. -4. Fetch active regressions with `get_regressions`. +2. Gather payload acceptance status with `get_payload_status` and recent test failures with `get_recent_test_failures`. +3. Retrieve active regressions with `get_regressions`. 5. Synthesize the data into a brief health summary covering: ``` </details> <details> <summary>🤖 Prompt for AI Agents</summary> ``` Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@plugins/ci-extras/commands/check-release-health.md` around lines 29 - 32, The implementation steps listed in the check-release-health.md file (items 1-4) begin with repetitive "Fetch" statements, which reduces readability and clarity. Refactor these four steps to vary the sentence structure by combining related actions into fewer steps, using different verbs as synonyms for "Fetch" such as "Retrieve", "Gather", "Obtain", or "Collect", and restructuring the logical flow so that the steps feel more natural and less monotonous while preserving all the necessary information about fetching release health metrics, payload acceptance status, test failures, and regressions. ``` </details> <!-- cr-comment:v1:56f87cc095d0762fc5caf7a7 --> </blockquote></details> </blockquote></details> <details> <summary>🤖 Prompt for all review comments with AI agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.Nitpick comments:
In@plugins/ci-extras/commands/check-release-health.md:
- Around line 17-19: The fenced code block containing the
/ci-extras:check-release-health command synopsis is missing a language
identifier, which violates Markdown linting standards. Add bash as the language
specifier to the opening triple backticks (changetobash) before the
/ci-extras:check-release-health command line to properly specify the syntax
highlighting for the code block.- Around line 29-32: The implementation steps listed in the
check-release-health.md file (items 1-4) begin with repetitive "Fetch"
statements, which reduces readability and clarity. Refactor these four steps to
vary the sentence structure by combining related actions into fewer steps, using
different verbs as synonyms for "Fetch" such as "Retrieve", "Gather", "Obtain",
or "Collect", and restructuring the logical flow so that the steps feel more
natural and less monotonous while preserving all the necessary information about
fetching release health metrics, payload acceptance status, test failures, and
regressions.</details> --- <details> <summary>ℹ️ Review info</summary> <details> <summary>⚙️ Run configuration</summary> **Configuration used**: Path: .coderabbit.yaml **Review profile**: CHILL **Plan**: Enterprise **Run ID**: `338af8d8-3052-4b31-99b2-8d2e14acc4e9` </details> <details> <summary>📥 Commits</summary> Reviewing files that changed from the base of the PR and between 6bb1ab75870742a1c3ad551c0622cda536a3bc9f and 295104dc2c420f07d1abca1e6b05be4f3aab758f. </details> <details> <summary>📒 Files selected for processing (7)</summary> * `.claude-plugin/marketplace.json` * `docs/index.html` * `plugins/ci-extras/.claude-plugin/plugin.json` * `plugins/ci-extras/.mcp.json` * `plugins/ci-extras/OWNERS` * `plugins/ci-extras/README.md` * `plugins/ci-extras/commands/check-release-health.md` </details> <details> <summary>💤 Files with no reviewable changes (1)</summary> * plugins/ci-extras/.mcp.json </details> <details> <summary>✅ Files skipped from review due to trivial changes (4)</summary> * plugins/ci-extras/OWNERS * plugins/ci-extras/.claude-plugin/plugin.json * plugins/ci-extras/README.md * docs/index.html </details> </details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
821a869 to
615631c
Compare
|
/retest |
Creates a new ci-extras plugin that bundles the openshift-ci-mcp MCP server, providing direct access to OpenShift CI data APIs. Includes a check-release-health example command demonstrating use of the MCP tools. Assisted-by: Claude <noreply@anthropic.com>
615631c to
f6f8e91
Compare
|
Not yet, Thanks /lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jeff-roche, stbenjam 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 |
Summary
.mcp.jsonsippy_api,release_controller_api,search_ci_api) are opt-in viaENABLE_PROXY_TOOLS=trueAssisted-by: Claude noreply@anthropic.com
Summary by CodeRabbit
Release Notes
New Features
check-release-healthcommand for monitoring OpenShift CI release health metrics, including payload acceptance, test failures, and regression status.Documentation