bytecodealliance / bytecodealliance/wasm-tools
Add an "unlimited items" mode to wasm-smith
- Dominant language
- Rust
- Stars
- 1.8k
- Forks
- 351
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 46
Description
Wasm-smith is proving very useful at testing whether or not engines resource-constrain wasm modules. For example it has expose https://github.com/bytecodealliance/wasm-tools/issues/179 as a weakness in validating module-linking modules.
I think it'd be useful to add a `SwarmConfig`-style generator for wasm-smith where items in the module itself are practically unlimited and may exceed implementation limits. That way we can test that wasmparser doesn't ever have a blowup of resources on these modules, nor does wasmtime itself blow up in resources. We would just need to thread through a boolean that the wasm-smith-generated-module may not be valid.
Contributor guide
Research direction
Review wasm-smith's existing SwarmConfig-style generator path and identify where a boolean can be threaded through generation. Check how wasmparser and wasmtime are used for resource-constrained module testing. Done means an unlimited-items mode can generate modules exceeding implementation limits while explicitly allowing invalid modules for resource-blowup testing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, wasm
- Domain
- compilers, testing-qa
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100