refactor(config): remove runtime config files and centralize route/bootstrap
This commit is contained in:
@@ -5,7 +5,7 @@ Letzte Aktualisierung: 2026-03-25
|
||||
## Kurzfassung
|
||||
|
||||
- **Source of truth ist immer die Tabelle `settings` in der Datenbank.**
|
||||
- `config/settings.php` ist nur ein **Teil-Cache** für wenige, sehr häufig gelesene UI-Basiswerte.
|
||||
- `storage/runtime/settings.php` ist nur ein **Teil-Cache** für wenige, sehr häufig gelesene UI-Basiswerte.
|
||||
- Nicht alle Settings müssen oder sollen im Datei-Cache stehen.
|
||||
|
||||
## Warum es beides gibt
|
||||
@@ -17,7 +17,7 @@ Die Kombination ist bewusst so gebaut:
|
||||
- Validierung und Schreiblogik laufen über domänenspezifische Gateways und `AdminSettingsService`.
|
||||
|
||||
2. **Datei-Cache für Hot-Path-Reads**
|
||||
- `config/settings.php` wird durch `SettingCacheService` geschrieben.
|
||||
- `storage/runtime/settings.php` wird durch `SettingCacheService` geschrieben.
|
||||
- Verwendet wird er über `appSetting(...)` nur für globale Basiswerte wie:
|
||||
- `app_title`
|
||||
- `app_locale`
|
||||
@@ -36,7 +36,7 @@ Sicherheits- oder Integrationswerte werden direkt aus DB gelesen, z. B.:
|
||||
- User-Lifecycle-Policies (`user_inactivity_deactivate_days`, `user_inactivity_delete_days`)
|
||||
- Scheduler-/Job-Konfiguration (`scheduled_jobs`, `scheduled_job_runs`)
|
||||
|
||||
Daher ist es korrekt, wenn diese Werte in `settings` (DB) vorhanden sind, aber nicht in `config/settings.php`.
|
||||
Daher ist es korrekt, wenn diese Werte in `settings` (DB) vorhanden sind, aber nicht in `storage/runtime/settings.php`.
|
||||
|
||||
## Laufzeitfluss
|
||||
|
||||
|
||||
Reference in New Issue
Block a user