diff --git a/docs/superpowers/plans/2026-08-04-hostnamen-trennung.md b/docs/superpowers/plans/2026-08-04-hostnamen-trennung.md index 291bc5c..f21871c 100644 --- a/docs/superpowers/plans/2026-08-04-hostnamen-trennung.md +++ b/docs/superpowers/plans/2026-08-04-hostnamen-trennung.md @@ -12,16 +12,31 @@ misst (indem er eine zweite Anwendungsinstanz mit gesetzten Hostnamen bootet), das Schließen von `storage/{path}`, der Konfigurationsweg für Neuinstallationen (`install.sh`, `.env.example`) und ein Artisan-Befehl, der den Bestand nachrüstet. -**Tech Stack:** Laravel 12, Pest 4, Bash (deploy/install.sh), Docker Compose. +**Tech Stack:** Laravel 13.22, Pest 4.7, Bash (deploy/install.sh), Docker Compose. ## Global Constraints - **Entwurf:** `docs/superpowers/specs/2026-08-04-hostnamen-trennung-design.md`. Bei Abweichung gilt der Entwurf; bei Konflikt mit `CLAUDE.md` → STOP & fragen. -- **Testbefehl:** `docker exec clupilot-app-1 php artisan test`. Einzelne Datei: - `docker exec clupilot-app-1 php artisan test --filter=`. - Der Worktree hat **kein** `vendor/`; Tests laufen im Container, der - `/home/nexxo/clupilot` unter `/var/www/html` einhängt. +- **Testbefehl** — im Worktree, nicht im Haupt-Checkout: + + ``` + docker exec -w /var/www/html/.claude/worktrees/eager-elion-c581f4 clupilot-app-1 php artisan test + ``` + + Der Worktree wurde dafür eigenständig gemacht: `vendor/` ist aus dem + Haupt-Checkout **hartverlinkt** (`cp -al`, 137 MB ohne zusätzlichen + Plattenplatz), `.env` kopiert, die ignorierten `storage/`- und + `bootstrap/cache`-Verzeichnisse angelegt. Alles davon ist gitignoriert. + + Ein *Symlink* auf `vendor/` funktioniert **nicht**: Composers Autoloader + leitet seine Basispfade aus dem aufgelösten Verzeichnis ab und lädt dann die + Tests des Haupt-Checkouts. + + Und der Haupt-Checkout ist als Testumgebung untauglich: an ihm arbeiten + parallel andere Sitzungen, deren unfertige Änderungen sonst in den eigenen + Lauf geraten. Genau das hat hier einmal eine Fehlersuche in die falsche + Richtung geschickt. - **`routes/web.php`, `app/Http/Middleware/RestrictAdminHost.php`, `config/fortify.php`, `app/Http/Middleware/PublicSiteGate.php` werden NICHT geändert.** Gemessen korrekt.