feat: SuperAdmin bootstrap, i18n sync fix and AssetAssignment ORM fix

- Fixed AttributeError in User model (added region_code, preferred_language)
- Fixed InvalidRequestError in AssetAssignment (added organization relationship)
- Configured STATIC_DIR for translation sync
- Applied Alembic migrations for user schema updates
This commit is contained in:
2026-02-10 21:01:58 +00:00
parent e255fea3a5
commit 425f598fa3
51 changed files with 1753 additions and 204 deletions

View File

@@ -101,4 +101,47 @@ A rendszer különválasztja a tekintélyt és a jutalmat:
Minden érték (szorzók, határok) a \`GAMIFICATION_MASTER_CONFIG\` JSON paraméterben állítható Admin felületről, kódmódosítás nélkül.
### 3. Audit
Minden pontmozgás a \`PointsLedger\` táblába kerül rögzítésre a visszakövethetőség érdekében.
Minden pontmozgás a \`PointsLedger\` táblába kerül rögzítésre a visszakövethetőség érdekében.
XP Formula: $XP_{required} = BaseXP \times Level^{1.5}$Penalty Logic: restriction_level bevezetése (0-3).Weighting: Saját adat vs. Közösségi adat súlyozási táblázata.
# 11. Gamification és Social Engine Specifikáció
## 1. XP (Experience Points) - A Tekintély
Az XP a felhasználó végleges, nem csökkenthető tekintélypontja.
- **Képlet:** A szintlépéshez szükséges összes XP:
$$XP_{total} = 500 \times Level^{1.5}$$
- **Súlyozás:**
- **Saját adat (Fleet):** Alacsony érték (pl. 10 XP).
- **Közösségi adat (Service Discovery):** Magas érték (pl. 100 XP).
## 2. Social Points - A Valuta Alapja
Szezonális pontok, amelyek Kreditre válthatóak.
- **Váltószám:** Alapértelmezett: 100 Social Point = 1 Kredit.
- **Váltási mód:** Automatikus (rendszerparaméter alapján) vagy manuális (felhasználói döntés).
## 3. Trust & Penalty Engine (Büntetőrendszer)
A rendszer integritásának védelme érdekében hibapontokat (Penalty Points) alkalmazunk.
- **Szintek (Restriction Level):**
- **0 (Normal):** Teljes pontszorzó (1.0x).
- **1 (Warning):** Csökkentett pontszerzés (0.5x).
- **2 (Restricted):** Szigorú moderátori ellenőrzés minden adatnál, 0.1x pontszerzés.
- **3 (Blocked):** Pontszerzés és adatbeküldés tiltva.
- **Ledolgozás:** Minden pozitív XP szerzés a büntetőpontokat is csökkenti (pl. 1 XP jóváírás = 0.5 Penalty pont levonás).
## 4. Szintlépési Bónuszok
Minden 10. szint elérésekor a rendszer automatikus Kredit jutalmat oszt a `GAMIFICATION_MASTER_CONFIG` alapján.
## 5. Büntetőrendszer (Strike System)
A rendszer integritásának megőrzése érdekében hibapontokat alkalmazunk, amelyek befolyásolják a pontszerzés hatékonyságát.
- **Szorzók (Multipliers):**
- Level 0 (Normal): 1.0x
- Level 1 (Warning): 0.5x
- Level 2 (Restricted): 0.1x
- Level 3 (Blocked): 0.0x
- **Ledolgozás (Recovery):**
A büntetőpontok pozitív aktivitással (XP szerzéssel) ledolgozhatóak. Az elért XP egy admin által meghatározott része (alapértelmezett: 50%) levonásra kerül a büntetőpontokból.
- **Admin-Vezérelt Küszöbök:** Minden szintváltási határ a `GAMIFICATION_MASTER_CONFIG` paraméterben definiált.

View File

@@ -249,4 +249,41 @@ A rendszer most már képes egyetlen KYC folyamat alatt aktiválni a felhasznál
### Changed
- `AssetCost` modell mezőnevek szinkronizálva a pénzügyi standardokhoz (`amount_local`, `amount_eur`).
- `SystemParameter` modell elnevezés igazítva a meglévő adatbázis sémához.
- `SystemParameter` modell elnevezés igazítva a meglévő adatbázis sémához.
## [1.5.0] - 2026-02-10
### Added
- **Judge & Penalty System**: Bevezetve a `penalty_points` és `restriction_level` mechanizmus a visszaélések kiszűrésére.
- **Dynamic Multipliers**: Admin felületről (JSON config) állítható pontszorzók a büntetési szintekhez.
- **Social-to-Credit Auto-conversion**: Automatikus Kredit jóváírás a Walletbe meghatározott Social pont elérésekor.
- **Level Achievement Bonus**: 10-es szintenkénti automatikus Kredit jutalmazás.
### Fixed
- **Circular Dependency Fix**: A modellek közötti import hurok végleges felszámolva (string-alapú relationship hivatkozások).
- **Identity Schema Protection**: Visszaállítva a `User` modell hiányzó `scope_id`, `scope_level` és `custom_permissions` mezői.
- **Database Consistency**: A `user_stats` és `asset_costs` táblák sikeresen migráltak a NOT NULL kényszerek és alapértelmezett értékek (server_default) beállításával.
### Changed
- **GamificationService**: Mostantól központi "Bíróként" funkcionál, leválasztva a pontszámítási logikát a többi szervizről.
- **Identity Model**: A `Wallet` és `VerificationToken` osztályok integrálva az `identity.py` modulba.
# Changelog - Service Finder Backend
**Verzió:** 1.6.0 (Sentinel & i18n Update)
**Dátum:** 2026.02.10.
## [1.6.0] - 2026-02-10
### Hozzáadva
- **Sentinel Biztonsági Rendszer:** - `PendingAction` modell bevezetése a "Négy szem elv" (Dual Control) biztosításához.
- `SecurityService` implementálása: Adatlopás elleni védelem (Throttling) és automata vészleállító (Emergency Lock).
- `AuditLog` bővítése szigorúbb súlyossági szintekkel (`critical`, `emergency`).
- **Nyelvi Modul (i18n):**
- `Translation` modell a `data` sémában.
- `TranslationService`: Adatbázis-alapú fordításkezelés, szerveroldali cache, Fallback (EN) logika és JSON export funkció a Frontend számára.
- **Admin Kontroll Panel:**
- Új API végpontok a függőben lévő műveletek jóváhagyásához, a rendszerbiztonsági állapot monitorozásához és a nyelvi szinkronizációhoz.
### Javítva
- **Circular Import Fix:** A modellek importálási rendjének optimalizálása a `app.db.base_class` közvetlen használatával, megszüntetve a hurok-importokat.
- **Függőségkezelés:** `deps.py` bővítve a `get_current_active_user` függőséggel a biztonsági zárolások érvényesítéséhez.
- **Soft-Delete Logika:** A felhasználói fiók törlése mostantól felszabadítja az eredeti e-mail címet a TWINS-elvű újra-regisztrációhoz.

View File

@@ -102,4 +102,20 @@ A rendszer a \`system_parameters\` táblában tárolt \`RBAC_MASTER_CONFIG\` JSO
### 2. Scope (Hatókör) Védelem
Minden műveletnél ellenőrizzük a \`scope_id\` egyezését:
- Ha a felhasználó \`scope_level = 'region'\`, akkor csak olyan adatot szerkeszthet, ami ugyanahhoz a régióhoz tartozik.
- Kivétel: Impersonation (Megszemélyesítés) - Audit loggal védve.
- Kivétel: Impersonation (Megszemélyesítés) - Audit loggal védve.
## 1. Gamification Adminisztráció
A `data.system_parameters` táblában a `GAMIFICATION_MASTER_CONFIG` kulcs alatt az alábbiak állíthatóak:
- `xp_logic`: `base_xp`, `exponent`.
- `penalty_thresholds`: A szintekhez tartozó büntetőpont határok.
- `level_up_rewards`: 10-es szintenkénti Kredit jutalom mértéke.
- `blocked_roles`: [superadmin, service_bot].
- `auto_convert_social`: True/False.
## 2. Gamification Konfiguráció (JSON Schema)
A `GAMIFICATION_MASTER_CONFIG` struktúrája:
- `xp_logic`: Alap XP és kitevő a nehezedő szintezéshez.
- `penalty_logic`: Küszöbértékek, szorzók és ledolgozási ráta.
- `conversion_logic`: Social-to-Credit váltási arány.
- `level_rewards`: Szintlépési bónuszok mértéke.