Skip to content

feat(docs): update site for P3 - #58

Merged
ricochet merged 11 commits into
bytecodealliance:mainfrom
ericgregory:p3-updates
Jun 12, 2026
Merged

feat(docs): update site for P3#58
ricochet merged 11 commits into
bytecodealliance:mainfrom
ericgregory:p3-updates

Conversation

@ericgregory

@ericgregory ericgregory commented Apr 17, 2026

Copy link
Copy Markdown
Collaborator

Updates the site ahead of the P3 release:

  • New "Releases" section replaces the old flat "Interfaces" page, with a landing page (summary table, proposals, versioning policy) and three subpages
  • New WASI P3 subpage covering native async motivation (sandwich problem), new primitives (async func, stream, future), common patterns, P3 worlds, per-interface change summaries, runtime and tooling support, and a P2-to-P3 migration section
  • New WASI P2 subpage covering worlds, wasi:io, Component Model relationship, interface table with descriptions, runtime support, and patch release history
  • New WASI P1 subpage covering POSIX-inspired design, API surface by category, limitations vs. P2+, and runtime support
  • New Security page covering capability-based security, the contrast with ambient-authority models, and how capability grants evolved across P1/P2/P3
  • New WASI test suite section on the Releases page, with a corresponding entry on the Resources page
  • Description column added to the active-proposals tables, and the Phase 1/2 tables sync'd to current upstream
  • Archived wasi-* subrepo URLs rewritten to canonical monorepo paths
  • Updated introduction, roadmap, and resources pages to reference P3, surface the capability-based sandbox model, and link the Component Model book for tutorials

Signed-off-by: Eric Gregory <eric@cosmonic.com>
…resh

Signed-off-by: Eric Gregory <eric@cosmonic.com>
The Languages page (merged via PR bytecodealliance#55) referenced the flat
docs/interfaces.md page, which this branch replaces with the
docs/releases/ tree. Repoint both references to releases/index.md
so the build resolves after PR bytecodealliance#58 lands.

Signed-off-by: Eric Gregory <eric@cosmonic.com>
Recent ungating PRs (wasi-testsuite #248-#254) have brought P3
coverage to a regularly green state on Wasmtime and jco across
Linux, macOS, and Windows. Reflect that in the page.

Signed-off-by: Eric Gregory <eric@cosmonic.com>
Comment thread docs/releases/index.md Outdated
Comment thread docs/releases/index.md Outdated
Comment thread docs/releases/wasi-p2.md
ericgregory and others added 5 commits June 12, 2026 09:06
Co-authored-by: Bailey Hayes <ricochet@users.noreply.github.com>
Co-authored-by: Bailey Hayes <ricochet@users.noreply.github.com>
Bring the WASI P2 patch releases table up to date with the three patch
releases that have shipped since 0.2.9.

Signed-off-by: Eric Gregory <eric@cosmonic.com>
WASI 0.3.0 was released on 2026-06-11, and upstream PR #929 collapsed
the wit-0.3.0-draft/ directories and 0.3.0-rc-2026-03-15 / 0.3.0-draft
identifiers down to 0.3.0. Update the WASI.dev pages accordingly:

- Drop release-candidate framing on the WASI P3, roadmap, and
  introduction pages.
- Update the WIT version pin from 0.3.0-rc-2026-03-15 to 0.3.0 on the
  WASI P3 and languages pages.
- Point the resources page at the canonical wit/ directories.

Signed-off-by: Eric Gregory <eric@cosmonic.com>
Now that WASI 0.3.0 is shipped, the roadmap framing of the 0.3.x line
reads forward from "After 0.3.0 is released" to "With 0.3.0 released."
Bump the Wasmtime support floor from 43+ to 44+ (when `wasmtime serve`
gained P3 support and `wasi:tls` landed) and note jco's preview3-shim
package, with futures support actively landing.

Signed-off-by: Eric Gregory <eric@cosmonic.com>
@ericgregory ericgregory changed the title feat(docs): update site for P3 rcs feat(docs): update site for P3 Jun 12, 2026
ricochet added 2 commits June 12, 2026 10:18
Signed-off-by: Bailey Hayes <bailey@cosmonic.com>
Signed-off-by: Bailey Hayes <bailey@cosmonic.com>
@ricochet
ricochet merged commit 3a2b5eb into bytecodealliance:main Jun 12, 2026
1 check passed
ricochet pushed a commit that referenced this pull request Jun 12, 2026
The Languages page (merged via PR #55) referenced the flat
docs/interfaces.md page, which this branch replaces with the
docs/releases/ tree. Repoint both references to releases/index.md
so the build resolves after PR #58 lands.

Signed-off-by: Eric Gregory <eric@cosmonic.com>
Comment thread docs/security.md

* **WASI P1 modules** import the `wasi_snapshot_preview1` functions but operate only on the resources the runtime hands them at startup, chiefly preopened file descriptors. A module can call `fd_read` but only against the descriptors it has been given, and there is no way to ask for a new one. Capability granting happens at runtime invocation, not in the module binary.
* **WASI P2 components** express capabilities directly in WIT. Each capability (filesystem access, networking, environment, clocks, randomness) is a separate import, and the host instantiates the component with only the imports it has granted. The component's interface contract is the capability surface, and it is statically inspectable in the component binary itself.
* **WASI P3 components** continue to refine this model. Capabilities that P2 required guests to thread explicitly through each call (such as the `wasi:sockets/network` handle passed into `bind`, `connect`, and DNS lookups) are implicit at the world level in P3. The host still grants network access at the world boundary; guests no longer plumb the handle through every operation.

@rajsite rajsite Sep 6, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Landed on this recently, don't think I follow what is being described for p3.

The host still grants network access at the world boundary; guests no longer plumb the handle through every operation.

Reading this makes it sound like we lost the ability to control capabilities that are passed to component dependencies (i.e. wasi-virt style control to filter, i.e. file access or block host provided capabilities) but I don't believe that's the case is it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants