@as-harness/wazero
v0.6.0
Published
Go host implementation via Node-API addon.
Downloads
296
Readme
harness/wazero
Go host implementation via Node-API addon.
Purpose
Proves the ABI is not tied to one runtime language by implementing the same shared contract with a native addon.
Artifact
dist/wazero.node(target-specific native addon)
Responsibilities
- compile and instantiate Wasm via wazero
- mirror JS host wire decoding and callback registration
- expose
callI32,discover,run - run shared
start()throughharness/shared/start.cjswith same-machine worker slots for ready work - provide persistent coverage snapshots (
getCoverageSnapshot/resetCoverage) - decode and surface structured
debugevents for rewrittenabort(...)/trace(...)payloads - provide host-owned fixture reads plus snapshot compare/update support for
bundled
uvu/assert - explicit
close()to release native resources promptly
Build Requirements
- Go
1.26.1or newer toolchain - Node headers
- Windows
node.lib(auto-download path supported)
Build / Install
cd harness/wazero
npm run build
npm testPackaging Notes
- published as
@as-harness/wazeroplus per-platform optional binary packages - Linux glibc is in scope for the current public npm lane; musl is not.
- source worker execution under Bun on Windows stages a private copy of
wazero.nodebefore loading the addon. - source-host CLI smoke proof builds a Node-targeted CLI bundle and runs that
bundle under Node
25.8.1instead of invokingbun run ./cli/index.tsdirectly. - source Linux arm64 and Windows builds can be produced locally.
- source-host verification and npm package install-smoke are now the maintained proof paths.
