# Nächste Schritte (Kurzplan) Dieser Kurzplan macht die Top-Prioritäten aus `docs/tasks.md` sofort umsetzbar. Er ist so geschrieben, dass du ihn Schritt für Schritt abarbeiten kannst. Jeder Schritt verweist auf die detaillierten Aufgaben in `docs/tasks.md`. Hinweis: Befehle lokal ausführen; Projekt nutzt Docker. Siehe auch „Project Guidelines“ im Repository. ## Heute (Setup & Checks) - [ ] Abhängigkeiten installieren und Basis-Checks ausführen - [ ] Composer-Install: `composer install` - [ ] Docker Images bauen: `./build.sh` - [ ] Stack starten: `docker-compose up -d` - [ ] Healthcheck: App erreichbar unter http://localhost:${APP_PORT:-8000} - [ ] Grundchecks lokal laufen lassen - [ ] Linter (sofern konfiguriert): `composer cs` - [ ] PHPStan: `composer phpstan` - [ ] Tests: `./vendor/bin/pest` Siehe: tasks.md → 1 (Baseline), 2 (CI/CD), 3 (Static Analysis), 15 (Testing) ## Als Nächstes (Kurzzyklus, 1–2 Tage) - [ ] Static Analysis schärfen (tasks.md → Punkt 3) - [ ] Selektiv `declare(strict_types=1);` in Hot-Paths ergänzen (z. B. src/Framework/Http/*, src/Framework/Config/*) - [ ] PHPStan auf aktueller Codebasis „sauber“ bekommen (Fehler beheben statt pauschal ignorieren) - [ ] Baseline überprüfen und ggf. reduzieren - [ ] Kritische Tests ergänzen (tasks.md → Punkte 10, 11, 14, 15) - [ ] HTTP: Tests für HttpRequest/Query, Fehlerpfade, Middleware-Kette - [ ] Feature Flags: Tests für CacheFeatureFlagRepository inkl. Negative Caching Verhalten - [ ] WAF/Rate Limiting: Basisfälle & Fehlerszenarien abdecken ## Diese Woche (3–5 Tage) - [ ] CI/CD-Pipeline aufsetzen/härten (tasks.md → Punkt 2) - [ ] Jobs: Lint, PHPStan, Pest, `composer audit` - [ ] Optional: Coverage (XDEBUG_MODE=coverage) mit Minimal-Schwelle - [ ] Pre-commit Hooks (z. B. CaptainHook) lokal aktivieren - [ ] Konfiguration & Secrets zentralisieren (tasks.md → Punkt 5) - [ ] `.env.example` prüfen/ergänzen (fehlende Keys, Defaults) - [ ] Boot-time Validierung sicherstellen (ConfigValidator bereits integriert) - [ ] Secrets über ENV/Secret Store, nicht im Repo - [ ] Observability-Basis (tasks.md → Punkte 6, 8) - [ ] Strukturierte Logs & Metriken-Events (Cache Hit/Miss/Errors) definieren - [ ] Einfache Zähler/Timer an kritischen Stellen einhängen ## Konkrete, kleine Fixes (Schnelle Gewinne) - [ ] Feature Flags Negative-Caching absichern (tasks.md → 20) - [ ] Prüfen, dass der Marker (`NOT_FOUND`) nicht mit echten Werten kollidiert; ggf. Sentinel-ValueObject einführen - [ ] View Cache nicht einchecken (tasks.md → 13, 20) - [ ] Sicherstellen, dass `src/Framework/View/cache/*` in `.gitignore` ausgeschlossen ist ## Validierung nach Umsetzung - [ ] Alle Checks lokal: `composer cs && composer phpstan && ./vendor/bin/pest && composer audit` - [ ] Docker-Stack Neustart: `docker-compose restart` - [ ] Manuelle Smoke-Tests der wichtigsten Endpunkte ## Entscheidungspunkte (bitte festlegen) - [ ] Bevorzugtes CI-System (GitHub Actions, GitLab CI, …)? - [ ] Minimal abzudeckende Coverage-Schwelle (z. B. 40% initial)? - [ ] Ziel-PHPStan-Level kurzfristig (8 → 9)? --- Kurzlinke Referenzen: - CI/CD → tasks.md §2 - Static Analysis → tasks.md §3 - HTTP Layer → tasks.md §10 - Feature Flags → tasks.md §11 & §20 - WAF/Rate Limiting → tasks.md §7 - Konfiguration/Secrets → tasks.md §5 - Observability → tasks.md §6 & §8