The weekly checksum updater (tools/checksum_updater) auto-updates only per-OS-binary tools (wasm-tools, wit-bindgen, wac, wasi-sdk, nodejs, wkg, tinygo). Every PulseEngine-owned tool is excluded and falls back to manual edits, so their pins silently drift. This issue tracks making the updater actually work for them.
Why they're excluded today
tool_config.rs only models StandardTarball / SingleBinary / Custom URL patterns keyed by per-OS platform. The PulseEngine tools are universal-wasm components with unstable, changing asset names:
| Tool |
Registry latest |
Pinned (MODULE.bazel) |
Released latest |
Note |
| loom |
0.3.0 |
0.3.0 |
v1.1.13 |
v0.3.0 is the last release shipping loom.wasm; v1.x ship only compliance reports → blocked upstream (pulseengine/loom#142) |
| wsc |
0.9.0 |
0.7.0 |
v0.9.2 |
asset renamed wsc-cli.wasm → wsc-component.wasm; now also ships per-platform CLIs. Pin lags registry |
| wasmsign2-cli |
0.2.7-rc.2 |
— |
none |
no GitHub releases (tag/CI only) |
| file-ops-component |
0.2.0 |
0.2.0 |
v0.2.0 |
current ✅ |
Concrete gaps / work
- Add a universal-wasm
UrlPattern (single wasm/wasm_component platform, url_suffix is the asset name, no per-OS mapping) and register the PulseEngine tools in ToolConfig::new() instead of the silent "fallback" comment.
- Per-release asset-existence filtering: skip a release that doesn't carry the expected asset (loom v1.x has none) instead of blindly taking
latest_version. Otherwise loom would resolve to v1.1.13 and fail.
- Surface stale pins: the updater should flag when
MODULE.bazel's version pin lags the registry's latest_version (wsc: pinned 0.7.0 vs registry 0.9.0).
- wsc pin bump 0.7.0 → 0.9.x needs a CLI-compat check of
wasm_signing / wsc_attestation wrappers before bumping (asset was renamed and per-platform CLIs added).
- Document the upgrade workflow in CONTRIBUTING (currently silent).
Found during an automated issue-hunt/version-check pass. Items 1–3 are the core "make the updater handle PulseEngine tools" work; 4 is a separate verified bump.
The weekly checksum updater (
tools/checksum_updater) auto-updates only per-OS-binary tools (wasm-tools,wit-bindgen,wac,wasi-sdk,nodejs,wkg,tinygo). Every PulseEngine-owned tool is excluded and falls back to manual edits, so their pins silently drift. This issue tracks making the updater actually work for them.Why they're excluded today
tool_config.rsonly modelsStandardTarball/SingleBinary/CustomURL patterns keyed by per-OS platform. The PulseEngine tools are universal-wasm components with unstable, changing asset names:loom.wasm; v1.x ship only compliance reports → blocked upstream (pulseengine/loom#142)wsc-cli.wasm→wsc-component.wasm; now also ships per-platform CLIs. Pin lags registryConcrete gaps / work
UrlPattern(singlewasm/wasm_componentplatform,url_suffixis the asset name, no per-OS mapping) and register the PulseEngine tools inToolConfig::new()instead of the silent "fallback" comment.latest_version. Otherwise loom would resolve to v1.1.13 and fail.MODULE.bazel's version pin lags the registry'slatest_version(wsc: pinned 0.7.0 vs registry 0.9.0).wasm_signing/wsc_attestationwrappers before bumping (asset was renamed and per-platform CLIs added).Found during an automated issue-hunt/version-check pass. Items 1–3 are the core "make the updater handle PulseEngine tools" work; 4 is a separate verified bump.