Gå til innhold

Runtime-arkitektur⚓︎

Runtime-bildet av Kai Platform — hvilke hosts som finnes, hva de snakker med, og hvor state ligger. Diagrammet dekker Enova.Kai.* / Kai.slnx.

Åpne i fullskjerm

Interaktivt

Diagrammet har fire guidede views (request-path, dokumentpipeline, regelmotor, oppstrøms data), søk, fokus på enkeltnoder, tracing av relasjoner og eksport til PNG/SVG/WebM. Bruk fullskjerm-knappen over hvis rammen blir trang.

Diagraminnholdet er norsk, men viewer-menyene (Light/Dark, Present, Export) eies av rendereren og er på engelsk.

Hva diagrammet viser⚓︎

  • Hosts — kai-api (ASP.NET Core minimal API, alle ruter bak RequireAuthorization) og kai-worker (eneste TickerQ-host, både producer og consumer av pipeline-køen). Manuell kjøring proxies fra kai-api til workerens /internal/pipeline/reanalyze.
  • State — Postgres holder sak-replika, regel-/workflow-config, regelresultat og TickerQs operational store. Blob-containeren saksdokumenter holder kilde-PDF og ekstraherte fakta-JSON.
  • Oppstrøms — Websak (arkiv, krever både APIM subscription key og Entra bearer) og Mimir/Databricks (production.gold.*, immutable etter morgenens ETL — derfor sync én gang per døgn). Se Kildesystemer.
  • AI — Content Understanding henter dokumentfakta fra versjonerte analyzers, og Azure AI Foundry kjører judgment-/hybridregler i workeren samt sak-chat fra API-et.

Detaljer per lag ligger i Bakgrunnsjobber, CU-analyzere og Regelkjøring.

Slik oppdaterer du diagrammet⚓︎

Diagrammet genereres fra en typet spec som ligger i repoet — ikke rediger HTML-fila direkte (den er ~700 kB generert output).

  1. Rediger docs/sourcefiles/arkitektur/kai-runtime.arch.json.
  2. Regenerer artefakten med archify-skillet:

    Bash
    node .claude/skills/archify/bin/archify.mjs deliver architecture docs/sourcefiles/arkitektur/kai-runtime.arch.json docs/publisert/arkitektur/diagrammer/kai-runtime.html --quality showcase
    
  3. Commit både spec-en og den regenererte HTML-fila.

Zensical kopierer HTML-fila uendret til site/, så den serveres bak samme Entra-login som resten av dokumentasjonen.