Skip to content

Dashboard v2 — FirstRun /firstrun (bundle picker + install progress) #172

@thinmintdev

Description

@thinmintdev

Parent

#148

What to build

ADR-0010 bundle picker. 3 states: pick / confirm / progress.

Pick state — welcome hero + detected-hardware line (Detected: 128 GB RAM · Strix Halo gfx1151 · XDNA2 NPU) + 4 tier cards (Lite 16GB+ ~1GB / Default 32GB+ ~8GB / Pro 64GB+ ~38GB / Max 100GB+ ~75GB ★recommended) + LMX-Omni kits row (only when host ≥100GB) + Skip ghost btn.

Tier card states: recommended (★) / available / not enough RAM (greyed ≥50% opacity) / installed (chip when re-entered) / gated-no-HF (warning).

Tweak switches grid (BundleGrid) vs matrix (BundleTable).

Confirm state — per-slot install list (slot → model → size → tag) + NPU trio opt-in toggle (separate card) + Notes + [Cancel] [Install hal0-<tier>].

Progress state — per-row download bars (name + repo + pct + done/total + rate + ETA). Per-row inline error form: ✗ failed · error: <reason> · [Retry] [Skip this model]. Copy: "downloads continue in background." Buttons [Open dashboard] [Pause all].

SkipBundleDialog confirms before route-out (seeded slots get Configure btns; picker re-runnable from Settings). Picker reachable at /firstrun post-install with replacement-warning banner.

Banners: re-entered-post-install, RAM-below-Lite, no-hardware-detected, HF_TOKEN-required, disk-full-mid-download, lemond-crashed-during-install.

Acceptance criteria

  • All tier card states render: recommended / available / below-RAM / installed / gated-no-HF
  • Both layout variants (grid + matrix) render via tweak
  • Skip confirm dialog + re-entered banner show correctly
  • Per-row install error → Retry + Skip-this-model inline
  • Post-install hands off to Dashboard hero variant
  • Playwright spec walks full happy path + skip path

Blocked by

Metadata

Metadata

Assignees

No one assigned

    Labels

    dashboard-v2Dashboard v2 rewrite (issue #148)enhancementNew feature or requestv0.2.1v0.2.1 release scope

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions