Skip to content

feat(BROWSER-01): add compiled worker host and browser example - #33

Merged
ellainng merged 1 commit into
mainfrom
feat/BROWSER-01-worker-host
Oct 20, 2026
Merged

ellainng merged 1 commit into
mainfrom
feat/BROWSER-01-worker-host

Conversation

@ellainng

Copy link
Copy Markdown
Member

Compile client entrypoints through an explicit JavaScript.browser namespace and run their computation in a module worker. The main-thread adapter owns named text controls, click subscriptions and native GET text Fetch through the versioned host protocol, with source errors, deadlines, bounded messages/output, callback ownership, cancellation and stop/restart. Artifacts record the full local host/worker/helper closure and hashes.

A runnable text_metrics example uses the approved shared source corpus and serves as static files. It runs our emitted JavaScript without a Python interpreter or server execution of client logic. PWA assembly/offline reload remains WEB-03; new-source parsing remains the separate independent interpreter milestone. The manifest identity must come from verified assembly; echoing it during initialization does not authenticate assets.

Validation: all 76 compiler/compatibility tests passed; focused browser bridge/protocol tests passed after final validation changes. Real Chrome 152 checks CPython/client metrics parity, computation offline after loading, Fetch status/credentials/grants/CORS/redirect/size/timeout, pending-Fetch cancellation, missing capabilities, source locations, forty callback allocation/release cycles, repeated restart, busy-worker termination and the runnable example under a URL subdirectory. Built wheel/source artifacts contain the local browser assets; the pinned Playwright group is test-only and existing runtime dependency versions are retained.

Closes #24.

@ellainng
ellainng merged commit 51198ae into main Oct 20, 2026
4 checks passed
@ellainng
ellainng deleted the feat/BROWSER-01-worker-host branch October 20, 2026 20:13
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.

BROWSER-01: Implement browser DOM, events and Fetch adapters

1 participant