WebAssembly / WebAssembly/component-model

Consider adding an opt-in mechanism to request that a host keeps a task alive

Open
#612 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
WebAssembly
Stars
1.4k
Forks
130
Avg merge
2d 1h
Merged PRs (30d)
15

Description

This is spun out of discussion from https://github.com/WebAssembly/component-model/issues/608. The general idea here is that similar to waitUntil on the web platform tasks could have an opt-in mechanism to provide a future<_> to the host and say "please consider me alive until this is resolved". This could affect behavior on the host of when an instance or store is shut down. For example using this API could keep wasi:cli/run alive longer or maybe it could keep a wasi:http/service still running.

This is related to https://github.com/WebAssembly/component-model/issues/611 insofar as it has to do with component teardown/shutdown from a host's perspective, and this is ideally a bit more cooperative than "host kills guest" unconditionally.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the discussion in issue 608 and the related teardown discussion in issue 611. Compare the proposed waitUntil-like behavior with the wasi:cli/run and wasi:http/service examples. Done means reaching agreement on an opt-in host-lifecycle mechanism and documenting its effect on instance or store shutdown.

Written by the indexing model from the issue text.

Assessment

Tech stack
wasm
Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.