BibliotekSammanhängande läsvyEPUB
Del IV — Förtroende och verklig nytta · Kapitel 14

Compliance, integritet och datalivscykel

Compliance är inte ett dokumentlager. Det är ett observerbart beteende.

En policy kan säga att intervjutext gallras efter 90 dagar. Först när Matrix kan visa populationen, klockan, körningen, raderna som påverkades, återstående överträdelser och nästa körning finns evidens för att policyn verkställs. Samma fyrdelning som i resten av boken gäller:

regelverk och beslut → datalivscykeldefinition → faktisk behandling → evidens och bedömning

Kapitlet är systemdesign, inte juridisk rådgivning. Juridisk auktoritet avgör bland annat tillämplighet, roll, rättslig grund och undantag. Arkitektens ansvar är att göra besluten uttryckbara, verkställbara och verifierbara.

1. Börja med behandling, inte teknik

“Matrix använder AI” säger nästan inget om vilka krav som gäller. Scope måste göras per behandling eller användning:

  • vilka personer och organisationer berörs,
  • vilket ändamål och vilken förväntad nytta finns,
  • vilken data samlas in eller härleds,
  • vilka roller och mottagare finns,
  • vilka beslut eller handlingar påverkas,
  • vilka jurisdiktioner och avtal gäller,
  • vilken riskklass och vilka rättigheter aktualiseras.

Matrix regelverksregister har en nyttig tvådelning: vår egen efterlevnad och lösningens förmåga att hjälpa en kund. Ett system kan stödja en kontroll utan att leverantören kan garantera kundens efterlevnad. En complianceprodukt får aldrig sälja “certifiering på knapptryck”; den kan göra bevisläget och gapen granskningsbara [CLAIM-DATA-001].

EU AI Acts skyldigheter varierar med roll och riskklass. För relevanta högrisksystem finns krav på bland annat dokumentation, loggar, mänsklig översyn och kvalitetsstyrning; vissa dokument ska bevaras tio år och loggar som aktören kontrollerar normalt minst sex månader. Det är inte en generell retentionregel för all AI-data. Kravet måste mappas till den specifika användningen och andra tillämpliga regler.

2. Datalivscykelkontraktet

Varje beständig eller exporterad datapopulation bör ha ett kontrakt:

Fält Fråga
data_class vad innehåller populationen?
subjects vilka kan identifieras eller påverkas?
purpose varför behövs den?
authority vilket bedömt stöd och vilken ägare finns?
sources/recipients varifrån kommer den och vart går den?
stores/copies primärlager, cache, index, logg, export och backup?
retention_rule startpunkt, period, trigger och undantag?
rights_path hur söks, exporteras, rättas, begränsas eller raderas den?
purge/verify vilken körning och postcondition bevisar utfallet?
evidence_retention hur länge sparas kvittot utan att återskapa payloaden?

Retention är inte bara “90 dagar”. Klockan behöver ett startvillkor: från insamling, senaste aktivitet, avslutad relation, återkallat samtycke eller avslutat ärende. Den behöver även avgöra vad som händer med radens metadata, härledningar och backups [CLAIM-DATA-003].

Matrix connector framework kräver retention när en connector producerar beständig data. data_stores.toml inventerar flera lager. Detta är en god birth invariant: ingen ny store utan ägare och livscykel. Men katalogen måste jämföras med observerade filer, tabeller, buckets, index och exports; annars kan en okänd kopia ligga utanför registret.

3. Pseudonymisering är en kontroll, inte ett trollslag

Ett slumpmässigt ID minskar direkt exponering, men data är inte anonym om en auktoriserad eller annan realistisk part kan återlänka den. EDPB:s konsultationsriktlinje 01/2025 uttrycker samma kärna: pseudonymiserad data förblir personuppgift när kopplingen kan återställas. Matrix egen DPO-analys noterar dessutom att ett pseudonym-ID ger nästan noll praktisk anonymitet om det bara finns en möjlig person i rollen [CLAIM-DATA-002].

Pseudonymisering kan ändå vara mycket värdefullt. Kopplingstabellen kan separeras, åtkomsten begränsas, event kan minimera payload och analys kan ske utan namn. Men retention, rättigheter, incidenthantering och mottagare måste fortfarande omfatta populationen.

4. Minimering sker i flera led

Minimering betyder inte bara att samla in färre fält. Den gäller:

  1. insamling: behövs innehållet alls?
  2. transport: kan payload tas bort ur event och trace?
  3. lagring: kan fulltext ersättas med claim, klass eller räknare?
  4. åtkomst: kan tenant, zon, roll och ändamål begränsa läsning?
  5. observation: behöver logs, prompts och tool arguments innehålla data?
  6. export: kan rapporten bära aggregat i stället för individrader?
  7. slut: vad raderas, anonymiseras eller bevaras med särskilt stöd?

Matrix eventanalys visar varför eventlager är riskabla. Ett minimerat envelope kan ta bort etikett, diff, snapshot och actor-ID. Men om personhändelser lagras i Git saknas naturlig tidsstyrd radering och historiken replikeras. Personrika event hör därför i ett retentionkapabelt lager; ofta räcker ett aggregat för det operativa värdet [CLAIM-DATA-004].

5. Radering är en grafoperation

En persons ord kan ha blivit:

informant → pseudonym → session → yttrande → claim → konflikt → leverans
                                      └────→ index/logg/backup

Att radera profilraden är då otillräckligt. Samtidigt kan blind kaskadradering förstöra ett legitimt beslut och göra leveranshistoriken obegriplig.

Matrix erase_informant löser en svår del explicit. Varje verbatim claim måste antingen raderas eller skrivas om till ett tredjepersonsbehov. Omskrivningen degraderar extraction till inferred, sänker confidence, ersätter lineage med <erased-origin> och märker leveranser med öppen risk. Operationen vägrar hela transaktionen om någon berörd verbatim claim saknar hantering. Postcondition kontrolleras innan pseudonymkopplingen försvinner; efteråt skulle frågan hitta noll per konstruktion och bevisa ingenting [CLAIM-DATA-005].

Det illustrerar tre principer:

  • radera identitet och innehåll utan att ljuga om kvarvarande härledning,
  • utför beroende steg atomiskt eller lämna allt oförändrat,
  • verifiera medan identifieringsrelationen fortfarande går att fråga.

6. Gallring som återkommande kontroll

Matrix elicitation-retention har klassvisa regler: yttrandetext, avbrutna claims, informantprofiler/pseudonymer, flags och orphan conflicts. Databasens now() styr tiden, inte callerinput. Dry run är standard och både dry och live journalförs. Sanctioned-delete-flaggan armeras precis runt det skyddade statementet och avaktiveras direkt.

Den viktigaste funktionen är overdue_violations(). Om jobbet stannar ska rader efter hard cap plus grace göra kontrollen röd. “Senaste körning lyckades” är inte nog; även nuvarande population måste frågas [CLAIM-DATA-006].

Den landade tvådatabasdesignen drar nu en fysisk gräns mellan gemensam koordinationsdata och lokal eliciteringspersondata. De tre tidigare cross-family-foreign keys ersätts av fail-closed skrivvalidering mot Coordinator och en fail-open reconciliationvy för senare dangling references. Det möjliggör egna credentials, backup- och flyttlivscykler men gör även deployordningen säkerhetskritisk. Vid read-only-kontrollen den 13 augusti förväntade koden den nya 0022-revisionen medan live-databasen stod på 0021. Designen är alltså landad men ännu inte applicerad i den observerade driften, och den transitionella DSN-fallbacken är fortfarande den aktiva vägen. ADR och runbook refererar dessutom den äldre migrationsbeteckningen 0021 där den lineariserade kedjan kräver 0022. Fallbackens borttagning måste vara en hård postcondition före central flytt, inte ett efterföljande städjobb [CLAIM-DATA-009].

En generell retentionkontroll behöver därför fyra bevislinjer:

  • definition: vilken regel gäller denna version?
  • execution: körde jobbet, med vilken mode och omfattning?
  • postcondition: finns förbjudna rader eller kopior kvar?
  • coverage: omfattar kontrollen alla deklarerade och observerade stores?

7. Detaljdata och bevarat analysvärde

Inference economics behöver långsiktiga trender men inte varje model-call för all framtid. Matrix rullar därför upp detaljrader till dagliga aggregat före gallring. usage_unknown bevaras som okänd coverage, aldrig som noll.

Mönstret är starkt men kräver smågruppsanalys. Ett aggregat över en person, tenant eller unik dag kan fortfarande avslöja individen. Aggregation är inte automatiskt anonymisering. Kontraktet behöver minsta grupp, dimensioner, suppression och riskbedömning [CLAIM-DATA-007].

8. Backup, index och bevislager

Rättighets- och retentiondesign måste ange hur sekundärkopior hanteras. Omedelbar selektiv radering ur en append-only backup kan vara olämplig eller omöjlig. Då behövs dokumenterad isolering, åtkomstkontroll, backupens egen livslängd och en restoreprocedur som återapplicerar tombstones/gallring innan data återgår till normal drift.

Samma fråga gäller Qdrant-index, cache, lokala exports, statusfiler och telemetry. Ett primärlager kan vara rent medan sökindexet fortfarande lämnar ut texten. Rättighetsärendet måste följa en store graph, inte en hårdkodad lista i handläggarens huvud.

Auditbevis får inte bli ett bakvägsarkiv över det raderade. Ett bra raderingskvitto kan bevara ärende-ID, policyversion, tid, executor, antal per lager, postcondition och digest utan originalinnehållet [CLAIM-DATA-008].

Eliciteringens privacygräns

Interviewer-motorn skapar nu evidensfakta under en session och skyddar informantidentiteten genom pseudonym-ID. Transkriptet behandlas som otrustat innehåll och en separat role-agent-vy vägrar transcriptfält även om de skulle råka följa med en claimrad. Handover bär payloadhash och metadata, inte själva transkriptet [CLAIM-CLAIM-012].

Det minskar spridningen men löser inte hela livscykeln. En produktionsyta måste fortfarande visa ändamål och mandat före start, inspelningsstatus, lokal modellzon, tillåtna mottagare, retention, playback, rättelse/radering och vilka härledningar som påverkas. “Pseudonymiserad” får inte döljas bakom en allmän säkerhetsetikett.

9. Compliance-dossiern

En dossier bör svara per krav eller kontroll:

krav → scopebeslut → ansvarig kontroll → process → implementation
     → senaste observation → evidens → gap → åtgärd och ägare

Matrix compliance-erbjudande beskriver denna riktning. Dess egen text sätter en sund grind: paketet är inte externt säljbart förrän Swedwise har ett referenscase, egen privacy-/retentionskuld är löst, demovägen är livebevisad och beslut fattats. Dossiern får visa full, partial, missing, stale och not-applicable-with-rationale; den får inte omvandla tre bevisade kontroller till “compliant organisation”.

10. Gränssnittshierarki

Styrning och data
├── Regelverk och scope
│   ├── egen tillämplighet / kundmöjliggörande
│   └── beslut, version, ägare och nästa omprövning
├── Behandlingar
│   ├── ändamål, population, dataflöde och mottagare
│   ├── risk/DPIA och kontroller
│   └── datalager, kopior och retention
├── Rättighetsärenden
│   ├── sök och identitetsmatchning
│   ├── preview, beslut och approval
│   └── execution, postcondition och kvitto
├── Datalivscykel
│   ├── jobb, senaste körning, overdue och coverage
│   └── backup/index/export-undantag
└── Revision
    ├── kontroll → process → evidens → gap
    └── exporterat, signerat och versionsbundet dossierpaket

11. Användningsfall

UC14.1 — Scopea ett regelverk

Juridisk ägare bedömer en användning, sparar frågor, underlag, beslut, giltighet och nästa omprövning utan att klassa hela Matrix med ett enda ord.

UC14.2 — Registrera en behandling

DPO registrerar ändamål, personer, dataklasser, mottagare, stores, retention, rättigheter, risk och ägare innan connectorn får producera data.

UC14.3 — Upptäck oregistrerad store

Dataarkitekten jämför runtimeinventering med katalog och får ett blockerande gap för databas, fil, index eller export utan livscykelkontrakt.

UC14.4 — Granska dataflödet

En granskare följer fält från källa via event, modell, agent och export och ser var innehåll minimeras, pseudonymiseras eller lämnar en zon.

UC14.5 — Bedöm en pseudonym

DPO ser återlänkningsnyckel, möjliga angripare, gruppstorlek och åtkomst och kan inte märka datan anonym enbart för att namnet saknas.

UC14.6 — Förhandsgranska gallring

Operatören kör dry run per lager och ser regelversion, cutoff, antal, exempel-ID och beräknad påverkan utan att data ändras.

UC14.7 — Verkställ gallring

Behörig aktör godkänner population och kör jobben; receipt visar rader per lager, tid, kodrevision och postcondition.

UC14.8 — Upptäck försenad gallring

Overdue-gaten visar kvarvarande rader efter hard cap som rött med ägare och deadline även om senaste schemakörning saknas.

UC14.9 — Ta emot rättighetsbegäran

Handläggaren registrerar identitetsbevis, scope, deadlines, undantag och kommunikationskanal utan att lägga mer persondata än ärendet kräver.

UC14.10 — Hitta den registrerades data

Matrix söker primärlager, index, exports, logs och backup-policy och redovisar coverage och osäker identitetsmatchning.

UC14.11 — Radera en informant

Systemet kräver explicit hantering av varje verbatim claim, utför operationen atomiskt och vägrar om en härledning annars lämnar personens ord kvar.

UC14.12 — Verifiera radering

En oberoende läsväg testar postconditions per store och visar residualer, undantag, backupkarantän och ett payload-minimerat kvitto.

UC14.13 — Rätta en claim

En behörig person ersätter felaktig uppgift men bevarar tidigare kännedom, orsak, aktör och downstream-impact utan att den gamla versionen visas aktuell.

UC14.14 — Begränsa behandling

Ett ärende kan frysa användning och nya härledningar medan data bevaras för prövning; agents och exports får policyavslag.

UC14.15 — Bygg revisionsdossier

Complianceansvarig exporterar kontroll, scope, implementation, observation, evidens, freshness och gap med låsta källrevisioner.

UC14.16 — Ompröva efter förändring

En ny modell, connector, dataklass eller mottagare invalidierar berörda scope-/riskbeslut och skapar ägda omprövningar innan release.

12. Sammanfattning

Ett trovärdigt compliance-lager kan inte bara svara “vilka regler har vi?”. Det måste svara vilken data som finns nu, varför den får finnas, hur den används, när den ska försvinna och hur vi vet att den gjorde det. Matrix har starka byggblock i retention och erasure. Den största återstående frågan är operabilitet och coverage över hela store graph.

Eliciteringens separerade artefakter och verifierade datalivscykel
Visa diagramdefinition
flowchart LR
  A[Ändamål, mandat och scope] --> B[Intervjusession\nen fråga per tur]
  B --> T[Transkript\notrustat + pseudonymiserat]
  T --> C[Interviewer → atomära claims\nevidensfakta + ursprung]
  C --> H[Challenger\nflaggar utan mutation]
  C --> P[Playback\nbekräfta / korrigera / avvisa]
  C --> R[Role-agent\nclaims + probes]
  T -. vägras vid rollgränsen .-> Z[Ingen transcriptåtkomst<br/>för role-agent]
  P --> E{Store graph + livscykel}
  H --> E
  E -->|behåll| F[Begränsad åtkomst]
  E -->|aggregat| G[Rollup + riskkontroll]
  E -->|radera / rätta| X[Grafoperation + postcondition]
  X --> J[Minimerat kvitto och dossier]
  J -. coverage/gap .-> N[Nästa livscykel:<br/>ändamål, mandat och scope]

Fördjupningsmaterial

Övningar och laboration

Övningar och laboration

Övningar

  1. Scopea tre Matrix-användningar mot GDPR och AI Act utan att ge juridiskt slutomdöme; ange vilka fakta som saknas.
  2. Rita en store graph för ett yttrande som blivit claim, embedding, leverans, loggrad och backup.
  3. Bedöm fem pseudonymiserade populationer och formulera realistiska återidentifieringsvägar.
  4. Designa ett raderingskvitto som bevisar utfallet utan att återskapa texten.

Laboration: datalivscykel under förändring

Bygg ett deklarativt register och en hermetisk fixture för 40 informanter, 120 yttranden, 70 claims, två index, en export och en backup. Leverera 16 use- case-vägar, scopebeslut, dataflöde, dry run, atomic erasure, overdue-gate, restore-replay och dossier.

Obligatoriska mutationer: oregistrerad store; callerstyrd klocka; pseudonym märkt anonym; hard cap utan jobb; jobb utan receipt; success utan postcondition; primärradering men kvarvarande index; restore som återinför raderad text; verbatim claim utan handling; postcondition efter borttagen pseudonymlänk; auditkvitto med originalpayload; unknown räknad som noll; smågruppsaggregat; scopebeslut utan validAt; export utan mottagare; compliancegrönt med öppet gap; dry run som skriver data; delete-sanction som lämnas på; saknad tenantgräns; AI Act-klassning för hela plattformen i stället för användningen.

Godkänt kräver minst 18 av 28 poäng och att kvarvarande kopia, falsk anonymisering, caller-klocka, restore-återintroduktion och falskt grönt fångas.

Källor och begränsningar

Kapitelkällor

Källa Funktion Begränsning
gdpr-2016 Ändamål, minimering, lagringsbegränsning, rättigheter och säkerhet. Juridisk tillämpning kräver behörig bedömning.
eu-ai-act-2024 Dokumentation och loggbevarande för relevanta AI-roller/användningar. Krav beror på roll och riskklass; inte alla Matrix-flöden är högrisk.
edpb-pseudonymisation-2025 Pseudonymisering och återidentifierbarhet. Konsultationsversion, inte slutlig bindande vägledning.
nist-privacy-framework-1 Privacy risk och livscykel från insamling till disposal. Frivilligt ramverk, inte EU-rätt.
MATRIX-ELICITATION-RETENTION Klassvisa tidsgränser, DB-klocka, journal och overdue-gate. Särskilt elicitation-lagret, inte universell engine.
MATRIX-ELICITATION-ERASURE Atomisk radering, omskrivning och postcondition. Ingen komplett offentlig läs-/ärendeväg hittades.
MATRIX-DATA-STORE-CATALOG Inventering av beständiga lager och retention. Deklaration bevisar inte att alla runtimekopior upptäckts.
MATRIX-INFERENCE-RETENTION Rollup före detaljgallring. Aggregering kan fortfarande bära privacy-risk vid små grupper.
MATRIX-REGULATORY-REGISTER Två ansikten: egen efterlevnad och kundmöjliggörande. Historiskt assessment; scope/status kan ändras.
MATRIX-ELICITATION-INTERVIEWER Pseudonym-ID, otrustat transcript och metadata-only handover. Användaryta, verklig session och full rättighetsväg återstår.
MATRIX-ELICITATION-ROLE-WALL Transcript-denying gräns för role-agent. Skyddar en söm, inte alla lager, exports eller operatörsvägar.
MATRIX-ELICITATION-DB-SPLIT Tvådatabasdesign, skrivvalidering och reconciliation över beslutslänkar. Landad design och migrationskod bevisar inte genomförd dataflytt eller applicerat live-schema.
MATRIX-RUNTIME-PROVENANCE Observerar landad respektive applicerad migrationsrevision. Passportets läsning bevisar inte i sig att flyttens data- och backup-postconditions är uppfyllda.
Argumentkarta

Argumentkarta: compliance, integritet och datalivscykel

Huvudtes

Compliance blir trovärdig först när varje relevant datapopulation har uttalat ändamål, rättslig och organisatorisk bedömning, ägare, lagringsplatser, livslängd, rättighetsväg och körbar verifiering. Dokument är definitioner; efterlevnad är observerat och evidensbundet beteende.

Kedja

  1. Compliance kräver först scope och ansvar, inte en etikett på hela systemet.
  2. Pseudonymiserad, återlänkbar data förblir personuppgift.
  3. Retention måste födas med lagringsytan och verkställas mot databasklocka.
  4. Radering är en grafoperation över kopior och härledningar.
  5. Proveniens ska degraderas ärligt när ursprunget tas bort.
  6. Backup, logg, export och index ingår i livscykeln.
  7. Ett purge-jobb utan körbevis, coverage och overdue-gate är en intention.
  8. Ett revisionspaket visar evidensläge, inte automatiskt laglig efterlevnad.

Motbevisande test

Om en registerförteckning ensam bevisar compliance ska en databas med korrekt angiven 90-dagarsregel men ett avstängt purge-jobb räknas som compliant. Den gör inte det. Definitionen måste förenas med körkvitto, kvarvarande population, freshness och ett verifierbart negativt resultat.

Faktagranskning och öppna beslut

Kapitelgranskning

Status: första manusutkast 2026-08-11. Intern DPO-, dataarkitektur-, säkerhets-, operations-, juridik- och pedagogisk granskning genomförd. Extern jurist-/DPO- granskning och körbar store-graph-fixture återstår.

Verifierade implementationsfakta

  • Elicitation-retention använder databasklocka, journalför dry/live och har hard-cap-gate med grace.
  • Informantradering är atomisk, kräver hantering av alla verbatim claims och verifierar postcondition innan pseudonymlänken tas bort.
  • Omskrivning degraderar proveniens och markerar leveranser med öppen risk.
  • Inference-retention bevarar aggregat och usage-coverage före detaljgallring.
  • Store- och backupkataloger finns; komplett runtimecoverage är inte därmed automatiskt bevisad.
  • Use-case-registret beskriver läs-/handläggningsvägen för elicitation- rättigheter som ofullständig. Kapitlet påstår därför inte produktstöd.

Öppna beslut

  1. Vilket gemensamt schema ska bära processing/store/lifecycle-kontrakt?
  2. Hur upptäcks oregistrerade runtimekopior och exports?
  3. Hur återappliceras tombstones vid restore?
  4. Vilka rättighetsvägar måste bli operabla före första release?
  5. Hur separeras juridiskt scopebeslut från teknisk kontrollstatus?

Teststatus

  • Coordinatorns kontraktstester: 22 passerade; 22 PostgreSQL-fall hoppades över eftersom vakten vägrade live-databasen och ingen scratch-DSN gavs.
  • Jake restore/chain/backup/retention/economics/usage: 93 passerade och 25 databasfall hoppades över av samma fail-closed testvakt.
  • Två HTTP-endpointfall deselectades eftersom OpenJarvis setup försöker chmod:a användarens read-only ~/.openjarvis i denna sandbox; de gäller endpoint- wiring, inte de granskade retention-/economicskontrakten.
  • LiteLLM kunde inte hämta extern prisfil via DNS och använde lokal backup.
Kapitelkontrakt

Syfte

Göra compliance till ett verifierbart systembeteende i stället för en samling dokument. Kapitlet följer data från ändamål och insamling till härledning, användning, lagring, export, gallring och bevisad radering.

Lärandemål

Studenten ska kunna avgränsa behandling och roller, utforma ett maskinläsbart datalivscykelkontrakt, skilja pseudonymisering från anonymisering, hantera rättighetsbegäran utan att förstöra nödvändig proveniens, verifiera gallring och förklara varför compliance-evidens inte är samma sak som efterlevnad.

Fallstudiehändelse

En informant begär radering efter att intervjucitat hunnit bli claims, konflikter, leveranser och aggregerad ekonomidata. Nordic måste kunna visa vad som finns, varför, var, hos vem, hur länge, vilka härledningar som påverkas och att rätt data faktiskt försvann utan att historiken görs falsk.