05ed037fe8
- DNS: pilot.landvex.com -> 16.170.83.169 - TLS: Let's Encrypt certificate (expires 2026-09-30) - Nginx: reverse proxy with SSL termination - API: https://pilot.landvex.com/api/v1/missions - UI: https://pilot.landvex.com/ - Upload: POST /api/v1/missions/import (multipart/form-data) Verified: ✅ https://pilot.landvex.com/health ✅ https://pilot.landvex.com/version ✅ https://pilot.landvex.com/api/v1/missions (list) ✅ https://pilot.landvex.com/api/v1/missions/:id (get) ✅ POST /api/v1/missions/import (video upload) ✅ UI loads with title 'LandveX Intelligence Lab' Next: Pilot 001 — Break the system!
231 lines
4.7 KiB
Markdown
231 lines
4.7 KiB
Markdown
# EOS Runtime Contract
|
|
|
|
**Version:** 1.0
|
|
**Datum:** 2026-07-01
|
|
**Status:** DRAFT
|
|
|
|
---
|
|
|
|
## Syfte
|
|
|
|
Detta dokument definierar vad EOS Runtime garanterar. Det är ett kontrakt, inte en implementation. Implementationen får ändras. Kontraktet får inte ändras utan godkännande från EOS Team.
|
|
|
|
---
|
|
|
|
## Runtime Invariants
|
|
|
|
### Exekveringsordning
|
|
|
|
Följande ordning får aldrig ändras:
|
|
|
|
```
|
|
Planner
|
|
↓
|
|
Context
|
|
↓
|
|
Memory
|
|
↓
|
|
Knowledge
|
|
↓
|
|
Intent Resolution
|
|
↓
|
|
EOS Policy Check
|
|
↓
|
|
[OM BLOCKERAD → STOPP]
|
|
↓
|
|
Developer
|
|
↓
|
|
Reviewer
|
|
↓
|
|
Commit
|
|
↓
|
|
Operator
|
|
```
|
|
|
|
**Invariant:** EOS Policy Check måste alltid ske före Developer.
|
|
|
|
---
|
|
|
|
## Policy Invariants
|
|
|
|
### Policy Registry
|
|
|
|
- Varje aktiv policy har unik identitet (POL-XXX-NNN)
|
|
- Varje policy har version, ägare, status
|
|
- Ingen policy får tas bort — bara depreceras
|
|
- Policyändringar kräver versionshöjning
|
|
|
|
### Policy Dependency
|
|
|
|
- POL-DEP-001 (Deploy) är central
|
|
- POL-SEC-001 (SSH) och POL-SEC-002 (Secrets) är foundational
|
|
- Cirkulära beroenden är förbjudna
|
|
|
|
### Policy Regression
|
|
|
|
- Varje policy måste ha minst ett regressionstest
|
|
- Nya policies får inte minska total robusthet
|
|
- Policyändringar kräver full regression
|
|
|
|
---
|
|
|
|
## Replay Invariants
|
|
|
|
### Decision Replay
|
|
|
|
- Varje beslut sparas med input-hash
|
|
- Varje beslut är reproducerbart
|
|
- Replay jämför faktiskt resultat med sparat resultat
|
|
- Avvikelser flaggas som regression
|
|
|
|
### Replay Integrity
|
|
|
|
- Beslut får inte modifieras efter sparande
|
|
- Tidsstämplar är monotona
|
|
- Hash-kedjan är obruten
|
|
|
|
---
|
|
|
|
## Memory Invariants
|
|
|
|
### Project Memory
|
|
|
|
- Alla beslut loggas
|
|
- Ingen information förloras
|
|
- Sökning är deterministisk
|
|
|
|
### Memory Isolation
|
|
|
|
- Project Memory är skild från Runtime State
|
|
- Runtime State är skild från Policy Registry
|
|
- Ingen komponent får direktåtkomst till annan komponents minne
|
|
|
|
---
|
|
|
|
## Operation Invariants
|
|
|
|
### Operation Canonicalization
|
|
|
|
- Text → Intent → Canonical Operation → EOS Decision
|
|
- Samma text ger alltid samma canonical operation
|
|
- Olika formuleringar av samma intent ger samma canonical operation
|
|
|
|
### Operation Safety
|
|
|
|
- UNKNOWN_OPERATION är alltid blockerad
|
|
- Alla CRITICAL-operationer är blockerade som standard
|
|
- Eskalering kräver mänsklig granskning
|
|
|
|
---
|
|
|
|
## Release Nivåer
|
|
|
|
### Nivå 1: Policy Layer Release
|
|
|
|
**När:** Policy Layer uppfyller sina kriterier
|
|
**Vad:** Policy Layer får användas i produktion
|
|
**Kriterier:**
|
|
|
|
- [x] Runtime Contract verifierat
|
|
- [x] Policy Layer verifierat
|
|
- [x] Decision Replay verifierat
|
|
- [x] Golden Failures dokumenterade
|
|
- [x] CI-integration verifierad
|
|
- [x] Regression Suite alltid körd
|
|
- [x] Architecture Drift = 0
|
|
- [x] Decision Correctness ≥ 95%
|
|
- [x] Policy Robustness ≥ 95%
|
|
|
|
**Status:** ✅ GODKÄND 2026-07-01
|
|
|
|
### Nivå 2: EOS Runtime Release
|
|
|
|
**När:** Hela Runtime, inklusive Reasoning, har passerat alla grindar
|
|
**Vad:** Fullständig Runtime får användas
|
|
**Kriterier:**
|
|
|
|
- [ ] Policy Layer Release godkänd
|
|
- [ ] Reasoning Gate R0 passerat
|
|
- [ ] Golden Failures stabila (≥ 7 dagar)
|
|
- [ ] Runtime Drift = 0
|
|
- [ ] Resolution Accuracy ≥ 90%
|
|
- [ ] Evidence Quality ≥ 80%
|
|
|
|
**Status:** ⏳ PENDING (Reasoning Gate R0 inte passerat)
|
|
|
|
---
|
|
|
|
## Architecture Drift
|
|
|
|
### Definition
|
|
|
|
Architecture Drift uppstår när implementationen avviker från kontraktet.
|
|
|
|
### Detektering
|
|
|
|
- Exekveringsordning verifieras vid varje körning
|
|
- Komponentgränser verifieras vid varje körning
|
|
- Invariantöverträdelser flaggas omedelbart
|
|
|
|
### Åtgärd
|
|
|
|
- Architecture Drift = 0 är krav för merge
|
|
- Drift > 0 blockerar release
|
|
- Drift kräver motivering och godkännande
|
|
|
|
---
|
|
|
|
## Runtime Drift
|
|
|
|
### Definition
|
|
|
|
Runtime Drift uppstår när beteendet ändras utan kodändring.
|
|
|
|
### Detektering
|
|
|
|
- Daglig referenskörning jämför resultat
|
|
- Avvikelser flaggas som drift
|
|
- Drift kräver utredning
|
|
|
|
### Åtgärd
|
|
|
|
- Runtime Drift = 0 är krav för release
|
|
- Drift > 0 blockerar release
|
|
- Drift kräver rotorsaksanalys
|
|
|
|
---
|
|
|
|
## CI-integration
|
|
|
|
### Obligatoriska steg
|
|
|
|
Varje PR måste automatiskt köra:
|
|
|
|
1. **Runtime Regression** — Alla safety- och behaviour-tester
|
|
2. **Policy Regression** — Alla policy-specifika tester
|
|
3. **Decision Replay** — Reproducerbarhet av beslut
|
|
4. **Golden Failure Regression** — Stabilitet av kända fel
|
|
5. **Architecture Drift** — Verifiering av invariants
|
|
|
|
### Blockeringskriterier
|
|
|
|
Merge är blockerad om:
|
|
|
|
- Något regressionstest misslyckas
|
|
- Architecture Drift > 0
|
|
- Decision Correctness < 95%
|
|
- Policy Robustness < 95%
|
|
- Nya Golden Failures introduceras utan dokumentation
|
|
|
|
---
|
|
|
|
## Ändringslogg
|
|
|
|
| Datum | Version | Ändring |
|
|
|-------|---------|---------|
|
|
| 2026-07-01 | 1.0 | Initialt kontrakt |
|
|
|
|
---
|
|
|
|
*Detta dokument får inte ändras utan godkännande från EOS Team.*
|