Skip to content

Fix nightly fuzz runtime verification#22

Merged
IRus merged 3 commits into
mainfrom
agent/fix-nightly-fuzz
Jul 21, 2026
Merged

Fix nightly fuzz runtime verification#22
IRus merged 3 commits into
mainfrom
agent/fix-nightly-fuzz

Conversation

@IRus

@IRus IRus commented Jul 21, 2026

Copy link
Copy Markdown
Member

What changed

  • keep the pinned wasm3 main source revision separate from its self-reported 0.5.2 CLI version
  • reject source revisions passed as expected wasm3 runtime versions
  • classify wasm3's known non-MVP element-table limitation as an oracle abstention after wasmtime validates the module
  • configure the nightlyFuzz JavaExec arguments without an execution-time Gradle script action so configuration cache can be stored and reused

Root cause

The nightly workflow compared the pinned wasm3 main commit SHA with the semantic version emitted by wasm3 --version, so it failed deterministically before differential fuzzing. The same Gradle invocation then failed configuration-cache serialization because doFirst captured the build script and Project. Once those blockers were removed, the full corpus exposed wasm3's inability to load a valid module using a non-MVP element table; that limited oracle now abstains while kwasm and wasmtime remain comparable.

Validation

  • TDD regression test failed before the contract fix and passes afterward
  • TDD regression test for the exact wasm3 element-table diagnostic failed before classification and passes afterward
  • ./gradlew --console=plain :tck:jvmTest
  • TCK exclusion verification tasks
  • two bounded :tck:nightlyFuzz runs; the second reports Reusing configuration cache

@IRus
IRus merged commit a60e463 into main Jul 21, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant