5.9 KiB
5.9 KiB
8. Mérföldkő: Gamification 2.0, Verseny és Önvédelmi Rendszer
Állapot: Tervezés alatt
Kezdés dátuma: 2026-03-15
Befejezés határideje: 2026-04-15 (becsült)
Felelős: Backend Architekt, Gamification Team
🎯 Célok
- A meglévő Gamification rendszer kibővítése szezonális versenyekkel és önvédelmi mechanizmusokkal.
- A Service Finder robot pipeline hibáinak kijavítása (Robot 3, sémaeltérés, hiányzó Auditor).
- A felhasználók által beküldött szervizek biztonságos és ellenőrzött átjuttatása a productionba.
- Moderációs és büntető rendszer bevezetése a spam és rosszindulatú beküldések kezelésére.
📋 Feladatlista
1. Adatbázis & Modell Fázis (Foundation)
- Season tábla: Féléves versenyek tárolása.
id,name,start_date,end_date,is_active- Séma:
system.seasons
- UserContribution tábla: Spam védelem és cooldown kezelés.
user_id,service_fingerprint,action_type,earned_xp,cooldown_end- Séma:
gamification.user_contributions
- UserStats bővítés: Restrikciós szintek és büntető kvóták.
restriction_level(0, -1, -2, -3)penalty_quota_remainingbanned_until- Séma:
system.user_stats(meglévő tábla)
- SystemParameter integráció: Dinamikus küszöbök tárolása.
key:promotion_threshold,xp_reward_base,penalty_multipliervalue: JSON konfiguráció- Séma:
system.system_parameters(meglévő)
2. Worker Refactoring (The Pipeline)
- Robot 3 (Enricher) átírása: Ne publikáljon! Csak növelje a trust_score-t a stagingben a talált szakmák alapján → státusz:
auditor_ready.- Cél: A jelenlegi
researchedstátusz helyettauditor_readylegyen, jelezve, hogy az Auditor feldolgozhatja. - Függőség: Hiányzó Auditor robot (lásd alább).
- Cél: A jelenlegi
- Robot 2 (Auditor) implementálása: Staging → Production átemelés.
- Olvassa ki a küszöböt a
system_parameters-ből. - Ha a trust_score elég magas:
- Organization létrehozása (Digital Twin).
- ServiceProfile létrehozása a staging adatok alapján.
- Státusz átállítás
activevagypending_validation.
- Ha nem igazolható az adat: InternalNotification a moderátoroknak.
- Audit log rögzítése.
- Olvassa ki a küszöböt a
- Séma bővítés: A
service_stagingtáblához hiányzó mezők hozzáadása.contact_phone,website,external_id,contact_email- Migráció: Alembic szkript.
3. Gamification API & Verseny (Logic)
- POST /submit-service: User szint ellenőrzés, 90 napos cooldown check, büntetési szorzók.
- Ellenőrzés:
restriction_levelalapján XP szorzó (-1 szint = 50% XP, -2 szint = 20% XP). - Cooldown:
UserContributiontábla alapján, ugyanazon fingerprint esetén. - XP jutalom:
SystemParameteralapján, korrigálva a büntetési szorzóval.
- Ellenőrzés:
- GET /leaderboard: Szezonális toplista.
- Szezon kiválasztása (
is_active = TRUE). - Rangsorolás: Szezonális XP alapján.
- Adatvédelem: Maszkolt e-mail címek (
a***@domain.com).
- Szezon kiválasztása (
- POST /claim-business: Tulajdonosi igénylés indítása.
- Feltétel:
trust_score ≥ 100ésis_verified = TRUE. - Moderátori jóváhagyás szükséges.
- Jogosultság átadása a kérvényező felhasználónak.
- Feltétel:
4. Moderáció & Admin (Protection)
- Büntető mechanizmus: Ha a Robot 4 vagy moderátor hibás adatot talál → User strike →
restriction_levelcsökkentés.- Strikes tárolása:
gamification.user_strikes. - Automatikus szintcsökkentés: 3 strikes →
restriction_level -1.
- Strikes tárolása:
- Admin funkció: Büntetési kvóták és XP értékek állítása a
SystemParametertáblán keresztül.- Admin UI: Paraméterek szerkesztése (küszöbértékek, szorzók, cooldown idő).
- Moderátori értesítések: InternalNotification rendszer bővítése.
- Értesítési csatornák: email, in-app, push (opcionális).
🗺️ Kapcsolódó Gitea Kártyák
- #76: Hibás Robot 3 (Enricher) – közvetlen publikálás a service_profiles táblába (LEZÁRVA)
- #77: Service Staging tábla hiányzó mezői (contact_phone, website, external_id) (LEZÁRVA)
- #78: Hiányzó Auditor robot a staging -> production átvitelhez (LEZÁRVA)
🔗 Függőségek
- Meglévő rendszer: Gamification API (
/my-stats,/leaderboard,/submit-service), Service robot pipeline (0–4), SystemParameter tábla. - Külső rendszerek: Google Places API (Robot 4), Docker környezet, PostgreSQL adatbázis.
🚀 Megvalósítási Lépések
- Adatbázis migrációk (Alembic) – Season, UserContribution, UserStats bővítés, service_staging mezők.
- Robot refactoring – Robot 3 logika finomhangolása, Robot 2 (Auditor) implementálása.
- API bővítés – Új végpontok, meglévők módosítása (submit-service, leaderboard, claim-business).
- Moderációs rendszer – Strikes kezelés, admin felület integráció.
- Tesztelés – Egységtesztek, integrációs tesztek, teljes pipeline teszt.
- Dokumentáció – API dokumentáció, robot leírások, admin útmutató.
⚠️ Kockázatok
- Adatbázis séma változás: Meglévő adatok migrálása szükséges lehet.
- Robot függőségek: Ha az Auditor robot hibás, a staging adatok felhalmozódnak.
- Teljesítmény: A leaderboard lekérdezés nagy adatmennyiség esetén lassú lehet (indexelés, gyorsítótárazás).
✅ Sikeresség Mérésére
- A staging → production átvitel sikeresen működik (napi X szerviz publikálása).
- A spam beküldések száma csökken (strikes rendszer hatékonysága).
- A felhasználói engagement növekszik (XP, ranglétrák, versenyek).
Ez a dokumentum a projekt gyökerében található, és a 8. mérföldkő tervezési fázisát rögzíti. A tényleges megvalósítás előtt az Architect és a Code csapat felülvizsgálja.