feat: startup health check during splash screen (v1.7.20)
- Add ?action=health_check PHP endpoint (early-exit, before rate-limiter) Checks: PHP version, required extensions, data/ writability, SQLite DB connection + table integrity, .env file, Gemini AI key, Bring! token - Display animated checklist in splash screen with per-item icons (ok/warn/error); critical failures block app launch with clear error message and Retry button; optional warnings shown but don't block - New JS: _runStartupCheck(), _startupRetry(); called first in _initApp() - New HTML elements in #app-preloader: #preloader-checks, #preloader-error-msg, #preloader-retry-btn (hidden until startup check completes) - New CSS: .preloader-checks, .preloader-check-row, .preloader-error-msg, .preloader-retry-btn with state colors (ok=green, warn=amber, error=red) - Translations: startup.* keys (10 per language) in IT, EN, DE, FR, ES - Asset version bump: v=20260520a
This commit is contained in:
@@ -11,6 +11,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
- **Recipe scraps tips** — During cooking steps, detect "waste" generated (peels, cores, bones, eggshells, coffee grounds, citrus zest, etc.) and surface AI-powered tips on how to reuse them (compost, natural cleaner, broth, candied peel, etc.). Could be shown as an optional collapsible hint card below the step that generates the scrap.
|
||||
|
||||
## [1.7.20] - 2026-05-20
|
||||
|
||||
### Added
|
||||
- **Startup health check** — During the splash screen, the app now runs a comprehensive server-side diagnostic before loading: PHP version, required extensions (pdo_sqlite, curl, mbstring, json), `data/` directory writability, SQLite database connection and table integrity, `.env` file presence, Gemini AI key and Bring! token. Results are displayed as an animated checklist (✅ / ⚠️ / ❌). Critical failures (DB, extensions, data dir) block the app with a clear error message and a "Retry" button — the app never starts silently broken. Non-critical warnings (missing Gemini key, Bring! token) are shown as amber items but do not block startup.
|
||||
- New `?action=health_check` PHP endpoint (early-exit, no rate-limit, no auth).
|
||||
- New translation keys `startup.*` in all 5 languages (IT, EN, DE, FR, ES).
|
||||
|
||||
## [1.7.19] - 2026-05-19
|
||||
|
||||
### Added
|
||||
|
||||
Reference in New Issue
Block a user