From 1be1421c3c8d8fc6975a2e5bead58e24d9af53c6 Mon Sep 17 00:00:00 2001 From: cyril-ui-developer Date: Wed, 5 Aug 2026 10:24:50 -0400 Subject: [PATCH] Add mcpchecker JUnit suite to Sippy allowlist for OCPMCP-308 Co-Authored-By: Claude --- .../ocpmcp-308-eval-dashboard-sippy-spike.md | 84 +++++++++++++++++++ pkg/db/suites.go | 1 + pkg/db/suites_test.go | 15 ++++ 3 files changed, 100 insertions(+) create mode 100644 docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md diff --git a/docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md b/docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md new file mode 100644 index 0000000000..907dc273e8 --- /dev/null +++ b/docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md @@ -0,0 +1,84 @@ +# OCPMCP-308: Allowlist mcpchecker JUnit Suite for Sippy Import + +**Date:** 2026-08-03 +**JIRA:** [OCPMCP-308](https://redhat.atlassian.net/browse/OCPMCP-308) +**Related:** [OCPMCP-108](https://redhat.atlassian.net/browse/OCPMCP-108) + +## Problem Statement + +mcpchecker Prow jobs emit JUnit with suite name `mcpchecker` (from +`mcpchecker result convert junit`). The prow loader skips suites that are not in +`pkg/db/suites.go`: + +```text +skipping suite "mcpchecker" as it's not listed for import +``` + +Without an allowlist entry, task pass/fail from those jobs never reaches +Postgres or the Sippy UI. + +## Approach + +Add `"mcpchecker"` to the static `testSuites` allowlist used by +`IsSuiteImportable`. No loader, schema, or UI changes. Once allowlisted, the +existing prowloader path imports matching JUnit testcases when the job is +loaded. + +## Implementation Plan + +| File | Changes | +|------|---------| +| `pkg/db/suites.go` | Add `"mcpchecker"` to `testSuites` | +| `pkg/db/suites_test.go` | Cover `mcpchecker` importable; known suite still accepted; unknown rejected | +| `docs/plans/ocpmcp-308-eval-dashboard-sippy-spike.md` | This plan | + +### `pkg/db/suites.go` + +```go +"prowjob-junit", +"mcpchecker", +"OLM-Catalog-Validation", +``` + +### `pkg/db/suites_test.go` + +- `TestIsSuiteImportableMcpchecker`: `IsSuiteImportable("mcpchecker") == true` +- `TestIsSuiteImportableKnownAndUnknown`: `openshift-tests` remains true; unknown false + +## Test Plan + +| Test case | Input | Expected | +|-----------|-------|----------| +| mcpchecker allowlisted | `"mcpchecker"` | `IsSuiteImportable` → true | +| known suite unchanged | `"openshift-tests"` | true | +| unknown suite rejected | `"not-a-real-suite"` | false | +| JUnit suite name | `mcpchecker result convert junit mcpchecker-out.json` | `