Skip to content

OCPMCP-437: openshift-mcp-server: establish CI pass gates - #82846

Merged
openshift-merge-bot[bot] merged 3 commits into
openshift:mainfrom
grokspawn:vertex-pass-gates
Aug 14, 2026
Merged

OCPMCP-437: openshift-mcp-server: establish CI pass gates#82846
openshift-merge-bot[bot] merged 3 commits into
openshift:mainfrom
grokspawn:vertex-pass-gates

Conversation

@grokspawn

@grokspawn grokspawn commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

build off #81118 and establish 80% pass gates for the jobs

Summary by CodeRabbit

The OpenShift MCP server CI now enforces 80% task and assertion pass-rate gates for Google and Anthropic MCP checker evaluations. The evaluation step exports MCP_EVAL_KUBECONFIG and uses the repository Makefile to start and validate the MCP server.

@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Note

Reviews paused

It 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 reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

The MCP evaluation configuration sets task and assertion pass-rate thresholds to 0.8 for Google and Anthropic tests. The evaluation command exports MCP_EVAL_KUBECONFIG and delegates MCP server startup to make run-server.

Changes

MCP evaluation

Layer / File(s) Summary
Evaluation pass-rate thresholds
ci-operator/config/openshift/openshift-mcp-server/openshift-openshift-mcp-server-main.yaml
The Google and Anthropic tests set task and assertion pass-rate thresholds to 0.8.
Evaluation server startup
ci-operator/step-registry/openshift/mcp-server/mcpchecker-eval/openshift-mcp-server-mcpchecker-eval-commands.sh
The evaluation step exports MCP_EVAL_KUBECONFIG from KUBECONFIG and uses make run-server TOOLSETS="${TOOLSETS}" for MCP server startup.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: dlom, 2uasimojo, cajieh

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: establishing CI pass-rate gates for the MCP checker evaluation jobs.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed The diff changes only CI YAML and shell orchestration; it adds no Ginkgo test titles or dynamic values to test names.
Test Structure And Quality ✅ Passed The PR diff contains only one CI YAML file and one shell orchestration file; it adds no Ginkgo test code, assertions, fixtures, cleanup, or waits for this check to assess.
Microshift Test Compatibility ✅ Passed The full diff changes only CI YAML and an MCP checker shell script; it adds or modifies no Ginkgo e2e tests, so MicroShift test compatibility is not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed The aggregate diff changes only CI YAML and a shell runner; it adds no Go, Ginkgo, or e2e test files and introduces no multi-node test assumptions.
Topology-Aware Scheduling Compatibility ✅ Passed The diff changes CI pass-rate variables and local MCP evaluation startup only; it adds no deployment, controller, replica, affinity, topology spread, node selector, toleration, or PDB scheduling co...
Ote Binary Stdout Contract ✅ Passed The PR changes only CI YAML and shell; it adds no Go process-level code, OTE entrypoint, or openshift-tests execution path.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The two-commit diff changes CI environment gates and server startup only; it adds no Ginkgo e2e tests, IPv4 assumptions, or new external connectivity requirements.
No-Weak-Crypto ✅ Passed The PR diff adds only pass-rate variables, MCP_EVAL_KUBECONFIG, and make run-server; targeted searches found no weak-crypto identifiers or secret comparisons.
Container-Privileges ✅ Passed The base-to-HEAD diff adds only pass-rate variables, MCP_EVAL_KUBECONFIG, and make run-server; it introduces no privileged, host namespace, SYS_ADMIN, escalation, or root settings.
No-Sensitive-Data-In-Logs ✅ Passed The PR adds only pass-rate values and a kubeconfig path; it introduces no sensitive logging and removes the prior failure-time server-log dump.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@openshift-ci
openshift-ci Bot requested review from 2uasimojo and dlom August 3, 2026 20:30
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: pj-rehearse could not automatically process this event because the request waited in queue for longer than 5 minutes. Use /pj-rehearse to trigger rehearsals manually.

@dlom

dlom commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Aug 3, 2026
@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-anthropic
/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-google

@grokspawn grokspawn changed the title establish pass gates openshift-mcp-server: establish CI pass gates Aug 4, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: your /pj-rehearse request was not processed because the request waited in queue for longer than 5 minutes. Please retry in a few minutes.

@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-anthropic
/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-google

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: requesting more than one rehearsal in one comment is not supported. If you would like to rehearse multiple specific jobs, please separate the job names by a space in a single command.

@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-google

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@grokspawn

Copy link
Copy Markdown
Contributor Author

rehearsals failed as desired. Now to fix the service account mapping for higher privilege.
/hold

@openshift-ci openshift-ci Bot added do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. and removed lgtm Indicates that a PR is ready to be merged. labels Aug 10, 2026
@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-google

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@grokspawn grokspawn changed the title openshift-mcp-server: establish CI pass gates OCPMCP-437: openshift-mcp-server: establish CI pass gates Aug 12, 2026
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Aug 12, 2026
@openshift-ci-robot

openshift-ci-robot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

@grokspawn: This pull request references OCPMCP-437 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

build off #81118 and establish 80% pass gates for the jobs

Summary by CodeRabbit

The OpenShift CI configuration now enforces 80% task and assertion pass-rate gates for the Google and Anthropic MCP checker evaluation tests. The evaluation setup also exports MCP_EVAL_KUBECONFIG to identify the configured service account.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 12, 2026
@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 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
`@ci-operator/step-registry/openshift/mcp-server/mcpchecker-eval/openshift-mcp-server-mcpchecker-eval-commands.sh`:
- Line 29: Update the server startup command near make run-server in the
evaluation script to use an existing openshift-mcp-server startup target, or
define run-server with readiness handling before invoking make run-evals. Ensure
server startup succeeds and is ready before evaluations run.
🪄 Autofix

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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: a27cc22c-0283-4f87-beb1-1bc3ed830dca

📥 Commits

Reviewing files that changed from the base of the PR and between c53b104 and f3048c1.

📒 Files selected for processing (2)
  • ci-operator/config/openshift/openshift-mcp-server/openshift-openshift-mcp-server-main.yaml
  • ci-operator/step-registry/openshift/mcp-server/mcpchecker-eval/openshift-mcp-server-mcpchecker-eval-commands.sh
🚧 Files skipped from review as they are similar to previous changes (1)
  • ci-operator/config/openshift/openshift-mcp-server/openshift-openshift-mcp-server-main.yaml

@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-anthropic

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-ci openshift-ci Bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 13, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn, pj-rehearse: unable to determine affected jobs. This could be due to a branch that needs to be rebased. ERROR:

couldn't prepare candidate: couldn't rebase candidate onto 59e573ae8c0ee89ff9992e821c64bc399b269db2 due to conflicts
Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

Signed-off-by: grokspawn <jordan@nimblewidget.com>
Signed-off-by: grokspawn <jordan@nimblewidget.com>
@openshift-ci openshift-ci Bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 13, 2026
Signed-off-by: grokspawn <jordan@nimblewidget.com>
@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-google

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@grokspawn: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
pull-ci-openshift-openshift-mcp-server-release-5.0-mcpchecker-eval-google openshift/openshift-mcp-server presubmit Ci-operator config changed
pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-anthropic openshift/openshift-mcp-server presubmit Ci-operator config changed
pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-google openshift/openshift-mcp-server presubmit Ci-operator config changed
pull-ci-openshift-openshift-mcp-server-release-4.23-mcpchecker-eval-google openshift/openshift-mcp-server presubmit Ci-operator config changed
pull-ci-openshift-openshift-mcp-server-release-5.1-mcpchecker-eval-google openshift/openshift-mcp-server presubmit Ci-operator config changed
pull-ci-openshift-openshift-mcp-server-release-0.5-mcpchecker-eval-google openshift/openshift-mcp-server presubmit Ci-operator config changed
pull-ci-openshift-openshift-mcp-server-release-5.1-mcpchecker-eval-anthropic openshift/openshift-mcp-server presubmit Registry content changed
pull-ci-openshift-openshift-mcp-server-release-5.0-mcpchecker-eval-anthropic openshift/openshift-mcp-server presubmit Registry content changed
pull-ci-openshift-openshift-mcp-server-release-4.23-mcpchecker-eval-anthropic openshift/openshift-mcp-server presubmit Registry content changed
pull-ci-openshift-openshift-mcp-server-release-0.5-mcpchecker-eval-anthropic openshift/openshift-mcp-server presubmit Registry content changed
periodic-ci-openshift-openshift-mcp-server-release-0.5-periodic-mcpchecker-eval N/A periodic Registry content changed
Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-google

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@grokspawn

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-anthropic

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@grokspawn

Copy link
Copy Markdown
Contributor Author

/hold cancel
google zone + env tools issues resolved with upstream changes. We can iterate to see if there are additional scenarios we want to improve.

@openshift-ci openshift-ci Bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 14, 2026
@dlom

dlom commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Aug 14, 2026
@openshift-ci

openshift-ci Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: dlom, grokspawn

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@grokspawn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Aug 14, 2026
@openshift-ci

openshift-ci Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

@grokspawn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/rehearse/openshift/openshift-mcp-server/main/mcpchecker-eval-anthropic 4444a63 link unknown /pj-rehearse pull-ci-openshift-openshift-mcp-server-main-mcpchecker-eval-anthropic

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@openshift-merge-bot
openshift-merge-bot Bot merged commit 04b4808 into openshift:main Aug 14, 2026
17 of 18 checks passed
@grokspawn
grokspawn deleted the vertex-pass-gates branch August 17, 2026 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. rehearsals-ack Signifies that rehearsal jobs have been acknowledged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants