- fremforge - europæisk alternativ til GitHub med CI/CD/
- Tillid/
- AI-integrationer – datavej og suverænitet/
AI-integrationer – datavej og suverænitet
Gældende fra: 2026-05-24 – fremforges AI-integrationer, fase 1
Kort fortalt #
fremforge lader aldrig kundens kode behandle af en amerikansk AI-leverandør som underdatabehandler på standardvejen. Kunden tager sin egen nøgle til en AI-leverandør med (BYOK) og vælger selv leverandøren. Leverandøren er kundens egen databehandler under kundens egen kontrakt og ikke fremverks underdatabehandler under databehandleraftalen.
Det er fastlagt i DPA bilag B §B.8.
Hvad »AI-integrationer« dækker #
fremforge har fire AI-funktioner på serversiden, som bruger den AI-leverandør, kunden har sat op. Hver af dem er slået fra, indtil kunden tilføjer en nøgle:
- AI-review af PR’er – når en pull request åbnes eller opdateres, sender fremforge diffen og PR’ens metadata til den valgte leverandør og poster en struktureret review-kommentar med en commit-status
pending → success / warning. - Forklaringer til Renovate-opdateringer – PR’er oprettet af Renovate får en mere fokuseret prompt om udbedring af CVE’er og risikoen for ændringer, der bryder bagudkompatibiliteten.
- Gateway, som kunden selv kan kalde –
POST /api/v1/orgs/<slug>/ai/completemed en PAT med scopetai:invoke. Kundens egne workflows og scripts kalder dette endpoint i stedet for at indlejre leverandørernes SDK’er. - AI-rettelser til SAST-fund – slået fra som standard, også når der er sat en nøgle op; en ejer af organisationen slår det til. Når en person klikker på AI fix ved et fund fra en af nogle få udvalgte SAST-regler, sender fremforge reglens beskrivelse og højst 60 linjer fra den berørte fil til leverandøren, kontrollerer den diff, der kommer tilbage, scanner den igen og åbner en pull request, som aldrig merges automatisk. fremforge gemmer hverken prompt, kode eller diff. Se AutoFix.
Der findes en separat vej for AI-værktøjer på udviklersiden (Claude Code, Cursor, Continue og JetBrains AI, der taler med fremforge via det almindelige REST-API og en PAT). Den vej sender ikke noget til en AI-leverandør gennem fremverks infrastruktur; se docs.frem.sh/get-started/ai-in-your-ide/.
Understøttede leverandører (fase 1, BYOK) #
fremforge understøtter tre typer adaptere, som tilsammen dækker alle de store leverandører i dag:
| Adapter | Eksempler på leverandører |
|---|---|
openai-compatible | OpenAI, Azure OpenAI, Mistral, Together, Fireworks, OpenRouter, T-Cloud AIFS og enhver anden OpenAI-kompatibel URL |
anthropic | Anthropics eget API |
vertex-gemini | Google Vertex Gemini |
Kunden indsætter en API-nøgle fra leverandøren i admin-UI’et på /<org>/_admin/ai-integrations. Nøglen krypteres i hvile med AES-256-GCM via T Cloud Public DEW KMS med AAD-binding pr. række (så en nøgle, der trækkes ud af en databasebackup, ikke kan dekrypteres, medmindre man også får fat i det tilhørende række-id).
Datavejen #
For hvert AI-kald (PR-review, Renovate-forklaring eller /ai/complete kaldt fra et workflow):
- Kundens repository, en webhook-payload eller et workflow-trin starter forespørgslen.
- fremforges
api-pod sammensætter prompten: diff-tekst + PR-metadata + systemprompt + beskeder fra kunden. - fremforges
api-pod sender en HTTPS-forespørgsel til den URL, kunden har sat op for leverandøren, med kundens nøgle. - Leverandørens svar registreres: antal tokens, svartid, modelnavn og svartekst.
- fremforge poster en Forgejo-kommentar (PR-review) ELLER returnerer svaret til workflowet (
/ai/complete). - En række i
ai_usage_eventsregistrerer kaldet: organisation, udbyder, model, tokens ind, tokens ud og svartid. Prompten og selve svaret gemmes ikke ud over forespørgslens levetid.
Prompt og svar passerer fremforges api-pod én gang. De passerer ikke nogen tredjeparts logaggregator, observability-tjeneste eller backup. Revisionsloggen for hvert kald indeholder metadata (hvilken funktion, hvilken udbyder, antal tokens), men ikke indholdet.
Hvorfor »ikke en underdatabehandler« #
Efter artikel 28 i GDPR er nogen underdatabehandler, når den dataansvarlige udpeger dem, indgår kontrakt med dem og instruerer dem i at behandle data på den dataansvarliges vegne. Intet af det gælder her:
- Kunden vælger AI-leverandøren. fremverk hverken udpeger eller anbefaler en. Rullelisten i admin-UI’et viser typer af adaptere, ikke anbefalinger.
- Kunden indgår selv kontrakt med AI-leverandøren. fremverk har intet kommercielt forhold til AI-leverandøren til dette formål. Kunden betaler leverandøren; fremverk lægger ikke noget oven i leverandørens tokenpriser.
- Kunden kan til enhver tid fjerne AI-leverandøren uden at give fremverk besked. Sådan fungerer et forhold til en af fremverks underdatabehandlere ikke.
- fremverks egen forpligtelse om ingen underdatabehandlere med amerikansk moderselskab i DPA §11.3 er uændret. En kunde, der vælger en AI-leverandør registreret i USA (OpenAI, Anthropic, Google Vertex), udsætter sig selv for den leverandørs jurisdiktion – ikke fremverks.
Det er den samme juridiske stilling som for identitetsudbydere, kunden selv vælger (Microsoft Entra, Okta, Google Workspace, JumpCloud, Authentik) og forbinder til fremforge via OIDC. De står i indledningen til bilag B af samme grund.
Fase 2: en »nøglefærdig« løsning #
Når AIFS (T-Cloud AI Foundation Services) får en kodetrænet model, der er god nok til PR-review – forventet om 6–18 måneder – planlægger fremverk at tilbyde et nøglefærdigt AI-abonnement, hvor fremverk har en AIFS-konto i Tyskland og fakturerer tokens pr. plads. Den løsning vil gøre AIFS til en ny underdatabehandler for fremverk, og den vil blive føjet til registret i bilag B med det varsel på 30 dage, der følger af §10.2.
BYOK-vejen forbliver tilgængelig, også når den nøglefærdige løsning er lanceret – kunderne kan altid tage deres egen nøgle med.
Synlighed i revisionsloggen #
Hvert AI-kald giver en hændelse i revisionsloggen:
tenant.ai_integration.provider_added/_disabled/_tested– ændringer i opsætningen af udbyderetenant.ai_integration.feature_default_changed– hvilken udbyder der håndterer hvilken funktiontenant.ai_integration.repo_override_changed/_removed– undtagelser pr. repositoryai.complete.ok/ai.complete.failed– hver forespørgsel til/ai/complete, som kunden selv kalder
Kunderne ser tokenforbrug pr. måned og 👍/👎-tilfredshed pr. udbyder og model i admin-UI’et; begge dele bygger på tabellerne ai_usage_events og ai_review_comments. Kundernes revisionslogs (DPA §9, opbevaring i 13 måneder) indeholder alle tenant.ai_integration.*-hændelser.
Fejl håndteres blidt #
AI-funktioner blokerer aldrig en PR. Hvis leverandøren returnerer en fejl, rammer en rate limit, overskrider kundens loft for forbrug eller nøglen er ugyldig, springes review-kommentaren over, og der vises en commit-status warning (»AI review unavailable: retry on next push or fix the key«). Kundens CI påvirkes ikke; det eneste, der mangler, er den AI-genererede kommentar.
Spørgsmål og anmodninger om revision #
Til compliance-gennemgang: denne side er tillidsdokumentationen, du kan linke direkte til. Den kontraktlige forankring er DPA bilag B §B.8. Spørgsmål sendes til compliance@frem.sh.