Fix web runtime wake handling and bundle required fonts - #8
Draft
Gratenes wants to merge 1 commit into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Companion runtime changes for zeronsh/zeron#319 (web UI support).
Dispatcher wake handling
Atomics.waitAsynccan return synchronously when the signal no longer equals the expected value. The previous mailbox loop treated that result as an error and exited, permanently stopping main-thread work dispatch.Clear the wake flag before draining queued work, then wait. If work arrives between clearing the flag and waiting, continue the loop on the synchronous result instead of exiting. Asynchronous results still await their promise.
Required font assets
Include the eight IBM Plex Sans and Lilex font files referenced by the web platform, plus their upstream OFL licenses. This lets downstream browser builds resolve the existing embedded font paths without a private asset checkout. Assets and licenses were sourced from Zed revision f14fea9.
Scope
One commit, 11 files: the dispatcher change, eight fonts, and two license files. No native platform implementation changes or standalone example changes.
Validation
53f49068b7aa2b796360e640b2635dbabba9c032) using nightly-2026-09-08 and Trunk.This is a draft for early review. A dedicated automated dispatcher race regression is not included, and this is not a claim that the full zui workspace test suite passed. Once these changes land upstream, the companion application can replace its fork dependency pin with the upstream revision.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.