Engineering Standard v1.0: Kubernetes-first + GitOps + Observability
- Kubernetes-first for platform architecture - GitOps: never manual cluster changes - Local-first for dev experience, K8s-first for platform - All infrastructure as code, same Git flow as app code - Standardized service contract: /health, /ready, /live, /metrics, /version - OpenTelemetry tracing, structured JSON logging - Correlation ID follows entire pipeline: Session → Mission → Artifact → Observation → Evidence → Decision - Intelligence Lab integrated in same platform, not separate cluster - Platform principle: no new service introduces new deploy/log/config/observability pattern Binding for all developers and AI agents. Complements E-001, EP-1.0, Architecture Principles. Next: Deploy pilot environment
This commit is contained in:
@@ -55,9 +55,13 @@ Ingen kod får bryta den riktningen.
|
||||
- MLflow för modellversionering (senare)
|
||||
|
||||
### Infrastruktur
|
||||
- Docker
|
||||
- Docker (lokal utveckling)
|
||||
- Docker Compose (dev/pilot)
|
||||
- Kubernetes först när ni verkligen behöver det
|
||||
- **Kubernetes (plattformens målarkitektur)**
|
||||
- GitOps (ArgoCD/Flux) — aldrig manuella ändringar i kluster
|
||||
|
||||
**Princip:** Local-first för utvecklarupplevelsen. Kubernetes-first för plattformen.
|
||||
Varje komponent byggs för att köras i Kubernetes, även om den lokalt kan startas med Docker Compose.
|
||||
|
||||
---
|
||||
|
||||
@@ -179,6 +183,8 @@ Alla AI-agenter (inklusive SVEN och andra) ska följa samma regler:
|
||||
|
||||
## 10. Deployment-flöde
|
||||
|
||||
### Applikation
|
||||
|
||||
```
|
||||
Local Development
|
||||
↓
|
||||
@@ -192,17 +198,100 @@ Merge
|
||||
↓
|
||||
CI
|
||||
↓
|
||||
Integration
|
||||
Container Image
|
||||
↓
|
||||
Pilot
|
||||
GitOps Repository
|
||||
↓
|
||||
Production
|
||||
Kubernetes
|
||||
```
|
||||
|
||||
Ingen får hoppa över steg.
|
||||
### Infrastruktur
|
||||
|
||||
```
|
||||
Git
|
||||
↓
|
||||
Pull Request
|
||||
↓
|
||||
Review
|
||||
↓
|
||||
Merge
|
||||
↓
|
||||
CI
|
||||
↓
|
||||
Kubernetes Manifest
|
||||
↓
|
||||
GitOps
|
||||
↓
|
||||
Cluster
|
||||
```
|
||||
|
||||
**All infrastruktur är kod.** Alla Kubernetes-manifest, Helm Charts eller motsvarande konfiguration versionshanteras, granskas och deployas via samma Git-flöde som applikationskoden.
|
||||
|
||||
Ingen får hoppa över steg. Ingen SSH:ar in i kluster och ändrar resurser manuellt.
|
||||
|
||||
---
|
||||
|
||||
## 11. Plattformsprincip
|
||||
|
||||
**En ny tjänst får inte introducera ett nytt sätt att deploya, logga, konfigurera eller övervaka.**
|
||||
|
||||
Alla tjänster följer samma kontrakt:
|
||||
- `/health` — Health endpoint
|
||||
- `/ready` — Readiness endpoint
|
||||
- `/live` — Liveness endpoint
|
||||
- `/metrics` — Metrics endpoint
|
||||
- Structured logging (JSON)
|
||||
- OpenTelemetry tracing
|
||||
- Configuration via environment variables
|
||||
- Secrets via Secret Manager
|
||||
- `/version` — Version endpoint
|
||||
|
||||
## 12. Observability
|
||||
|
||||
Varje request och varje pipeline-körning får ett gemensamt korrelations-ID som följer hela kedjan:
|
||||
|
||||
```
|
||||
Field Session
|
||||
↓
|
||||
Mission
|
||||
↓
|
||||
Artifact
|
||||
↓
|
||||
Observation
|
||||
↓
|
||||
Evidence
|
||||
↓
|
||||
Decision
|
||||
```
|
||||
|
||||
Om något går fel ska ni kunna följa samma ID genom loggar, events och databasen.
|
||||
|
||||
## 13. Intelligence Lab i Plattformen
|
||||
|
||||
Intelligence Lab är inte ett eget kluster. Det är en uppsättning tjänster i samma plattform:
|
||||
|
||||
```
|
||||
LandveX Platform
|
||||
├── API
|
||||
├── Operations
|
||||
├── quiXzoom Backend
|
||||
├── Mission Engine
|
||||
├── Knowledge Engine
|
||||
├── Decision Engine
|
||||
├── Economic Engine
|
||||
├── Learning Engine
|
||||
├── Intelligence Lab
|
||||
└── AI Workers
|
||||
```
|
||||
|
||||
Alla delar använder samma:
|
||||
- Autentisering
|
||||
- RBAC
|
||||
- Observability
|
||||
- Event bus
|
||||
- Artifact Registry
|
||||
- Datamodell
|
||||
|
||||
## Status
|
||||
|
||||
- **Version:** 1.0
|
||||
|
||||
Reference in New Issue
Block a user