Commit Graph

75 Commits

Author SHA1 Message Date
rcourtman 4fd1e2f83d feat: comprehensive backup system improvements
Major enhancements to backup monitoring accuracy and user experience:

## Core Fixes
- **Fix timestamp precision loss**: PVE/PBS age filtering now shows correct times (17h vs incorrect 36h)
- **Server-side deduplication**: Shared storage backups no longer counted multiple times
- **Client-side deduplication**: Calendar drill-down shows each guest only once per date
- **Clean UI**: Removed redundant backup count numbers when type badges are shown

## Technical Implementation
- Added `latestTimes` object with type-specific timestamps to guest data structure
- Implemented `deduplicateStorageBackups()` function using volid-based deduplication
- Enhanced calendar-heatmap processing to merge duplicate guest entries by vmid
- Updated backup detail card to use direct timestamp lookup instead of date aggregation

## Files Modified
- `server/dataFetcher.js`: Added shared storage deduplication logic
- `src/public/js/ui/backups.js`: Enhanced guest data with type-specific latest times
- `src/public/js/ui/backup-detail-card.js`: Fixed age calculation and removed redundant counts
- `src/public/js/ui/calendar-heatmap.js`: Implemented client-side guest deduplication
- `docs/BACKUP_ARCHITECTURE.md`: Documented pragmatic solution approach

