diff --git a/.agents/AGENTS.md b/.agents/AGENTS.md index e846d4e..ebbb0a6 100644 --- a/.agents/AGENTS.md +++ b/.agents/AGENTS.md @@ -3,7 +3,7 @@ Queste regole definiscono il comportamento per tutti gli sviluppi futuri su questa repository, al fine di mantenere l'architettura pulita e scalabile. 1. **Dependency Injection Obbligatoria (IoC)** - Non utilizzare mai chiamate a metodi statici per accedere a servizi o configurazioni (es. evitare `Config::get()` o `HttpClient::get()`). + Non utilizzare mai chiamate a metodi statici per accedere a servizi o configurazioni (es. evitare `Config::get()` o `HttpClient::get()`). Tutte le dipendenze devono essere iniettate tramite costruttore. Il container in `bootstrap.php` provvederà all'autowiring automatico. 2. **Namespace e Struttura dei Controller** @@ -22,52 +22,3 @@ Queste regole definiscono il comportamento per tutti gli sviluppi futuri su ques 6. **Routing API e prefissi di versione** Le route devono essere registrate senza il prefisso `/api` e senza il prefisso di versione (es. usare `/users` invece di `/api/users` o `/api/v1/users`). Il router deve normalizzare i percorsi in ingresso rimuovendo il prefisso `/api` prima di confrontarli con le route registrate, così richieste come `/api/users` e `/api/v1/users` continuano a funzionare. - ---- - -# Debug API PHP con VS Code e Docker - -Questa sezione descrive la procedura per fare debug delle API PHP servite da Docker in questa repository. - -## Passaggi - -1. Avvia il container Docker dalla root del progetto: - ```bash - docker compose up --build - ``` - -2. Apri Visual Studio Code e vai su "Run and Debug". - -3. Seleziona la configurazione: - ```text - Debug PHP in Docker - ``` - -4. Premi F5 per avviare il debugger. - -5. Imposta un breakpoint in un controller, ad esempio in: - ```text - src/Api/Controllers/V1/UsersController.php - ``` - -6. Richiama l’endpoint tramite browser o curl: - ```bash - curl -H "XDEBUG_TRIGGER: 1" http://localhost:8000/api/users - ``` - -## Nota - -Il container deve esporre: -- porta `8000` per HTTP -- porta `9003` per Xdebug - -Il progetto contiene già i file necessari per il debug: -- `.docker/php/Dockerfile` -- `docker-compose.yml` -- `.vscode/launch.json` -- `.vscode/settings.json` - -## Problemi comuni - -- Se VS Code non si ferma sul breakpoint, verifica che Xdebug sia abilitato nel container e che la configurazione `client_host` punti a `host.docker.internal`. -- Se il container non si avvia, controlla che Docker Desktop sia in esecuzione. diff --git a/.agents/skills/debug-api-php-con-vs-code-e-docker/SKILL.md b/.agents/skills/debug-api-php-con-vs-code-e-docker/SKILL.md new file mode 100644 index 0000000..3e32863 --- /dev/null +++ b/.agents/skills/debug-api-php-con-vs-code-e-docker/SKILL.md @@ -0,0 +1,46 @@ +# Debug API PHP con VS Code e Docker + +Questa sezione descrive la procedura per fare debug delle API PHP servite da Docker in questa repository. + +## Passaggi + +1. Avvia il container Docker dalla root del progetto: + ```bash + docker compose up --build + ``` + +2. Apri Visual Studio Code e vai su "Run and Debug". + +3. Seleziona la configurazione: + ```text + Debug PHP in Docker + ``` + +4. Premi F5 per avviare il debugger. + +5. Imposta un breakpoint in un controller, ad esempio in: + ```text + src/Api/Controllers/V1/UsersController.php + ``` + +6. Richiama l’endpoint tramite browser o curl: + ```bash + curl -H "XDEBUG_TRIGGER: 1" http://localhost:8000/api/users + ``` + +## Nota + +Il container deve esporre: +- porta `8000` per HTTP +- porta `9003` per Xdebug + +Il progetto contiene già i file necessari per il debug: +- `.docker/php/Dockerfile` +- `docker-compose.yml` +- `.vscode/launch.json` +- `.vscode/settings.json` + +## Problemi comuni + +- Se VS Code non si ferma sul breakpoint, verifica che Xdebug sia abilitato nel container e che la configurazione `client_host` punti a `host.docker.internal`. +- Se il container non si avvia, controlla che Docker Desktop sia in esecuzione.