Repository navigation
Add authenticated shared web UI - #204
Draft
katulevskiy wants to merge 26 commits into
Draft
katulevskiy wants to merge 26 commits into
katulevskiy wants to merge 26 commits into
Conversation
Proof-of-work snapshot: WorkOS browser sessions, DeviceRoom RPC, shared UI parity and friendly device names. Pins published GPUI runtime fixes. Excludes local credentials, generated artifacts and experimental apps. Locked WASM build and scoped tests passed; exact native build remains unverified after validation timeouts. Not PR-ready.
Resolve UI integration conflicts, pin published browser runtime fixes, refresh web lockfiles, harden workerd test execution, and correct rollout documentation.
8d78b9c2 was rewritten out of the zui#8 branch by a rebase, so it no longer sits on any ref and could be garbage-collected, breaking the locked web build. 93ab2ca is the current zui#8 head (rebased onto zeronsh/zui main, plus the browser paste and soft-keyboard fixes). Only the zui revision lines in Cargo.lock change. The final repin to a zeronsh/zui SHA still waits for zui#8 to merge.
Trunk content-hashes the bundle and the new initializer script, so mark them immutable in _headers. index.html keeps the default revalidation, so a deploy is still picked up right away. Add a first-open loader that shows WASM download progress through Trunk's data-initializer hook, then "Starting Zeron…" while the module compiles, and a visible failure state instead of a blank page. The edge worker only routes an allowlist of paths to assets, so allow the hashed initializer script and extend production-routing.mjs to cover it and assert the cache headers.
Attachment thumbnails in the transcript are read from the owning device over ReadAttachmentChunk. The device lookup, the load spawn and the loader itself were compiled out on wasm32, so the browser had no candidate devices and every history image fell through to the blank "unavailable" thumbnail, while freshly staged images still showed. The browser already has an AppState with a device-relay EngineHandle and the edge/engine forward ReadAttachmentChunk to remote clients, so drop the three wasm32 gates and let the browser use the same path as native.
- Resolve all 24 conflicted paths across proto, rpc, ui, and edge tests - Gate engine, harness, update, gpui_tokio and native rpc/syntax features to non-wasm targets; restore the wasm web dependency set - Gate zeron-rpc server/device-room modules behind `native` so the client-only web graph stays wasm-safe - Restore platform-specific Instant aliases for browser-reachable UI clocks - Repair the mobile right-sidebar drawer overlay: <768px transient drawers, 90%/380px cap, occluding scrim, tap-backdrop close, full-width chat - Port browser preview-frame handling onto the upstream bounded socket pump - Add scripts/test-browser-instant.mjs authenticated browser regression - Regenerate apps/web/Cargo.lock for the boundary changes
Source: zeronsh#319 Source revision: e07f952
Contribution Managerneeds triage · medium risk · untriaged Open review workspace · Revision Next actions:
This summary is maintained by the review app. Decisions and test evidence are recorded in the workspace; the app does not merge PRs. |
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.
Upstream mirror
Source: zeronsh#319
Original author: @Gratenes
Original revision:
e07f952eb732278cb75b80ff220ed43a9ef2a6faThis PR is an isolated Contribution Manager pilot mirror. Its reviews, checks and merge state are separate from upstream. An empty
[skip ci]commit suppresses automatic bulk CI; the code tree matches the imported upstream revision.Summary
Adds an authenticated browser build of the shared GPUI interface. The browser renders the shared Shell/application state and connects to a native Zeron device through the existing RPC protocol and DeviceRoom relay. Execution stays on the native host; the browser does not run an engine or use loopback IPC.
Included
Merge-readiness sweep
7655c662c2e0e1dea91a9c4d9929725e219abd82, resolved the root lock conflict and reviewed the preview/sidebar auto-merges.Gratenes/zui@c1700b8de27a07b5bc1a190440b64e7323c008f9, including the input/runtime fixes from Fix browser runtime wakes, fonts, touch and text input zeronsh/zui#8.Validation
trunk build --release --locked: passed, usingnightly-2026-09-08, Trunk 0.21.14 and the published runtime pin; no local Cargo source override.npm ciin the clean checkout (44 unit + 23 workerd).cargo check --locked -p zeron: passed after reconciliation, using locally supplied Linux development libraries.Commands/configuration:
apps/web/README.md.Hosted checks: Web validation workflow.
Manual coverage and limits
The author has verified phone taps, scrolling, keyboard behavior and popovers; phone copy/paste and emoji testing remains pending. Device/browser versions and the tested revision were not recorded.
Earlier development checks reported real WorkOS login, device selection, chat, terminal commands, file editing, Git diffs, queue operations, previews and theme persistence. Those reports are not a reproducible end-to-end suite for this final commit; this sweep does not claim to repeat those authenticated flows.
Remote project preview is HTTP-only: WebSocket upgrades and Vite HMR are not supported. Full desktop/browser parity, one-command deployment and direct/self-hosted transport are outside this change;
SELF_HOSTING_ROADMAP.mdremains a proposal.Before merge
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.