## Result
- Accurate backup ages when filtering by PVE/PBS/Snapshots
- No more duplicate counting from shared storage (NFS, Ceph, etc.)
- Clean calendar view with single guest entries per date
- Foundation for future backup system enhancements

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-08 19:44:15 +01:00
courtmanr@gmail.com bd9a976100 feat: enhance system reliability with DNS resilience and advanced alerting
- Implement resilient DNS resolution for API calls with fallback mechanisms
- Add compound threshold alert rules with multi-metric evaluation
- Enable immediate alert evaluation when rules are enabled
- Add alert rules file watching for dynamic configuration updates
- Improve alert state management with proper resolution handling
- Include comprehensive testing and documentation for DNS features

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-07 15:46:04 +01:00
courtmanr@gmail.com b980344d55 docs: restore screenshot images for README
- Restores docs/images/ directory with all 8 screenshot images
- Images are referenced in README.md for documentation
- Only restoring images (not large PDF files)
- Keeps tarball size reasonable while fixing broken image links
2025-06-02 23:23:27 +01:00
courtmanr@gmail.com 4b53f8d47f chore: remove docs directory with large PDF files
- Removes 22MB of Proxmox documentation PDFs
- Reduces release tarball size from 25MB to ~11MB
- Documentation can be accessed directly from Proxmox sources
2025-06-02 22:00:37 +01:00
courtmanr@gmail.com b58baa9d14 fix: resolve update mechanism issues and add test mode
- Fix download URL property mismatch (downloadUrl vs browser_download_url)
- Add comprehensive error logging for update failures
- Create test mode for update mechanism (UPDATE_TEST_MODE=true)
- Add test script for easy update testing without releases
- Improve restart logic for different deployment environments
- Add tar package dependency for creating update packages
- Update .gitignore to exclude backup and temp directories
- Add documentation for update testing workflow

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-05-31 23:38:08 +01:00
courtmanr@gmail.com e49da4612c feat: improve screenshot timing and update documentation images
- Add 2-second wait time to backup view screenshots for better data loading
- Update all screenshot images with latest UI state
- Remove obsolete backup script file
- Ensure backup data is fully rendered before capturing screenshots

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-05-30 00:31:20 +01:00
courtmanr@gmail.com 3ce8430c10 feat: add storage tab screenshot and unify screenshot layout
- Add storage tab screenshot to complete UI coverage
- Make all desktop screenshots consistent viewport size (1440x900px)
- Update all mobile screenshots to new numbering (06-08)
- Combine desktop and mobile screenshots into single unified section
- Create perfect 2x2 grid layout for desktop views
- Ensure all screenshots use viewport capture for consistency
2025-05-28 11:28:39 +01:00
courtmanr@gmail.com ae0b686ec8 fix: make mobile screenshots consistent viewport size
- Remove fullPage and screenshotTarget from mobile sections
- All mobile screenshots now use viewport capture (430x932px)
- Ensures consistent alignment in README table layout

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-05-28 11:10:54 +01:00
courtmanr@gmail.com 9a31ccd792 feat: add mobile screenshots and enhance screenshot tool
- Add mobile viewport support to screenshot script with iPhone 14 Pro Max dimensions
- Generate mobile screenshots for dashboard, PBS view, and backups view
- Fix chart toggle selector bug (label:has() instead of missing for attribute)
- Reduce screenshot wait times for faster generation
- Update README with new mobile screenshots section
- Refresh all existing desktop screenshots

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-05-28 11:06:40 +01:00
courtmanr@gmail.com db148574db docs: Update screenshots and related script 2025-05-26 23:02:01 +01:00
courtmanr@gmail.com bc6785f52e Fix(screenshots): Remove old numbered screenshot files 2025-05-20 17:04:06 +01:00
courtmanr@gmail.com 625c127973 Fix(screenshots): Update screenshot tool and docs. Remove Node View, adjust targets, implement postAction, renumber files, and update README. 2025-05-20 17:03:41 +01:00
courtmanr@gmail.com 98bf32b895 docs: Update screenshots including threshold/logging 2025-05-04 12:35:51 +01:00
courtmanr@gmail.com 917c22c3f4 Update dashboard screenshot 2025-05-02 11:56:34 +01:00
courtmanr@gmail.com c3bdd83eeb Update node view screenshot 2025-05-02 11:56:32 +01:00
courtmanr@gmail.com fcafdf86d6 Update VM/container view screenshot 2025-05-02 11:56:31 +01:00
courtmanr@gmail.com bed0e89fdc Update PBS view screenshot 2025-05-02 11:56:29 +01:00
courtmanr@gmail.com 3728128ad1 Update backups view screenshot 2025-05-02 11:56:27 +01:00
rcourtman 83092cec39 feat: Add automated screenshot generation script | Implements Playwright script (scripts/take-screenshots.js) to capture UI views. Adds npm run screenshot command. Includes playwright as a dev dependency. Updates README.md to use generated screenshots. (#73) 2025-05-02 10:35:23 +01:00
courtmanr@gmail.com 993262c5da Chore: Untrack feature_ideas and add to gitignore 2025-04-29 23:26:44 +01:00
courtmanr@gmail.com ef228eee25 Fix: Improve table layout and consistency across tabs 2025-04-29 23:24:58 +01:00
courtmanr@gmail.com fa4fea2745 docs: Update dashboard screenshot 2025-04-27 21:03:07 +01:00
courtmanr@gmail.com d807df8930 docs: Update dashboard screenshot again 2025-04-27 20:44:18 +01:00
courtmanr@gmail.com c636213c5f docs: Update dashboard screenshot 2025-04-27 20:42:12 +01:00
courtmanr@gmail.com 0cda1c47b5 docs: Update dashboard screenshot 2025-04-24 21:32:58 +01:00
courtmanr@gmail.com ba9348ec3f docs: update dashboard screenshot 2025-04-21 21:50:27 +01:00
courtmanr@gmail.com d1f6e76263 docs: update dashboard screenshot 2025-04-21 19:46:39 +01:00
courtmanr@gmail.com cffd6d0014 feat: Update dashboard screenshot again 2025-04-21 12:33:30 +01:00
courtmanr@gmail.com 65bf70ac9f Revert: Center logo and remove header divider 2025-04-21 12:31:53 +01:00
courtmanr@gmail.com ca9af453de feat: Update dashboard screenshot 2025-04-21 12:27:08 +01:00
courtmanr@gmail.com 124f04a4ee docs: Add dashboard screenshot to README 2025-04-20 20:27:42 +01:00
courtmanr@gmail.com 3b564fb330 feat: Replace codebase entirely with simplified version 2025-04-20 13:17:10 +01:00
courtmanr@gmail.com f92e6578dc docs: update dashboard screenshots 2025-03-17 16:56:57 +00:00
courtmanr@gmail.com b0701e3076 docs: add documentation for Proxmox HA status implementation 2025-03-17 16:56:57 +00:00
courtmanr@gmail.com ee4768ce95 docs: Update RELEASE.md with explicit package creation steps 2025-03-14 12:45:44 +00:00
courtmanr@gmail.com 9effbc0f6f docs: Update dashboard screenshot 2025-03-14 12:44:08 +00:00
courtmanr@gmail.com 42ea8cfc16 docs: Add Docker multi-architecture build requirements to RELEASE.md 2025-03-14 11:06:38 +00:00
courtmanr@gmail.com 29809b2508 Improve screenshot quality and automation workflow 2025-03-13 16:00:07 +00:00
courtmanr@gmail.com 28b2a12bdf Add CHANGELOG generation and pager handling to release documentation 2025-03-12 22:15:51 +00:00
courtmanr@gmail.com 4d7e606ae3 Fix version label in Dockerfile and streamline release documentation 2025-03-12 22:12:55 +00:00
courtmanr@gmail.com ae2f0032ad Update frontend components and backend services for improved performance and UI 2025-03-12 15:57:50 +00:00
courtmanr@gmail.com f325184523 Update documentation with new features and troubleshooting information 2025-03-12 10:11:34 +00:00
courtmanr@gmail.com 662162eda8 Add cluster detection functionality and mock data documentation 2025-03-10 23:26:09 +00:00
courtmanr@gmail.com ac9eefb254 docs: update RELEASE.md to be more LLM-friendly 2025-03-10 18:12:53 +00:00
courtmanr@gmail.com 7222a23e74 chore: add version automation scripts to prevent release mistakes 2025-03-10 18:09:32 +00:00
courtmanr@gmail.com 2129d8f9e6 Update dashboard screenshot for v1.5.3 2025-03-10 18:04:55 +00:00
courtmanr@gmail.com 04ae0530b7 Fix WebSocket connection issues and improve security in Docker environments 2025-03-10 17:41:37 +00:00
rcourtman 2347c159da docs: add dependency verification step to release checklist 2025-03-10 17:01:19 +00:00
courtmanr@gmail.com 49cfbd8a7f Update RELEASE.md with critical reminders for multi-architecture builds and version file updates 2025-03-10 16:47:50 +00:00
courtmanr@gmail.com 7183c36b27 Fix WebSocket connection issues in both development and production environments 2025-03-10 16:16:50 +00:00