Skip to content

CI does not run the mcp-server test suite #70

Description

@twistedmelonman

mcp-server/ has 122 vitest tests. No workflow runs them.

.github/workflows/validate.yml runs scripts/validate_skill.py and the Python structural tests. No workflow installs Node or runs npm test, so the TypeScript suite has only ever run on a developer machine.

Surfaced while answering a review finding on #68, which suggested confirming that "CI runners reference a supported Node version." There is no CI runner to check, because nothing in CI touches Node.

Why it matters now

The bridge shells out to the Claude Code CLI and parses its output. #68 just moved it across two major versions (vitest 2 to 3, vite 5 to 7) and the only evidence it still works is that someone ran the suite by hand and pasted the result. That worked, but it is not a control.

What it would take

A test-mcp-server job in validate.yml: actions/setup-node pinned to a version satisfying engines (^20.19.0 || >=22.12.0), npm ci --prefix mcp-server, then npm test --prefix mcp-server and npm run build --prefix mcp-server.

Two details worth getting right:

  • Gate it on mcp-server/** changes so it does not run on skill-only edits, which are most commits in this repo.
  • unittest exits 0 on "Ran 0 tests" and the Python step already guards against that (see the set -eo pipefail block added in feat!: run two rule sets per invocation and record the comparison (1.0.0) #67). Check whether vitest run has the same hazard before trusting a green result.

Not urgent

The suite passes today and the bridge is versioned independently of the skill. This is about making that provable on every change rather than on the days someone remembers to run it.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions