Low-severity DX items from adversarial review:
just --list surfaces mid-sentence fragments as recipe docs for 6+ recipes (mutants, rust-docs, test, demo::compose, ...) because just takes the last comment line; [doc("...")] attributes or one-line summaries would fix the first-contact surface.
- Node 24+ is prose-only: no package.json
engines field, no runtime check anywhere. On older Node the failure is a deep JSPI error out of generated code, not "Node 24+ required".
just conformance::web re-runs the entire conformance suite on every invocation (web: run, and run: _clean), even seconds after a green run — unlike wpt::web. A serve-what-exists mode would remove the surprise.
- scripts/setup.sh honors
WAC_VERSION/WASMTIME_VERSION but documents only WASM_TOOLS_VERSION/JUST_VERSION/SKIP_NODE; README/AGENTS.md list wasm-tools and just as prerequisites that setup.sh itself installs (the true unstated prerequisites are rustup/cargo, curl, Node+npm).
- Two wit-bindgen pins (0.59 guest-side, 0.57 wasip3 drivers, each commented) with no
[workspace.dependencies] table: a future bump is an 8+-file edit with silent-drift potential.
- Naming:
conformance/adapters/composed-driver -> crate conformance-composed-driver (no adapter-), examples/demo-driver -> crate crypto-demo-driver; the parallel components diverge from each other.
- AGENTS.md's check table names
just demo::build-component, which is [private] and invisible in just --list demo.
Related: #35.
Low-severity DX items from adversarial review:
just --listsurfaces mid-sentence fragments as recipe docs for 6+ recipes (mutants,rust-docs,test,demo::compose, ...) because just takes the last comment line;[doc("...")]attributes or one-line summaries would fix the first-contact surface.enginesfield, no runtime check anywhere. On older Node the failure is a deep JSPI error out of generated code, not "Node 24+ required".just conformance::webre-runs the entire conformance suite on every invocation (web: run, andrun: _clean), even seconds after a green run — unlikewpt::web. A serve-what-exists mode would remove the surprise.WAC_VERSION/WASMTIME_VERSIONbut documents onlyWASM_TOOLS_VERSION/JUST_VERSION/SKIP_NODE; README/AGENTS.md list wasm-tools and just as prerequisites that setup.sh itself installs (the true unstated prerequisites are rustup/cargo, curl, Node+npm).[workspace.dependencies]table: a future bump is an 8+-file edit with silent-drift potential.conformance/adapters/composed-driver-> crateconformance-composed-driver(noadapter-),examples/demo-driver-> cratecrypto-demo-driver; the parallel components diverge from each other.just demo::build-component, which is[private]and invisible injust --list demo.Related: #35.