Uploaded August 2026 | Updated September 2026, 2 days ago
WASI Preview 3 is a turning point for WebAssembly outside the browser, and this episode explains why. F5's Joel Moses and Oscar Spencer are joined by Bailey Hayes, CTO of Cosmonic, to break down what “native async” really means for the component model, why it took two years to land, and how it changes the way we build polyglot, composable cloud systems.
At the center of P3 is first-class async and concurrency in the canonical ABI. That isn’t just a nicer developer experience, it’s a host-level capability: runtimes can understand who’s waiting on what across composed components, propagate async handles through the stack, and apply backpressure using standardized stream types. Bailey walks through how this shows up in practical interfaces like WASI HTTP, where response bodies become streams and service chaining becomes far more natural, without the awkward P2-era workarounds.
The conversation gets concrete on performance. Bailey shares real benchmark results showing order-of-magnitude gains when moving from serialized execution patterns to true concurrency, along with what changed mechanically from P2 to P3, including simpler interfaces, bidirectional streams, time zone support, better durations, and exit codes.
They also talk about ecosystem impact: how P3 affects different languages, what it unlocks for JavaScript via JSPI, why Go still needs cooperative threading to be truly native, and why the rise of “vibed-out” runtimes is accelerating component model adoption. Bailey closes with what’s next in WASI evolution, her thoughts on Preview 4, and what additional capabilities could meaningfully expand what developers can do, including a future WebCrypto-style interface.
If you’ve been waiting for WebAssembly to feel like a real distributed systems runtime, P3 is the milestone to understand.
Chapters:
00:00 Welcome to WebAssembly Unleashed
00:24 WASI Preview 3: Async finally goes native for components
01:39 What's in P3? Native async + concurrency in the canonical ABI
03:29 Backpressure solved: Streams as a first-class type
04:14 Service chaining + middleware: Composing components with streams
05:49 Real performance: “Arewefastyet” benchmark (13x in a cheese test)
08:20 Language impact: JavaScript/TypeScript win now; Go improves later
09:48 Spoiler: Cooperative threads for Go-style goroutines
10:55 How interfaces changed: “Make it async,” simpler HTTP handlers
12:06 Other goodies: Time zones, better durations, exit codes
13:15 How have runtimes changed?
16:35 P3, the component model, and the browser
18:34 What about debugging and observability in P3?
21:09 What is wasmCloud and how has P3 impacted it?
27:18 Designing new WASI interfaces: Feature gates + maps + implements
32:10 No WASI P4: Additive evolution toward 1.0 (wart shaving later)
Read the WASI P3 launch blog: bytecodealliance.org/articles/WASI-0.3
Check out Bailey's work on Cosmonic.com
For more from F5's Office of the CTO visit the following sites:
Blogs - f5.com/company/octo
Reports - f5.com/services/resources/reports
Meet Your Hosts:
Joel Moses | LinkedIn | @Joel_Moses
Oscar Spencer | X | LinkedIn
Matthew Yacobucci | LinkedIn
⬇️⬇️⬇️ JOIN THE COMMUNITY! ⬇️⬇️⬇️
DevCentral is an online community of technical peers dedicated to learning, exchanging ideas, and solving problems - together.
Find all our platform links ⬇️ and follow our Community Evangelists! 👋
➡️ DEVCENTRAL: community.f5.com
➡️ YOUTUBE: youtube.com/devcentral
➡️ LINKEDIN: linkedin.com/showcase/f5-devcentral
➡️ TWITTER: twitter.com/devcentral
Your Community Evangelists:
👋 Jason Rahm: linkedin.com/in/jrahm | twitter.com/jasonrahm
👋 Buu Lam: linkedin.com/in/buulam | twitter.com/buulam
👋 Chase Abbott: linkedin.com/in/chaseabbott1
WASI Preview 3 is a turning point for WebAssembly outside the browser, and this episode explains why. F5's Joel Moses and Oscar Spencer are joined by Bailey Hayes, CTO of Cosmonic, to break down what “native async” really means for the component model, why it took two years to land, and how it changes the way we build polyglot, composable cloud systems.
At the center of P3 is first-class async and concurrency in the canonical ABI. That isn’t just a nicer developer experience, it’s a host-level capability: runtimes can understand who’s waiting on what across composed components, propagate async handles through the stack, and apply backpressure using standardized stream types. Bailey walks through how this shows up in practical interfaces like WASI HTTP, where response bodies become streams and service chaining becomes far more natural, without the awkward P2-era workarounds.
The conversation gets concrete on performance. Bailey shares real benchmark results showing order-of-magnitude gains when moving from serialized execution patterns to true concurrency, along with what changed mechanically from P2 to P3, including simpler interfaces, bidirectional streams, time zone support, better durations, and exit codes.
They also talk about ecosystem impact: how P3 affects different languages, what it unlocks for JavaScript via JSPI, why Go still needs cooperative threading to be truly native, and why the rise of “vibed-out” runtimes is accelerating component model adoption. Bailey closes with what’s next in WASI evolution, her thoughts on Preview 4, and what additional capabilities could meaningfully expand what developers can do, including a future WebCrypto-style interface.
If you’ve been waiting for WebAssembly to feel like a real distributed systems runtime, P3 is the milestone to understand.
Chapters:
00:00 Welcome to WebAssembly Unleashed
00:24 WASI Preview 3: Async finally goes native for components
01:39 What's in P3? Native async + concurrency in the canonical ABI
03:29 Backpressure solved: Streams as a first-class type
04:14 Service chaining + middleware: Composing components with streams
05:49 Real performance: “Arewefastyet” benchmark (13x in a cheese test)
08:20 Language impact: JavaScript/TypeScript win now; Go improves later
09:48 Spoiler: Cooperative threads for Go-style goroutines
10:55 How interfaces changed: “Make it async,” simpler HTTP handlers
12:06 Other goodies: Time zones, better durations, exit codes
13:15 How have runtimes changed?
16:35 P3, the component model, and the browser
18:34 What about debugging and observability in P3?
21:09 What is wasmCloud and how has P3 impacted it?
27:18 Designing new WASI interfaces: Feature gates + maps + implements
32:10 No WASI P4: Additive evolution toward 1.0 (wart shaving later)
Read the WASI P3 launch blog: bytecodealliance.org/articles/WASI-0.3
Check out Bailey's work on Cosmonic.com
For more from F5's Office of the CTO visit the following sites:
Blogs - f5.com/company/octo
Reports - f5.com/services/resources/reports
Meet Your Hosts:
Joel Moses | LinkedIn | @Joel_Moses
Oscar Spencer | X | LinkedIn
Matthew Yacobucci | LinkedIn
⬇️⬇️⬇️ JOIN THE COMMUNITY! ⬇️⬇️⬇️
DevCentral is an online community of technical peers dedicated to learning, exchanging ideas, and solving problems - together.
Find all our platform links ⬇️ and follow our Community Evangelists! 👋
➡️ DEVCENTRAL: community.f5.com
➡️ YOUTUBE: youtube.com/devcentral
➡️ LINKEDIN: linkedin.com/showcase/f5-devcentral
➡️ TWITTER: twitter.com/devcentral
Your Community Evangelists:
👋 Jason Rahm: linkedin.com/in/jrahm | twitter.com/jasonrahm
👋 Buu Lam: linkedin.com/in/buulam | twitter.com/buulam
👋 Chase Abbott: linkedin.com/in/chaseabbott1










