diff --git a/server.py b/server.py index 440b0ef..b435300 100644 --- a/server.py +++ b/server.py @@ -993,8 +993,21 @@ class APIHandler(BaseHTTPRequestHandler): if __name__ == '__main__': - # Load modules from DB; fall back to static list if DB unavailable - _load_modules_from_db() + # Sync extensions from Gitea and load into DB on every startup + try: + result = sync_extension_registry() + if result['status'] == 'ok': + changes = result['added'] + result['reactivated'] + result['deactivated'] + if changes: + print(f"[init] Registry synced — added: {result['added']}, reactivated: {result['reactivated']}, deactivated: {result['deactivated']}") + else: + print(f"[init] Registry synced — no changes ({len(MODULES)} modules)") + else: + print(f"[init] Registry sync failed: {result.get('message', '')}") + _load_modules_from_db() + except Exception as e: + print(f"[init] Registry sync error: {e}") + _load_modules_from_db() if not MODULES: MODULES.update(_MODULES_FALLBACK) print(f"[init] Using static fallback: {len(MODULES)} modules")