Skip to content

Make npm the default install path, and actually test the published artifact - #3

Merged
GChief117 merged 1 commit into
mainfrom
npm-primary
Sep 16, 2026
Merged

GChief117 merged 1 commit into
mainfrom
npm-primary

Conversation

@GChief117

Copy link
Copy Markdown
Contributor

0.1.1 is live on npm, so the installation notice and release-tarball detour come out.

The bug this surfaced

The walkthrough ran npx --yes <package>. npx resolves a local package first. Run from inside this repository, whose package.json declares this very bin, npx tried the working tree and failed with command not found. The README tells you to run it from the clone, so that was the normal case, and it silently defeated the one property the walkthrough exists to guarantee.

It now installs the spec into a throwaway prefix and runs that binary directly.

Verified against the published npm artifact

=== 2. Install and start the published MCP server ===
spec: @api-disk-integrations/agent-mandate-mcp@0.1.1
server: agent-mandate-verifier 0.1.1
decision: requires_approval
  violation: Actions above 25000 minor units need a human approval token.
=== 4. Tamper with one signed field, keep the signature ===
rejected: Agent Mandate error 400/invalid_request.
Walkthrough PASSED.

The 0.1.0 pin warning stays; that version is still on the registry with the first-use defect.

🤖 Generated with Claude Code

…he default

0.1.1 is on the registry, so the installation notice and the release-tarball
detour come out and npx becomes the documented path again.

The walkthrough had a real bug that only appeared once npm was the spec. It ran
`npx --yes <package>`, and npx resolves a LOCAL package first. Run from inside
this repository, whose package.json declares this very bin, npx tried the working
tree and died with "command not found". The README tells you to run it from the
clone, so that was the normal case, and it silently defeated the one property the
walkthrough exists to guarantee: that it exercises what a developer installs.

It now installs the spec into a throwaway prefix and runs that binary directly.
The guarantee is real rather than dependent on npx's resolution order.

Verified against the published npm artifact from inside the clone: server reports
0.1.1, untampered returns requires_approval with the correct violation, tampered
is rejected.

The 0.1.0 pin warning stays. That version is still on the registry and still has
the first-use defect.
@GChief117
GChief117 merged commit 535b166 into main Sep 16, 2026
1 check passed
@GChief117
GChief117 deleted the npm-primary branch September 16, 2026 03:59
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