Skip to content

mcpx: a packaging test -- install the built artifact and check the MCP handshake #1981

Closed

Description

@dezren39

Relocated from dezren39/darwin-nix#341 on 2026-10-28 (placement audit): mcpx's single source lives in developing-today/code (pkgs/mcpx); re-home tracked at #309. Original body below; issue references inside it are historical (dezren39/nix numbering).

Test the thing users install, not the source tree: build .#mcpx, run the wrapped binary from the store path with an empty HOME, and check --version, mcpx serve over stdio (initialize and server/discover answer, tools/list works), the man page and completions, and that the wrapper's PATH reaches deno, bun, node and git. Separate from the unit and e2e tests, which run against the source.

Reference: codex-connectors-mcp's npm run test:package, which installs the real tarball into a temporary directory.

Acceptance criteria

  • A packaging test builds .#mcpx, runs the wrapped store-path binary with an empty HOME, and checks --version
  • The same test drives mcpx serve over stdio: initialize and server/discover answer, and tools/list returns the catalogue
  • Man page and completions are present in the built output and checked
  • The wrapper's PATH is verified to reach deno, bun, node, and git from inside the test
  • The test runs in CI (or a documented flake check) rather than only by hand

Activity

  1. developing-today commented on Oct 28, 2026

    @developing-today
    Contributor
  2. dezren39 commented on Oct 28, 2026

    @dezren39
    MemberAuthor

    History carried over from dezren39/darwin-nix#341 (verbatim, oldest first):


    @dezren39 · 2026-10-27T11:13:39Z

    Intake review — fleet monitor (2026-10-27)

    Still live. Unit and e2e tests still run against the source tree; nothing tests the built artifact users actually install.

    Why it matters more now: the package's provenance changed (#468 — mcpx builds from the mcpx-src input against developing-today/code), so wrapper/PATH/packaging regressions are a real and currently untested class.

    Related: #346 (parent tracker), codex-connectors-mcp's test:package as the reference shape, #343 (the nix modules — this test is their package-level safety net).

    Suggested approach: implement as a flake checks entry so CI picks it up with the existing build.

  3. added
    kind/testTest coverage, test infrastructure, or test-only fixes
    priority/normalOrdinary priority (the default)
    effort/sSmall: expected under 2 hours of work
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    queue/queuedHas a queued task in the Supabase agent queue
    on Oct 28, 2026
  4. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    app/mcpxPackage/app: mcpx (pkgs/ or apps/ in this repo)
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Oct 29, 2026
  5. 72 remaining items

  6. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked on CI (new head)

  7. added
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    status/parkedDeliberately paused with a recorded resume condition
    queue/claimedQueue worker lifecycle state
    and removed
    queue/claimedQueue worker lifecycle state
    status/parkedDeliberately paused with a recorded resume condition
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    on Oct 31, 2026
  8. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · done

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

Metadata

Metadata

Assignees

Labels

app/mcpxPackage/app: mcpx (pkgs/ or apps/ in this repo)effort/sSmall: expected under 2 hours of workkind/testTest coverage, test infrastructure, or test-only fixesmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions