Skip to content

Commit 1b8eb40

Browse files
avrabeclaude
andauthored
chore(checksum_updater): manage wsc; bump signing tool 0.9.0 -> 0.9.2 (#524)
The updater previously skipped wsc (github_repo pulseengine/sigil) because early releases were dual-natured (per-OS CLI binaries + a wasm-CLI module wsc-cli.wasm). wsc-cli.wasm was capped at v0.7.0; from v0.9.x the registry uses only per-OS native binaries, so wsc fits the existing PerPlatformAsset pattern (version-less asset names; mixed extension: bare unix binaries vs `.exe` on Windows). Closes the #498 updater tail — every tracked tool is now auto-managed. Verified: `update --tools wsc` detects v0.9.2 and resolves all 5 platforms; `validate --tools wsc` re-downloads and confirms 5/5 checksums; linux_amd64 sha256 cross-checked against upstream's published wsc-linux-x86_64.sha256. NOTE (signing-path): bumping latest_version 0.9.0 -> 0.9.2 advances the wsc signing toolchain (resolved from this file via MODULE.bazel). Asset format is unchanged from the working 0.9.0 (same native-binary pattern), but this is a signing-path change — run a signing build_test and review before merge. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 013931f commit 1b8eb40

2 files changed

Lines changed: 92 additions & 26 deletions

File tree

checksums/tools/wsc.json

Lines changed: 54 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,96 @@
11
{
22
"tool_name": "wsc",
3-
"github_repo": "pulseengine/sigil",
43
"description": "WebAssembly Signature Component - signing, verification, and attestation toolkit",
5-
"latest_version": "0.9.0",
6-
"supported_platforms": ["darwin_amd64", "darwin_arm64", "linux_amd64", "linux_arm64", "windows_amd64", "wasm_component"],
4+
"github_repo": "pulseengine/sigil",
5+
"latest_version": "0.9.2",
6+
"last_checked": "2026-06-17T21:26:48.808208Z",
77
"versions": {
88
"0.9.0": {
99
"release_date": "2026-05-21",
1010
"platforms": {
11-
"darwin_amd64": {
12-
"sha256": "390182be41aeda8165d40103ab10487ea84f9f52b6d3a336d8a59ead9c88da3b",
13-
"url_suffix": "wsc-macos-x86_64"
11+
"windows_amd64": {
12+
"sha256": "eed9d52f027007b55ee6db756c31b02e232a89ab95c53229dc7f733c809cb33c",
13+
"url_suffix": "wsc-windows-x86_64.exe"
1414
},
1515
"darwin_arm64": {
1616
"sha256": "c7e4fddceed68512400d3f4bdc9a3741a5d7221d9afb0a9e1b8302755764ffd8",
1717
"url_suffix": "wsc-macos-aarch64"
1818
},
19+
"linux_arm64": {
20+
"sha256": "e927eb4ea14a55909b84bc4714a7273fbedb83a95e05cd1eb41c0e582d8f45ea",
21+
"url_suffix": "wsc-linux-aarch64"
22+
},
23+
"darwin_amd64": {
24+
"sha256": "390182be41aeda8165d40103ab10487ea84f9f52b6d3a336d8a59ead9c88da3b",
25+
"url_suffix": "wsc-macos-x86_64"
26+
},
1927
"linux_amd64": {
2028
"sha256": "9054b4b066e2b0a954110851a43266ff0e9ef12b4e1ecc03c333943fd52cecb6",
2129
"url_suffix": "wsc-linux-x86_64"
30+
}
31+
}
32+
},
33+
"0.9.2": {
34+
"release_date": "2026-05-30",
35+
"platforms": {
36+
"linux_amd64": {
37+
"sha256": "07aa2a40293756a4dcf22d394a711aa812395a159412c15743385481734ed33f",
38+
"url_suffix": "wsc-linux-x86_64"
39+
},
40+
"darwin_arm64": {
41+
"sha256": "7a7e94c1ac5210ece6f6b9bdb72a770ce786a0fd0c975ac9897243c01424f3d2",
42+
"url_suffix": "wsc-macos-aarch64"
43+
},
44+
"darwin_amd64": {
45+
"sha256": "4731cd64b641301184988cdf5d69645dc59057df4a3610e7dec6f258897fb57e",
46+
"url_suffix": "wsc-macos-x86_64"
2247
},
2348
"linux_arm64": {
24-
"sha256": "e927eb4ea14a55909b84bc4714a7273fbedb83a95e05cd1eb41c0e582d8f45ea",
49+
"sha256": "3588bd52f3707e721bdfe9d7f3f76772be36e589d24e819a8d547c8953f2dcf0",
2550
"url_suffix": "wsc-linux-aarch64"
2651
},
2752
"windows_amd64": {
28-
"sha256": "eed9d52f027007b55ee6db756c31b02e232a89ab95c53229dc7f733c809cb33c",
53+
"sha256": "e220c40a8b8e65452216544802b446d3bf056e8bf935d4ccef0f6ae82272fd49",
2954
"url_suffix": "wsc-windows-x86_64.exe"
3055
}
3156
}
3257
},
3358
"0.7.0": {
3459
"release_date": "2026-03-28",
3560
"platforms": {
36-
"wasm_component": {
37-
"sha256": "a57139921f87e91282f22f788155177eadf2085e21a7f2f8ceb8d9fac1c761ef",
38-
"url_suffix": "wsc-cli.wasm"
61+
"linux_arm64": {
62+
"sha256": "ca48e798c3a73323ed10421b8672e8fcc411dc55389aa9e6c51b4bcd18e845bf",
63+
"url_suffix": "wsc-linux-aarch64"
64+
},
65+
"windows_amd64": {
66+
"sha256": "698a8b15388fedf34752ce3e283be47e64fd2afa65a424a42e711778060ac527",
67+
"url_suffix": "wsc-windows-x86_64.exe"
3968
},
4069
"darwin_amd64": {
4170
"sha256": "ac429b11a4bf70cff96ad29f7c21466b3034fc91bcd2f385f6210bc5e2040e5e",
4271
"url_suffix": "wsc-macos-x86_64"
4372
},
73+
"wasm_component": {
74+
"sha256": "a57139921f87e91282f22f788155177eadf2085e21a7f2f8ceb8d9fac1c761ef",
75+
"url_suffix": "wsc-cli.wasm"
76+
},
4477
"darwin_arm64": {
4578
"sha256": "4d501220a3f1a0c5cd2ae95343b3b9f2be8b8a7109b61b4b75dde89d3e32f6d5",
4679
"url_suffix": "wsc-macos-aarch64"
4780
},
4881
"linux_amd64": {
4982
"sha256": "b670fb823563ac8b80e04fd0337813f9276e5c783239bb62afe74ed759b78897",
5083
"url_suffix": "wsc-linux-x86_64"
51-
},
52-
"linux_arm64": {
53-
"sha256": "ca48e798c3a73323ed10421b8672e8fcc411dc55389aa9e6c51b4bcd18e845bf",
54-
"url_suffix": "wsc-linux-aarch64"
55-
},
56-
"windows_amd64": {
57-
"sha256": "698a8b15388fedf34752ce3e283be47e64fd2afa65a424a42e711778060ac527",
58-
"url_suffix": "wsc-windows-x86_64.exe"
5984
}
6085
}
6186
}
62-
}
63-
}
87+
},
88+
"supported_platforms": [
89+
"darwin_amd64",
90+
"darwin_arm64",
91+
"linux_amd64",
92+
"linux_arm64",
93+
"wasm_component",
94+
"windows_amd64"
95+
]
96+
}

tools/checksum_updater/src/tool_config.rs

Lines changed: 38 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -380,11 +380,44 @@ impl ToolConfig {
380380
},
381381
);
382382

