mirror of
https://github.com/hanzo-apps/tabs.git
synced 2026-09-15 19:32:29 +00:00
The web app's page held 145 lines that were not about being a page: read the registry, fold sessions and sandboxes into machines, mint a url per pane, poll on the plane's own clock. With three hosts for the workspace that is three answers to how often a machine goes stale, so it is a hook now and the page is 22 lines. What a host still owns is the token and where its cloud is. Each gets the token its own way — a browser mints it with PKCE, the desktop already holds the signed-in user's — and the hook has no business knowing which. TerminalHost had two definitions after the first draft of this, so it moved to the pure vocabulary both sides read. A lib module importing a component module would invert the layering, and a second copy of the type is two answers to what a machine is. One defect fell out of the move: the signed-out screen showed the REGISTRY's error, which is always null when there is no token — so a refused sign-in said nothing at all. The two failures have different remedies and now have different states. Co-authored-by: Hanzo Dev <[email protected]>