Files
service-finder/.roo/rules-code/fast-coder.md
2026-06-04 07:26:22 +00:00

45 lines
3.7 KiB
Markdown
Executable File

# 💻 Service Finder Core Developer (Fast Coder) Protokoll
## ⚡ Implementációs Irányelvek
1. **Surgical Coding:** Csak a `logic_spec_*.md` fájlban kijelölt részeket módosítsd. Használd a FastAPI best practice-eket.
2. **Adatbázis Műveletek:** - Generáld le az Alembic migrációt.
- Ellenőrizd a Twin-technika és Soft-delete érvényesülését.
3. **Admin Integráció:** Minden új entitásnak kezelhetőnek kell lennie az admin felületről (szintek szerinti engedélyezés).
4. **Validáció:** A kód akkor sikeres, ha az adatbázis manipuláció (CRUD) és a futás ellenőrzése hibátlan.
## 📝 Naplózás és Tesztelés
- Minden folyamatot dedikált log fájlokba naplózz.
- A kód elkészítése után futtass ellenőrzést. Ha hiba van, jelezd a Debuggernek vagy kérj segítséget az Architecttől.
## 🌐 Frontend Fejlesztési és Távoli Tesztelési Protokoll (KÖTELEZŐ)
A frontend (Vue 3 / Vite) fejlesztése során SZIGORÚAN TILOS helyi böngészős tesztelést vagy helyi hálózati pingelést szimulálni. A tesztelés kizárólag a távoli, Headless Chrome szerveren keresztül történhet.
1. **A Vite Szerver Indítása:** Amikor UI kódot módosítasz, és tesztelni kell, a helyi fejlesztői szervert úgy kell elindítanod, hogy a külső tesztgép lássa:
`npm run dev -- --host 0.0.0.0`
2. **A Távoli E2E Teszt (Playwright) Indítása:**
A teszteléshez futtasd a Playwright-ot a projekt frontend mappájában:
`npx playwright test`
*(A rendszer már be van állítva, hogy a WebSocket kapcsolaton keresztül a `faktor01` szerver 3030-as portját használja a teszteléshez).*
3. **Teszt Értékelése:**
- Ha a teszt zöld (Pass), a kód mehet tovább a Gitea jegy lezárása felé.
- Ha a teszt elbukik (Fail), kötelező beolvasnod a Playwright által generált hibaüzeneteket és képernyőfotókat (screenshots) a `test-results/` mappából, mielőtt kódot módosítanál.
## 🔍 Hibakeresési Protokoll (Debug Protocol)
Soha ne találgass! A hibakeresés tényalapú és szisztematikus. Ha valami nem működik, tilos azonnal átírni a kódot. Előbb diagnosztizálj!
### A Hibakeresés Kötelező Lépései:
1. **Log-First Megközelítés:** Első lépés mindig a konténer logjainak lekérése: `docker logs --tail 100 -f <konténer_neve>`.
- Ha teljesítményprobléma gyanús, ellenőrizd a `docker stats` kimenetét.
2. **Környezeti Audit (Sync Check):**
- Ha a logok szerint a módosított kód nem frissült, AZONNAL ellenőrizd a `docker-compose.yml` volume beállításait.
- Ha a kód "be van sütve" (COPY), használd a `docker compose up -d --build <szolgáltatás>` parancsot a frissítéshez.
3. **SQL Trace & Adatbázis Audit:**
- Adatbázis hiba (pl. SQLAlchemy Exception) esetén az első lépés a táblaséma lekérdezése (Constraints, Indexes) a PostgreSQL konténerből, nem pedig a Python kód átírása.
## ⚡ Gyors API Fejlesztés (Rapid API Wiring)
- **Pydantic Validáció:** Minden bemeneti/kimeneti adathoz használj Pydantic modelleket (`BaseModel`). A validáció legyen részletes és tartalmazza a custom validátorokat a domain szabályokhoz.
- **Frontend Integráció:** Az API végpontoknak követniük kell a REST konvenciókat és biztosítaniuk kell a frontend számára szükséges adatokat (pl. pagination, filtering, sorting). Használd a `fastapi.Query`, `fastapi.Path`, `fastapi.Body` paramétereket.
- **Aszinkron Műveletek:** Minden I/O művelet legyen `async` és `await`-el hívd meg a megfelelő service függvényeket.
- **Hibakezelés:** Használd a `HTTPException`-t specifikus státuszkódokkal és részletes hibaüzenetekkel. Naplózd a hibákat a rendszer loggerén keresztül.