Skip to content

TRT-2893: Add mcpchecker JUnit suite to Sippy allowlist - #3864

Open
cajieh wants to merge 1 commit into
openshift:mainfrom
cajieh:OCPMCP-308-eval-sippy-dashboard
Open

TRT-2893: Add mcpchecker JUnit suite to Sippy allowlist#3864
cajieh wants to merge 1 commit into
openshift:mainfrom
cajieh:OCPMCP-308-eval-sippy-dashboard

Conversation

@cajieh

@cajieh cajieh commented Aug 3, 2026

Copy link
Copy Markdown

Summary

  • Allowlists the mcpchecker JUnit suite name in pkg/db/suites.go so Sippy can ingest task pass/fail from mcpchecker Prow jobs (OCPMCP-308 / OCPMCP-108).
  • Adds unit tests for IsSuiteImportable (mcpchecker, known suite, unknown suite).
  • Adds plan doc docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md (approach, test plan, migration note, dependencies on the release feeder job).

Test plan

  • go test ./pkg/db/ -run TestIsSuiteImportable passes
  • make test passes
  • Suite name mcpchecker matches mcpchecker JUnit output and is allowlisted

🤖 Co-author with Claude Code and Cursor.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: automatic mode

@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

Sippy now allows mcpchecker JUnit results for import. Tests cover known and unknown suite names. A spike plan documents ingestion scope, unsupported dashboard capabilities, companion configuration work, and local validation commands.

Changes

mcpchecker import support

Layer / File(s) Summary
Suite allowlist and validation
pkg/db/suites.go, pkg/db/suites_test.go
The suite allowlist accepts mcpchecker. Tests verify mcpchecker and openshift-tests remain accepted, while unknown suite names are rejected.
Spike scope and validation
docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md
The spike plan documents import behavior, unsupported dashboard capabilities, companion configuration work, backward compatibility, and local validation commands.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Suggested reviewers: dgoodwin, sosiouxme

🚥 Pre-merge checks | ✅ 21
✅ Passed checks (21 passed)
Check name Status Explanation
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.
Go Error Handling ✅ Passed The Go diff only adds the mcpchecker allowlist entry and boolean tests; it adds no ignored errors, panic calls, pointer dereferences, or new error paths.
Sql Injection Prevention ✅ Passed The PR only adds a static suite name, documentation, and tests; existing suite-name lookups use GORM '?' placeholders, with no new SQL construction or interpolation.
Excessive Css In React Should Use Styles ✅ Passed The PR changes only two Go files and one Markdown plan; it adds no React components, JSX, or inline CSS objects.
Test Coverage For New Features ✅ Passed The new allowlist entry is covered by TestIsSuiteImportableMcpchecker, and TestIsSuiteImportableKnownAndUnknown preserves known-suite and rejection behavior.
Single Responsibility And Clear Naming ✅ Passed The change adds one clear suite name and focused tests named TestIsSuiteImportableMcpchecker and TestIsSuiteImportableKnownAndUnknown; it adds no packages, structs, or broad methods.
Feature Documentation ✅ Passed The PR adds a focused spike plan for mcpchecker import, including data flow, scope, compatibility, dependencies, and validation; no existing docs/features document this suite allowlist.
Stable And Deterministic Test Names ✅ Passed The PR adds only standard Go tests with static names; it adds no Ginkgo It/Describe/Context/When titles and no dynamic test-title values.
Test Structure And Quality ✅ Passed The changed tests are standard Go tests, not Ginkgo tests. They create no cluster resources, use no waits, and include meaningful t.Fatal/t.Errorf messages.
Microshift Test Compatibility ✅ Passed The pull request adds only plain Go unit tests for suite allowlisting and a document; it adds no Ginkgo e2e tests or MicroShift-incompatible API usage.
Single Node Openshift (Sno) Test Compatibility ✅ Passed The PR adds only standard Go unit tests and an allowlist entry; it adds no Ginkgo e2e tests or multi-node assumptions, so the SNO check is not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed The commit changes only a Go suite allowlist, unit tests, and a plan document. It adds no deployment manifests, operators, controllers, or scheduling constraints.
Ote Binary Stdout Contract ✅ Passed The PR adds only an allowlist entry, unit tests, and documentation; changed Go files contain no OTE/Ginkgo process-level code or stdout writes.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The PR adds only standard Go unit tests and an allowlist entry; no new Ginkgo e2e tests, IPv4 assumptions, or external connectivity requirements are present.
No-Weak-Crypto ✅ Passed The PR patch adds only an allowlist entry, tests, and documentation; it contains no weak-crypto APIs, custom cryptography, or non-constant-time secret comparisons.
Container-Privileges ✅ Passed The PR changes only a Markdown plan and Go allowlist/tests. No container or Kubernetes manifest changes contain privileged, host namespace, SYS_ADMIN, root, or allowPrivilegeEscalation settings.
No-Sensitive-Data-In-Logs ✅ Passed The PR adds an allowlist entry, tests, and documentation only. It adds no logging and exposes no passwords, tokens, API keys, PII, session IDs, or customer data.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes adding the mcpchecker JUnit suite to Sippy's allowlist, which is the main change.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@openshift-ci
openshift-ci Bot requested review from dgoodwin and sosiouxme August 3, 2026 17:02
@cajieh cajieh changed the title Add mcpchecker JUnit suite to Sippy allowlist for OCPMCP-308 [WIP} OCPMCP-308: Add mcpchecker JUnit suite to Sippy allowlist Aug 3, 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 3, 2026
@openshift-ci-robot

openshift-ci-robot commented Aug 3, 2026

Copy link
Copy Markdown

@cajieh: This pull request references OCPMCP-308 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 epic to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

  • Allowlists the mcpchecker JUnit suite name in pkg/db/suites.go so Sippy can ingest task pass/fail results from mcpchecker Prow jobs (OCPMCP-108).
  • Adds unit tests to verify the mcpchecker suite is importable.
  • Includes a spike plan doc (docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md) documenting scope, what this change does and does not cover, and companion work needed for the full eval dashboard.

Test plan

  • go test ./pkg/db/ -run TestIsSuiteImportable passes
  • make test passes
  • Verify mcpchecker JUnit XML (with testsuite name="mcpchecker") would be accepted by the suite allowlist

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features

  • Added support for importing mcpchecker test results into Sippy.

  • Documented expected result-import behavior, validation steps, and scope for future evaluation dashboard work.

  • Tests

  • Added coverage confirming supported and unknown test suite names are handled correctly.

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.

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 3, 2026
@cajieh cajieh changed the title [WIP} OCPMCP-308: Add mcpchecker JUnit suite to Sippy allowlist [WIP] OCPMCP-308: Add mcpchecker JUnit suite to Sippy allowlist Aug 3, 2026
@openshift-ci openshift-ci Bot added the ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review label Aug 3, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e

@cajieh cajieh changed the title [WIP] OCPMCP-308: Add mcpchecker JUnit suite to Sippy allowlist OCPMCP-308: Add mcpchecker JUnit suite to Sippy allowlist Aug 5, 2026
@openshift-ci openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 5, 2026
@cajieh
cajieh force-pushed the OCPMCP-308-eval-sippy-dashboard branch from a92b534 to 221ce16 Compare August 5, 2026 14:25
@coderabbitai

coderabbitai Bot commented Aug 5, 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: 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 `@docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md`:
- Around line 46-49: Update the comments around the validation commands in the
plan: state that TestIsSuiteImportable verifies the suite allowlist, and that
the mcpchecker command produces the JUnit artifact Sippy will ingest. Keep the
comments minimal and focused on purpose rather than command behavior.
- Around line 37-39: Update the OCPMCP-108 command examples to use one explicit
results file with the complete mcpchecker result convert junit command; revise
the line 50 glob example so it does not imply multiple positional results files
and includes the required convert subcommand, marking any remaining ellipsis as
pseudocode if needed.
🪄 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: Enterprise

Run ID: 77bfacb7-53fc-42a2-afc5-71d792d76742

📥 Commits

