Skip to content

DX/tooling polish: just --list docs, Node engines guard, conformance::web re-run, setup.sh env vars #291

Description

@lann

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions