Visor: hued oklch palette, two-half strip, overlay drawer with drafts - #171
Merged
Conversation
The strip becomes two halves — the running app on the left (glyph square, plated title, petname) and the user/device on the right (petname, device petname, glyph circle) — around a centre divider. Every colour derives from `--hue`, set once on `#visor-root` in the open arm only, at the specified oklch lightness/chroma for strip, drawer and accent; the unclaimed dress is the same palette at zero chroma. The drawer now overlays the app zone below the strip instead of pushing it, so the strip never moves in any drawer state. It has a fixed height, scroll shadows on overflow, animates open/closed, slides sheets horizontally when switching while open, and is pinned open on the app list while nothing runs. A scrim closes it when a session runs. Settings and the new AppInfo sheet edit a draft (hue previews live); Save writes to the kernel, Revert discards, and leaving a dirty sheet raises a save/revert/cancel confirm. New kernel `device.meta`/`set-meta` with `meta-scope = user | device | app(id)`: free-form string maps in the sealed checkpoint for user-chosen labels (petname, glyph) while the field set is still in flux.
lannbot
enabled auto-merge
September 7, 2026 23:31
This was referenced Sep 7, 2026
lannbot
pushed a commit
that referenced
this pull request
Sep 8, 2026
The strip always separates visor content from app content, so whatever the visor opens goes on its side of that line and pushes the strip down rather than covering the app. The "strip geometry immobile" gate that justified the overlay in #171 is struck: from design.md M1, the page comment, and the two e2e equality assertions (the 56px height check stays).
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.
Incremental visor UI iteration (not final):
oklch(0.62 0.14 h), draweroklch(0.7 0.11 h), accentoklch(0.71 0.16 h); hue slider recolours live.--hueis still set at exactly one site, only when the device is open; the stylesheet test now checks that no chromatic colour names its own hue.device.meta/set-metastring maps for user / device / app(id), stored in the sealed checkpoint.Gates:
just check,just test,just e2e(18/18, incl. newvisor-drafts).Automerge is armed.