v1.48.0 (2026-04-04)
Features
-
Replacement risk scoring system (#424) - Closes #358
- SMART attribute-level risk weights for ATA, NVMe, and SCSI drives
- Trend analysis using 30-day rate-of-change data
- Replacement risk score and category displayed on device detail page
- Risk badge on dashboard device cards
- Configurable notifications when drives enter a risk category
-
Release schedule system (#406)
- GitHub Project board routing via
project-router.yaml - YAML-based issue templates replacing markdown templates
- Manual-only release workflow trigger
- GitHub Project board routing via
Bug Fixes
- Collector: Use
device_idinstead of WWN for SMART submission API calls, with automatic WWN fallback (#405) - Collector: Prevent cron bomb from accumulating collector processes (#369)
- Collector: Treat smartctl exit codes 0x04, 0x40, and 0x80 as non-fatal (#355, #356)
- Docker: Add AppArmor profile and detection for TrueNAS/Docker (#362)
- Database: Add migration to seed Uptime Kuma settings (#351)
- Frontend: Use isMobile instead of missing
md:Tailwind responsive classes - Security: Pin trivy-action to SHA for v0.35.0
- Lint: Address golangci-lint errors from CI
Dependencies
- Go: Bump golang from 1.25 to 1.26
- Go modules: gin 1.12.0, gorm 1.31.1, paho.mqtt 1.5.1, uuid 1.6.0, cli/v2 2.27.7, logrus 1.9.4, color 1.19.0, ghw 0.23.0, lo 1.53.0, prometheus/client_golang 1.23.2
- Frontend: apexcharts 5.x, ng-apexcharts 2.x, Angular 21.2.x, zone.js 0.16.1, dompurify 3.3.3
CI/CD
- Bump actions/checkout to v6, actions/setup-go to v6, docker/build-push-action to v7, docker/setup-buildx-action to v4, SonarSource/sonarqube-scan-action to v7, aquasecurity/trivy-action to v0.35.0
Code Quality
- Address SonarQube code quality issues (#388)