Files
service-finder/.roo/rules-code/fast-coder.md

2.6 KiB
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.

🔍 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.