Beschreibung ----------- Dieser PR entfernt die Abhängigkeit zu n8n und implementiert ein Code-First Backend. Infrastructure -------------- - Redis Integration & BullMQ Queue Setup. Worker ------ - Neuer Background-Worker in `worker/index.ts` (BullMQ `Worker`, concurrency: 1). Logic ----- - Portierung der Policy-Parsing-Logik (Settings Catalog, OMA-URI) nach TypeScript. - Graph-Integration (Token-Acquisition, paginierte Fetches) und Retry/Rate-Limit-Handling. Cleanup ------- - Entfernung der alten n8n-API-Endpunkte und Secrets (`app/api/policy-settings/route.ts`, `app/api/admin/tenants/route.ts`, env-variablen entfernt). Frontend -------- - Der "Sync Now" Button triggert jetzt direkt einen BullMQ-Job (Queue: `intune-sync-queue`). Deployment / Dokploy -------------------- - In Dokploy existiert jetzt eine Anwendung `tenantpilot-worker` (`tenantpilot-tenantpilotworker-jomlss`) die auf den Gitea `development` Branch zeigt. Testing & Notes --------------- - Smoke scripts added: `scripts/test-queue-connection.js`, `scripts/test-graph-connection.ts`, `scripts/check-worker-health.js`. - Health endpoint: `app/api/worker-health/route.ts` reports queue counts. Weitere Hinweise ---------------- - Falls Sie die PR-Beschreibung noch anpassen möchten: kopieren Sie den Inhalt dieser Datei und fügen Sie ihn in das PR-Formular ein (remote PR URL wurde nach dem Push in der Push-Ausgabe angegeben).