Skip to content

CI: scheduled canary install-and-debug matrix across install channels and platforms #425

Description

@debugmcpdev

Motivation

Install-channel regressions surface after release, not in PR CI: v0.24.0's Docker image shipped without its CodeLLDB vendoring (fixed across 0.24.1/0.24.2 within hours), and the packaging surface is about to grow per-platform optional dependencies. PR CI builds from source on three OSes — it never exercises what a user actually runs.

Proposal

A scheduled (weekly) + manually dispatchable workflow that installs the published artifacts and runs a minimal debug cycle.

Channels: npx @debugmcp/mcp-debugger, global npm i -g, Docker (debugmcp/mcp-debugger:latest).

Runners: ubuntu-latest, ubuntu-24.04-arm, macos-latest (arm64), windows-latest; x64 macOS as runner availability allows.

Legs:

  • default install (optional deps included) → CodeLLDB resolves from the per-platform package
  • npm i -g --omit=optional + CODELLDB_PATH → the documented fallback actually works
  • Docker: a build guard asserting the image build fetches only the target-arch CodeLLDB — a regression fence for the deterministic single-platform vendoring from fix(docker): vendor only the image's platform in the builder stage #394 (e.g. log or allowlist network fetches during the vendor stage and fail on any non-target codelldb-*.vsix)

Smoke per leg: list_supported_languages, then one breakpoint → stop → variables → continue cycle in a fast interpreter (python or mock) plus one CodeLLDB-backed language to prove the native engine loads from the installed artifact.

Failures notify (auto-filed issue or workflow alert) rather than blocking PRs. The same matrix doubles as the release-verification gate: run it against a freshly published version before announcing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgithub_actionsPull requests that update GitHub Actions code

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions