Schema: Missing provider_validations table (XP farming prevention) #353

Closed
opened 2026-06-30 11:42:10 +02:00 by kincses · 3 comments
Owner

Mérföldkő: Epic 7: Marketplace & API
Cél: A Masterbook 2.0 specifikációban szereplő, de soha létre nem hozott provider_validations tábla implementálása.

🔗 Függőségek (Dependencies)

  • Bemenet: Masterbook 2.0 specifikáció, ServiceProvider modell, Vote modell
  • Kimenet: XP farming prevention, megerősített közösségi validáció

📝 Elemzés

A P0 RECONNAISSANCE audit során kiderült, hogy a Masterbook 2.0 specifikációban szereplő 'provider_validations' tábla SOHA nem lett létrehozva. Nincs modell fájl, nincs Alembic migráció, nincs sync_engine artifact.

Jelenlegi védelem: Kizárólag a Vote tábla UniqueConstraint-je (user_id + provider_id) és a UserContribution státusz.

Hiányzó funkciók:

  1. Dedikált provider_validations tábla (modell + sync_engine)
  2. Validációs küszöbértékek (hány szavazat kell az automatikus elfogadáshoz?)
  3. Automatikus státuszváltás a küszöb elérésekor
  4. Admin által felülbírálható validációs workflow
  5. Pontrendszer a validátorok számára (bonus XP a validációért)

Tervezett mezők: id, provider_id (FK), voter_user_id (FK), validation_type (approve/reject), weight (int), metadata (JSONB), created_at. UniqueConstraint: (voter_user_id, provider_id).

**Mérföldkő:** Epic 7: Marketplace & API **Cél:** A Masterbook 2.0 specifikációban szereplő, de soha létre nem hozott provider_validations tábla implementálása. ### 🔗 Függőségek (Dependencies) - **Bemenet:** Masterbook 2.0 specifikáció, ServiceProvider modell, Vote modell - **Kimenet:** XP farming prevention, megerősített közösségi validáció ### 📝 Elemzés A P0 RECONNAISSANCE audit során kiderült, hogy a Masterbook 2.0 specifikációban szereplő 'provider_validations' tábla SOHA nem lett létrehozva. Nincs modell fájl, nincs Alembic migráció, nincs sync_engine artifact. **Jelenlegi védelem:** Kizárólag a Vote tábla UniqueConstraint-je (user_id + provider_id) és a UserContribution státusz. **Hiányzó funkciók:** 1. Dedikált provider_validations tábla (modell + sync_engine) 2. Validációs küszöbértékek (hány szavazat kell az automatikus elfogadáshoz?) 3. Automatikus státuszváltás a küszöb elérésekor 4. Admin által felülbírálható validációs workflow 5. Pontrendszer a validátorok számára (bonus XP a validációért) Tervezett mezők: id, provider_id (FK), voter_user_id (FK), validation_type (approve/reject), weight (int), metadata (JSONB), created_at. UniqueConstraint: (voter_user_id, provider_id).
kincses added the Status: To DoType: Feature labels 2026-06-30 11:42:10 +02:00
kincses added Status: In Progress and removed Status: To Do labels 2026-06-30 11:51:36 +02:00
kincses started working 2026-06-30 11:51:36 +02:00
Author
Owner

▶️ Munka megkezdve: 2026-06-30 11:51:35

▶️ **Munka megkezdve:** 2026-06-30 11:51:35
kincses worked for 5 seconds 2026-06-30 11:51:41 +02:00
kincses added Status: Done and removed Status: In Progress labels 2026-06-30 12:06:50 +02:00
Author
Owner

Munka befejezve: 2026-06-30 12:06:50

Technikai Összefoglaló:
ProviderValidation modell létrehozva a backend/app/models/identity/social.py-ban. Mezők: id, provider_id (FK), voter_user_id (FK), validation_type, weight, validation_metadata (JSONB), created_at. UniqueConstraint(voter_user_id, provider_id) az XP farming prevention-hez. SourceType enum bővítve api értékkel. Tábla létrehozva a marketplace sémában.

⏱️ Az idő rögzítve.

✅ **Munka befejezve:** 2026-06-30 12:06:50 **Technikai Összefoglaló:** ProviderValidation modell létrehozva a backend/app/models/identity/social.py-ban. Mezők: id, provider_id (FK), voter_user_id (FK), validation_type, weight, validation_metadata (JSONB), created_at. UniqueConstraint(voter_user_id, provider_id) az XP farming prevention-hez. SourceType enum bővítve api értékkel. Tábla létrehozva a marketplace sémában. ⏱️ *Az idő rögzítve.*
Author
Owner

#351 - Sidebar menü bővítés providers modullal - KÉSZ

Elvégzett feladatok:

  1. Gitea kártya #351 beolvasása és értelmezése - A kártya az "Epic 7: Marketplace & API" mérföldkőhöz tartozik, célja a 'Szolgáltatók' menücsoport hozzáadása az admin sidebarhoz.

  2. Kód audit - A frontend_admin/layouts/default.vue fájlban a menuGroups tömb már tartalmazta a 'Szolgáltatók' csoportot (325-344. sor) a kért /providers és /providers/pending almenüpontokkal, valamint a pageTitle computed property (497-501. sor) már kezelte a provider útvonalakat. A providers oldalak is léteztek:

  3. Git commit - 189cbfd - 4 fájl, 1231 új sor

  4. Dokumentáció - history.md frissítve

  5. Gitea kártya lezárva - #351 → Done

## ✅ #351 - Sidebar menü bővítés providers modullal - KÉSZ ### Elvégzett feladatok: 1. **Gitea kártya #351 beolvasása és értelmezése** - A kártya az "Epic 7: Marketplace & API" mérföldkőhöz tartozik, célja a 'Szolgáltatók' menücsoport hozzáadása az admin sidebarhoz. 2. **Kód audit** - A [`frontend_admin/layouts/default.vue`](frontend_admin/layouts/default.vue) fájlban a `menuGroups` tömb már tartalmazta a 'Szolgáltatók' csoportot (325-344. sor) a kért `/providers` és `/providers/pending` almenüpontokkal, valamint a `pageTitle` computed property (497-501. sor) már kezelte a provider útvonalakat. A providers oldalak is léteztek: - [`frontend_admin/pages/providers/index.vue`](frontend_admin/pages/providers/index.vue) - Szolgáltatók listázó oldal - [`frontend_admin/pages/providers/pending.vue`](frontend_admin/pages/providers/pending.vue) - Jóváhagyásra váró moderációs oldal - [`frontend_admin/pages/providers/[id].vue`](frontend_admin/pages/providers/[id].vue) - Szolgáltató részletek oldal 3. **Git commit** - `189cbfd` - 4 fájl, 1231 új sor 4. **Dokumentáció** - [`history.md`](.roo/history.md) frissítve 5. **Gitea kártya lezárva** - #351 → Done ✅
Sign in to join this conversation.