Matt
039ac6f9d3
feat: add PBS datastore management and harden macOS keychain storage
...
Add Proxmox Backup Server datastore management: overview, datastore detail, download/prune/verify/GC dialogs, usePbs hook, backend commands, and tests.
Fix macOS keychain re-writes failing with 'item already exists': replace keyring 3 with keyring-core plus per-platform stores (macOS Keychain, Windows Credential Manager, Linux keyutils), recover by deleting the stale item and retrying once, and surface actionable messages for locked keychains.
2026-08-13 01:02:33 +00:00
Matt
5960102489
fix: tolerate Proxmox numeric string APIs and refine VM list
2026-08-12 20:52:49 +00:00
Matt
6a0bf72cb5
fix: correct API endpoint paths for authentication and token validation
2026-08-12 10:00:23 +00:00
Matt
37fd204223
fix: detect Tauri v2 runtime correctly
2026-08-11 20:29:37 +00:00
Matt
20dd2dc449
feat: add marketing site and expand Proxmox management features
2026-08-10 14:33:06 +00:00
Matt
27b9aeb45e
chore: rename app from ProxmoxDesktop to Clustri
2026-08-10 00:00:59 +00:00
Matt
190fdb2573
feat: add cluster discovery, failover, VM management, and console support
2026-08-09 23:01:51 +00:00
Matt
7bb3ba48f0
Fix Rust derive attribute ordering: move #[serde] after #[derive]
...
The legacy_derive_helpers lint requires derive helper attributes
(like #[serde(...)]) to appear AFTER the #[derive(...)] that
introduces them, not before. Swapped ordering on all 27 structs
in proxmox.rs and lib.rs.
2026-07-29 19:42:05 +00:00
Matt
3aceaca2e1
Fix TypeScript compilation: remove deprecated baseUrl, add missing imports, fix type narrowing
...
- Remove deprecated baseUrl from tsconfig.app.json (TS 6.0 error)
- Add missing AlertCircle and Button imports in Dashboard.tsx
- Cast Sidebar onNavigate arg to fix View type mismatch
tsc exits 0, vite build exits 0
2026-07-29 19:39:17 +00:00
Matt
9ad7fc85bd
Fix 21 bugs: build failures, broken pages, IPC mismatches, and missing error handling
...
Critical fixes:
- Add esbuild dependency and fix Vite build target (safari13 → es2022)
- Fix StorageDetail always failing (null node parameter)
- Fix VNC/Terminal console stuck on 'Connecting...' (add onConnected callback)
- Fix Ctrl+Alt+Del not working (add data-vnc attribute and event listener)
- Add serde(rename_all='camelCase') to all 27 Rust structs crossing IPC
- Fix login methods returning empty connection_id (generate from URL hash)
- Fix add_connection not storing connections in HashMap
- Fix keyring_entry panicking on failure (replace expect with map_err)
High-severity fixes:
- Fix refresh_ticket reading wrong keyring entry for username
- Add onError handlers to all 23 mutations (toast notifications)
- Fix stale closure on activeConnectionId (use getState() instead)
- Fix WebSocket listener teardown race condition
- Add WebSocket reconnection retry limit (max 10 attempts)
Medium-severity fixes:
- Add Settings navigation to CommandPalette (Cmd+K)
- Disable dead Nodes/Containers sidebar items
- Wire up HardwareTab save button with warning toast
- Wire up QuickActions navigation buttons
- Add Dashboard error state (was stuck on 'Loading...')
- Add default case to App.tsx view switch
- Extract formatBytes/formatUptime/formatNetworkRate to shared utility
- Fix formatBytes negative input bug
32 files changed, 1073 insertions(+), 356 deletions(-)
2026-07-29 19:35:37 +00:00
Matt
535ba5e189
Add Tauri v2 capabilities for event.listen and shell permissions
...
Without a capabilities file, Tauri v2 denies event.listen by default,
causing the WebSocket hook to fail and preventing data loading.
2026-07-29 18:35:05 +00:00
Matt
72105a7085
Fix keyring Entry::new_with_target argument count
2026-07-29 18:31:50 +00:00
Matt
dbe3c8d2a1
Add username/password login with keyring-backed credential storage
...
- Dual-mode auth dialog: username/password (default) + API token fallback
- Proxmox ticket-based auth via POST /access/ticket
- OS keyring integration for secure credential persistence
- Auto-open login dialog on launch when unauthenticated
- Auth state tracking with auto-refresh support
2026-07-29 18:27:27 +00:00
Matt
e675d7b6af
Initial commit
2026-07-29 13:47:45 +00:00