383-
// Note: wsc (github_repo pulseengine/sigil) is dual-natured — per-OS CLI
384-
// binaries plus a wasm CLI module (wsc-cli.wasm, capped at v0.7.0; later
385-
// releases drop it). It needs separate handling and is left out here
386-
// (tracked in #498). wasmsign2-cli has no GitHub releases (tag/CI only).
387-
// jco uses the npm ecosystem, not GitHub release assets.
383+
// wsc (github_repo pulseengine/sigil), the signing tool. Early releases
384+
// were dual-natured (per-OS CLI binaries plus a wasm CLI module
385+
// wsc-cli.wasm), but wsc-cli.wasm was capped at v0.7.0 and later releases
386+
// drop it — from v0.9.x the registry uses only per-OS native binaries, so
387+
// PerPlatformAsset (version-less asset names, mixed extension: bare unix
388+
// binaries vs `.exe` on Windows) describes it cleanly. Closes the #498
389+
// tail. NOTE: bumping wsc advances the signing toolchain — surface any
390+
// wsc version change for signing-path review before shipping.
391+
tools.insert(
392+
"wsc".to_string(),
393+
ToolConfigEntry {
394+
github_repo: "pulseengine/sigil".to_string(),
395+
platforms: vec![
396+
"darwin_amd64".to_string(),
397+
"darwin_arm64".to_string(),
398+
"linux_amd64".to_string(),
399+
"linux_arm64".to_string(),
400+
"windows_amd64".to_string(),
401+
],
402+
url_pattern: UrlPattern::PerPlatformAsset {
403+
pattern: "https://github.com/pulseengine/sigil/releases/download/v{version}/{asset}".to_string(),
404+
platform_mapping: {
405+
let mut map = HashMap::new();
406+
map.insert("darwin_amd64".to_string(), "wsc-macos-x86_64".to_string());
407+
map.insert("darwin_arm64".to_string(), "wsc-macos-aarch64".to_string());
408+
map.insert("linux_amd64".to_string(), "wsc-linux-x86_64".to_string());
409+
map.insert("linux_arm64".to_string(), "wsc-linux-aarch64".to_string());
410+
map.insert("windows_amd64".to_string(), "wsc-windows-x86_64.exe".to_string());
411+
map
412+
},
413+
},
414+
tag_prefix: Some("v".to_string()),
415+
version_filter: VersionFilter::Any,
416+
},
417+
);
418+
419+
// wasmsign2-cli has no GitHub releases (tag/CI only). jco uses the npm
420+
// ecosystem, not GitHub release assets.
388421

389422
Self { tools }
390423
}

0 commit comments

Comments
 (0)