On main @ea9c5afa5 (and descendants), cargo test -p perry-runtime --lib with default parallelism fails object::global_this::global_this_webassembly::tests::namespace_members_exist_with_expected_shapes ("Module.prototype must exist") in 6/6 runs on an M-series mac; --test-threads=1 and solo runs pass 100%. Cross-thread interference on the shared closure dynamic-prop / builtin-attrs registries during create_webassembly_namespace is the likely surface. Manifestation is layout/timing sensitive — older mains passed the same suite, so this joins the gc::teardown / prop_plan parallel-flake family. Found while verifying branch size/nm-constants-devirt (whose hooks provably never execute in the suite — traced).
On main @ea9c5afa5 (and descendants),
cargo test -p perry-runtime --libwith default parallelism failsobject::global_this::global_this_webassembly::tests::namespace_members_exist_with_expected_shapes("Module.prototype must exist") in 6/6 runs on an M-series mac;--test-threads=1and solo runs pass 100%. Cross-thread interference on the shared closure dynamic-prop / builtin-attrs registries duringcreate_webassembly_namespaceis the likely surface. Manifestation is layout/timing sensitive — older mains passed the same suite, so this joins the gc::teardown / prop_plan parallel-flake family. Found while verifying branch size/nm-constants-devirt (whose hooks provably never execute in the suite — traced).