Skip to content

feat(home-v2): open saved start pages on launch - #353

Merged
QuickMythril merged 1 commit into
mainfrom
feat/home-v2-start-pages
Aug 24, 2026
Merged

feat(home-v2): open saved start pages on launch#353
QuickMythril merged 1 commit into
mainfrom
feat/home-v2-start-pages

Conversation

@QuickMythril

Copy link
Copy Markdown
Member

Summary

Parity review P-8 / roadmap F3 (decision #12: KEEP launch-tab restoration + start pages) — the only theme item that was never implemented. The F9 migration already carried the v1 start-pages data into the v2 collections store; this makes them do something again.

  • New pure helper planStartPageLaunch (contract-tested in the foundation suite) encodes the v1 rules: start pages open only when the session would otherwise be just the dashboard — a restored session's tabs always win; onboarding-in-progress suppresses them; a page bound to an account that no longer exists opens with the current account (v1's fallback); blank entries are dropped; the MAX_START_PAGES cap applies.
  • The LiveApp effect is one-shot per process and fires at the first moment both the shell state and the collections snapshot are ready. Pages open sequentially through the existing openAddress pipeline (a page that no longer resolves is skipped, not fatal), and the first start page ends up active, matching v1 — the loop then re-activates tabs[0] since fresh sessions start with zero app tabs.
  • Reuses the existing productStateRef live mirror; no new state shape, no persistence changes, no i18n changes.

Testing

  • Renderer tsc clean; test:home-v2-foundation (extended with the three plan cases: normal launch with dead-account fallback + blank filtering, restored-session suppression, onboarding suppression) passes; build:renderer succeeds. End-to-end acceptance: save 2+ start pages via the Bookmarks data, quit, relaunch — both open with the first active; relaunch with a restored session → no start pages.

🤖 Generated with Claude Code

Implements F3 (decision #12 KEEP), the one roadmap item that was never
built. planStartPageLaunch (pure, tested) mirrors the v1 rules: start
pages apply only when the session would otherwise be just the dashboard
(a restored session's tabs win), onboarding-in-progress suppresses
them, and pages bound to a missing account fall back to the current
account. The LiveApp effect is one-shot per process, fires at the first
moment shell state and the collections snapshot are both ready, opens
each page through the existing openAddress pipeline (failures skipped),
and re-activates the first opened tab to match v1's first-page-active
behavior.

Parity review P-8 (projects/qortium-home-2.1/parity-review-2026-08-24).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@QuickMythril
QuickMythril merged commit 83aaeb5 into main Aug 24, 2026
6 checks passed
@QuickMythril
QuickMythril deleted the feat/home-v2-start-pages branch August 24, 2026 17:32
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.

1 participant