P0-S1c: Implement io::poll (always-ready) for streams
Background
WASI Preview 2 streams rely on io::poll for readiness. For P0, we provide always-ready semantics because our streams operate over in-memory buffers/overlay.
Goal
Implement the minimal io::poll host wiring to report readiness for our VfsInputStream/VfsOutputStream.
Design
- Add host-side
io::poll support returning ready for registered stream handles.
- Ensure binding functions compile and contracts using standard I/O don’t block.
Constraints
- P0 only: no async backends, hence always-ready acceptable.
Acceptance Criteria
- Integration usage of streams does not require blocking or async polling.
- Unit tests confirm poll returns ready for both stream types.
References
P0-S1c: Implement io::poll (always-ready) for streams
Background
WASI Preview 2 streams rely on
io::pollfor readiness. For P0, we provide always-ready semantics because our streams operate over in-memory buffers/overlay.Goal
Implement the minimal
io::pollhost wiring to report readiness for ourVfsInputStream/VfsOutputStream.Design
io::pollsupport returning ready for registered stream handles.Constraints
Acceptance Criteria
References