Reviewing files that changed from the base of the PR and between 602e7eb and 221ce16.

📒 Files selected for processing (3)
  • docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md
  • pkg/db/suites.go
  • pkg/db/suites_test.go
🚧 Files skipped from review as they are similar to previous changes (2)
  • pkg/db/suites.go
  • pkg/db/suites_test.go

Comment thread docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md Outdated
Comment thread docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md Outdated
@cajieh
cajieh force-pushed the OCPMCP-308-eval-sippy-dashboard branch from 221ce16 to 183277f Compare August 5, 2026 14:31
@coderabbitai

coderabbitai Bot commented Aug 5, 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 `@docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md`:
- Line 35: Update the wording in the step beginning “After the periodic exists”
to explicitly say “After the periodic job exists” or “After the periodic job is
added,” preserving the intended sequence.
🪄 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: Enterprise

Run ID: 8314c981-2453-4ee1-9618-eef0d2ae3a3f

📥 Commits

Reviewing files that changed from the base of the PR and between 602e7eb and 183277f.

📒 Files selected for processing (3)
  • docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md
  • pkg/db/suites.go
  • pkg/db/suites_test.go
🚧 Files skipped from review as they are similar to previous changes (2)
  • pkg/db/suites.go
  • pkg/db/suites_test.go

Comment thread docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md Outdated
@cajieh
cajieh force-pushed the OCPMCP-308-eval-sippy-dashboard branch from 183277f to f921cff Compare August 5, 2026 14:41
@coderabbitai

coderabbitai Bot commented Aug 5, 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 `@docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md`:
- Around line 45-46: Replace the em dashes in the test descriptions for
TestIsSuiteImportableMcpchecker and TestIsSuiteImportableKnownAndUnknown with
parentheses or separate sentences, preserving the existing test names and
described expectations.
🪄 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: Enterprise

Run ID: 32432f35-6e1f-47b5-918b-b8432f86f133

📥 Commits

Reviewing files that changed from the base of the PR and between 602e7eb and f921cff.

📒 Files selected for processing (3)
  • docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md
  • pkg/db/suites.go
  • pkg/db/suites_test.go
🚧 Files skipped from review as they are similar to previous changes (2)
  • pkg/db/suites_test.go
  • pkg/db/suites.go

Comment thread docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md Outdated
@cajieh
cajieh force-pushed the OCPMCP-308-eval-sippy-dashboard branch from f921cff to fdc936a Compare August 5, 2026 14:46
@coderabbitai

coderabbitai Bot commented Aug 5, 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.

Co-Authored-By: Claude <noreply@anthropic.com>
@cajieh
cajieh force-pushed the OCPMCP-308-eval-sippy-dashboard branch from fdc936a to 1be1421 Compare August 5, 2026 14:48
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e

@openshift-ci

openshift-ci Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

@cajieh: all tests passed!

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.

@grokspawn

Copy link
Copy Markdown

/lgtm

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

openshift-ci Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: cajieh, grokspawn
Once this PR has been reviewed and has the lgtm label, please assign stbenjam for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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

@cajieh cajieh changed the title OCPMCP-308: Add mcpchecker JUnit suite to Sippy allowlist TRT-2893: Add mcpchecker JUnit suite to Sippy allowlist Aug 10, 2026
@openshift-ci-robot

openshift-ci-robot commented Aug 10, 2026

Copy link
Copy Markdown

@cajieh: This pull request references TRT-2893 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:

Summary

  • Allowlists the mcpchecker JUnit suite name in pkg/db/suites.go so Sippy can ingest task pass/fail from mcpchecker Prow jobs (OCPMCP-308 / OCPMCP-108).
  • Adds unit tests for IsSuiteImportable (mcpchecker, known suite, unknown suite).
  • Adds plan doc docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md (approach, test plan, migration note, dependencies on the release feeder job).

Test plan

  • go test ./pkg/db/ -run TestIsSuiteImportable passes
  • make test passes
  • Suite name mcpchecker matches mcpchecker JUnit output and is allowlisted

🤖 Co-author with Claude Code and Cursor.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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. ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants