Skip to content

fix(desktop): make v0.6 Leptos dashboard viewable#56

Merged
huximaxi merged 1 commit into
mainfrom
fix/tauri-dashboard-viewable
May 26, 2026
Merged

fix(desktop): make v0.6 Leptos dashboard viewable#56
huximaxi merged 1 commit into
mainfrom
fix/tauri-dashboard-viewable

Conversation

@huximaxi
Copy link
Copy Markdown
Owner

Summary

Three fixes surfaced during a local dogfood of the v0.6 loci wizard dashboard (2026-05-26). All three are cases of manifests lagging the Leptos migration — the documented entry point (npm run tauri:dev) never actually worked, and when forced through, the dashboard rendered empty with no error.

  • Boot path: before{Dev,Build}Command used cd ../src-leptos, but npm run tauri:dev runs from desktop/, so the path resolved to a nonexistent loci/src-leptos. Corrected to cd src-leptos. The documented dev invocation now boots.
  • camelCase args: read_cron_states / read_handovers / start_state_watcher expect palacePath (Tauri v2 wire convention), but the frontend arg structs serialized snake_case palace_path. The watcher surfaced the error; the two reads swallowed it via unwrap_or_default, rendering an empty dashboard. Added #[serde(rename_all = "camelCase")].
  • Resizable window: was a fixed 680x520. Now 1200x860, min 720x520, resizable — the full cron-states + handovers tables fit on one page.

Scope

This is the "able to view" slice only. Known follow-ups deliberately left for a Phase-3.5 hardening pass (tracked separately):

  • start_state_watcher watches <root>/cron instead of <root>/_palace/cron (live-refresh banner still shows; static read works)
  • schema-manifest panel unwired (read_manifest exists + tested, frontend never calls it)
  • wrong-folder selection crashes the WASM frontend instead of rejecting gracefully

Test plan

  • npm run tauri:dev boots from desktop/ (was broken)
  • Dashboard populates against /Users/eris/Dev (40 cron jobs, handovers, CIQ 89.5)
  • Builds under both /opt/anaconda3 and /usr/bin/python3 paths (n/a — Rust/trunk only)
  • Window resizes to fit full dashboard
  • Reviewer confirms no regression on the onboarding/setup flow

🤖 Generated with Claude Code

…ry point

Three fixes surfaced by local dogfood 2026-05-26, all "manifests lag the
Leptos migration":

- tauri.conf.json: correct before{Dev,Build}Command paths to `cd src-leptos`
  (was `../src-leptos`). npm runs the script from desktop/, so the relative
  path resolved to a nonexistent loci/src-leptos and the documented
  `npm run tauri:dev` never booted.
- dashboard.rs: add #[serde(rename_all = "camelCase")] to PathArg +
  HandoversArg so read_cron_states / read_handovers / start_state_watcher
  receive `palacePath` (Tauri v2 wire convention expects camelCase).
  Without it the reads failed and were swallowed by unwrap_or_default,
  rendering an empty dashboard with no error.
- tauri.conf.json: window now resizable (1200x860, min 720x520) so the full
  dashboard fits on one page instead of a fixed 680x520.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@huximaxi huximaxi merged commit a0db2f6 into main May 26, 2026
2 checks passed
@huximaxi huximaxi deleted the fix/tauri-dashboard-viewable branch May 26, 2026 19:41
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