feat(desktop): ship proof-first dashboard redesign#9737
Conversation
|
Thanks @byanunay — this is an ambitious, well-structured redesign. The proof-first hero cascade, accessibility-aware transparency fallback, proper font/icon licensing (Geist OFL, Lucide ISC/MIT), and the accompanying test + e2e coverage show strong craft. A few observations for the human maintainers who'll own the product call: Product direction (needs human judgment): This replaces the entire desktop Home with a new three-page dashboard (Home / Connect data / Features) plus a new "proof-first" design toggle alongside the existing legacy toggle. That's a major user-facing surface change — the decision of whether and when to ship this direction belongs to the product maintainers, not automation. The day-zero → recommendation → recent-activity cascade is a sensible approach for surfacing value early, but the maintainers should validate the information hierarchy and the dual-toggle rollout plan. Pending verification flagged by the contributor: The PR description notes the continuity-gauntlet rerun is still pending after the first run was invalidated. Maintainers should track that before merge. Checks: The desktop-specific checks (Swift Release Compile, Swift Build & Tests, desktop-core-e2e-t0, contracts) all pass. The Formatting / Hygiene / Detect Changes checks show skipped/cancelled states — worth confirming that's expected for a desktop-only draft before it leaves draft. Scope: The change is large but cohesive around a single product surface (desktop dashboard). I'm not asking for a split. Since this is a draft and a product-direction decision, I'm leaving it for human maintainer review rather than taking a formal position. No approval from automation. by AI on behalf of David — if you need David’s attention urgently, please @Git-on-my-level and escalate with |
What changed and why
Replaces the overwhelming desktop Home with a proof-first dashboard that exposes one grounded hero, real Up next and conversation content, and paged Home / Connect data / Features destinations. Connect data reuses the canonical Apps import surface, all hero actions hand off to the shared floating-bar timeline, and the visual/content direction is preserved in the finalized HTML design reference.
Product invariants affected
OmiApp.swiftchanges only the main window style from the native title-bar container to Omi's hidden-title-bar chrome; auth/session behavior is unchanged.OmiColors/OmiTypetokens while adding Geist, Lucide assets, accessible glass fallbacks, and reduced-motion-aware interaction states.How it was verified
xcrun swift test— 2,472 tests passed with 0 failures../scripts/agent-logic-harness.sh --swift-only— passed the lifecycle/state suite, including PTT state, voice-turn ownership, and chat-continuity coverage.scripts/omi-harness run e2e/flows/home-stage.yaml --lane bridge— 8/8 steps passed with no coordinate clicks; verified Home / Connect data / Features paging, cascade state, both background styles, and return Home./Applications/omi-dashboard-proof.app, then walked the signed-in user path. Verified the recent-conversation hero, Up next, recent conversations, canonical Apps imports, Features controls, transparent glass, and flush custom chrome. The Home hero CTA opened the floating bar's existing expanded chat timeline.scripts/omi-harness run e2e/flows/ptt-lifecycle.yaml --lane bridge— 5/5 steps passed; recording/release completed with no stale events or invalid transitions.Tests
desktop/macos/Desktop/Tests/ProofFirstDashboardTests.swiftcovers page order, automation actions, cascade/source policy, and prompt gating.desktop/macos/Desktop/Tests/ProofFirstDashboardTests.swiftalso covers the proof-first/legacy prompt-policy boundary.desktop/macos/Desktop/Tests/DashboardCaptureStateTests.swiftcovers capture and connector state behavior.desktop/macos/Desktop/Tests/OmiTransparencyTests.swift,OmiTypeTests.swift, andOmiIconTests.swiftcover reduced-transparency fallback and the shared type/icon primitives.desktop/macos/e2e/flows/home-stage.yamlcovers the real three-page dashboard path and setting changes through the automation bridge.Root cause and durable guard (bug fixes)
Materialinside an opaque window could not blend with the desktop. The dashboard now uses the proven behind-windowNSVisualEffectViewpattern with a non-opaque clear window and a deterministic reduced-transparency fallback..titleBarwindow style left a separately composited AppKit strip above Omi's custom chrome..hiddenTitleBarremoves the duplicate layer, and both chrome and canvas use the same0.24overlay.home-stageflow so future UI changes are checked through the actual user path, not compile-only verification.Scoped cleanups (optional)
⌘Osetting to “Ask Omi shortcut” without changing the shortcut.desktop/macos/docs/dashboard-design-reference/as documentation-only source material.