Skip to content

fix(mcp): pin the launcher to a build that carries the secret policy (WALM-685) - #998

Merged
nikola0x0 merged 1 commit into
devfrom
nikolale/walm-685-move-plugin-pin-to-0-0-14-dev-6
Sep 25, 2026
Merged

nikola0x0 merged 1 commit into
devfrom
nikolale/walm-685-move-plugin-pin-to-0-0-14-dev-6

Conversation

@nikola0x0

Copy link
Copy Markdown
Collaborator

Part of WALM-685 (MW-06). Harry's review of the triage flagged this as live, so it ships on its own instead of waiting for a release.

What was wrong

The plugin pins mcpPackageVersion = 0.0.14-dev.2. That published build's dist/ has no consent.js, memory-policy.js, auto-save.js or health-probe.js. It was published before the WALM-642 merge landed.

The repo's default branch is dev, so claude plugin marketplace add MystenLabs/MemWal installs this plugin today. Every such install runs an MCP server without the WALM-642 secret filtering and consent gate, even though dev's source has both.

The fix

One line: pin 0.0.14-dev.6.

  • It's complete: 18 modules, matching src.
  • Its dist/ is byte-identical to the 0.0.14 release. The tarballs differ only in package.json's version string, while dev.2 differs from them by 570 lines. So this installs exactly the released code.

Why not pin 0.0.14 directly

The repo's own checks disagree, and only a prerelease satisfies both:

  • trusted-launcher.test.mjs requires mcpPackageVersion to be present, set to the release or a prerelease of it.
  • scripts/verify-manual-sdk-release.mjs requires it to be a prerelease, and says to drop it once the release is on npm.

0.0.14 fails the verifier; dropping the field fails the test. dev.6 passes both, and it's what npm's dev dist-tag points at, so check:mcp-pin passes with no warning. Fixing that contradiction is a separate change.

A correction to what I said on #986 and WALM-679

I wrote that MW-05's launcher fix "is not in any published build yet", which implied it needs an npm release. It doesn't. The npm package ships only dist/ and README.md, and the launcher lives in plugin/scripts/, which reaches users with the plugin from the repo. #986 takes effect for marketplace installs as soon as it merges to dev. No rc needed for it.

Verification

  • pnpm check:mcp-pin → OK: … 0.0.14-dev.6 is published and matches the "dev" dist-tag
  • scripts/verify-manual-sdk-release.mjs passes
  • launcher pinnedVersion() resolves 0.0.14-dev.6
  • MCP suite 304 pass

Still worth doing

Harry's third item: teach the release verifier to compare published dist/ against src. It only checks version strings, which is how dev.2 shipped incomplete without tripping anything.

…(WALM-685)

The plugin's `mcpPackageVersion` pinned `0.0.14-dev.2`, whose published
`dist/` has 14 modules and no `consent.js`, `memory-policy.js`,
`auto-save.js` or `health-probe.js` — it was published before the WALM-642
merge. The repository's default branch is `dev`, so `claude plugin
marketplace add MystenLabs/MemWal` installs this plugin today, and every
such install ran an MCP server without the WALM-642 secret filtering and
consent gate. That is live now, not a future-release problem (Harry).

`0.0.14-dev.6` is complete (18 modules, matching `src`), and its `dist/`
is byte-identical to the `0.0.14` release; the two tarballs differ only in
the version string in package.json. So this pin installs exactly the
released code.

Why a prerelease rather than `0.0.14` itself: the release verifier requires
the override to be a prerelease and to be dropped once the release is on
npm, while `trusted-launcher.test.mjs` requires the field to be present.
Only a prerelease satisfies both. `dev.6` does, and it is also what npm's
`dev` dist-tag points at, so `check:mcp-pin` passes without a warning.
Reconciling those two rules is left for a separate change.

Verified: check:mcp-pin OK, verify-manual-sdk-release passes, the launcher
resolves 0.0.14-dev.6, MCP suite 304 pass.

@harrymove-ctrl harrymove-ctrl left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. Bumps mcpPackageVersion to published 0.0.14-dev.6 carrying the secret policy. CI is green.

@nikola0x0
nikola0x0 merged commit 5d54c29 into dev Sep 25, 2026
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants