wasm-mcp 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -16,6 +16,25 @@ PATCH releases are noted here briefly; the pinned SHAs live in
16
16
  [`vendor/PINNED.txt`](vendor/PINNED.txt) and are reported by the
17
17
  `spec_version` tool.
18
18
 
19
+ ## 0.2.0
20
+
21
+ ### Added
22
+
23
+ - `instruction_get` now returns per-instruction **trap conditions**: a
24
+ `traps` array (each `{ condition, name }`, with the spec's canonical
25
+ trap name) plus a `can_trap` boolean. Empty for instructions that
26
+ never trap (e.g. `i32.add`). Covers the finite trapping set —
27
+ integer `div`/`rem`, non-saturating float→int `trunc` (not
28
+ `trunc_sat`), memory loads/stores + bulk ops, table ops,
29
+ `call_indirect`, `unreachable`, and the single-condition reference
30
+ instructions. Derived at build time from the pinned spec; trap names
31
+ verified against the spec's own `test/core/*.wast` `assert_trap`
32
+ messages.
33
+ - `instruction_list` gains a `can_trap` filter, and its rows now carry
34
+ `can_trap`.
35
+
36
+ Pin unchanged.
37
+
19
38
  ## 0.1.0 — initial release
20
39
 
21
40
  ### Added
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # wasm-mcp
2
2
 
3
- Unofficial Model Context Protocol server for the
3
+ Model Context Protocol server for the
4
4
  [WebAssembly core specification](https://webassembly.github.io/spec/core/).
5
5
  SHA-pinned, read-only, deterministic — safe to host as a public
6
6
  unauthenticated endpoint.
@@ -12,8 +12,9 @@ unauthenticated endpoint.
12
12
 
13
13
  - `spec_version` — the pinned upstream commit and package version.
14
14
  - `instruction_get` — opcode bytes, category, introducing version,
15
- stack type signature, and validation + execution prose anchors /
16
- URLs, by mnemonic (`i32.add`) or binary opcode (`0x6a`).
15
+ stack type signature, validation + execution prose anchors / URLs,
16
+ and trap conditions (`traps` + `can_trap`), by mnemonic (`i32.add`)
17
+ or binary opcode (`0x6a`).
17
18
  - `instruction_list` — enumerate, filterable by category (numeric,
18
19
  vector, reference, parametric, variable, table, memory, control,
19
20
  ref, i31, struct, array, extern), introducing version, or prefix.
@@ -102,11 +103,15 @@ Maintainers:
102
103
  (OIDC) — no `NPM_TOKEN`. Configure it once on npmjs.com (wasm-mcp →
103
104
  Settings → Trusted Publisher → GitHub Actions: org `xyzzylabs`, repo
104
105
  `wasm-mcp`, workflow `release.yml`).
105
- - **Worker deploy** needs `CLOUDFLARE_API_TOKEN` + `CLOUDFLARE_ACCOUNT_ID`.
106
+ - **Worker deploy** needs `CLOUDFLARE_API_TOKEN` + `CLOUDFLARE_ACCOUNT_ID`,
107
+ stored as **environment** secrets on the `cloudflare` GitHub
108
+ Environment (not repo-wide) with a `main` + `v*` deployment rule —
109
+ see [Securing the deploy credentials](https://github.com/xyzzylabs/wasm-mcp/blob/main/docs/deployment.md#securing-the-deploy-credentials).
106
110
  - For the refresh workflow's tag push to trigger release + deploy,
107
- add a `RELEASE_TOKEN` PAT (`contents: write` + `workflows`) —
111
+ add a `WORKFLOW_PAT` PAT (`contents: write` + `workflows`) —
108
112
  without it, refresh still re-pins and tags, but you run release /
109
- deploy manually.
113
+ deploy manually. (Same secret name tc39-mcp uses, so one PAT — or an
114
+ `xyzzylabs` org secret — can serve both repos.)
110
115
 
111
116
  ## License
112
117