# VAUCO OS — ROADMAP **Sist oppdatert:** 2026-06-10 **Autoritet:** `docs/MASTERPLAN.md` > denne filen > Append-only per sesjon. Ikke slett gamle faser — merk dem ✅ eller ❌. --- ## Fase A — OPAX MVP (✅ Ferdig) | ID | Oppgave | Status | Dato | |----|---------|--------|------| | OX1a | Cloud Build live-widget i opax.html | ✅ | 2026-06-05 | | OX1b | Embedded TUI-panel reaktivert | ✅ | 2026-06-05 | | OX1c | Jason fullskjerm-chat LIVE | ✅ | 2026-06-10 | | CI5 | OPAX-MCP build+deploy live | ✅ | 2026-06-10 | | CI6 | Jason kaller MCP live | ✅ | 2026-06-10 | | OX1-fix | opax.html LIVE via `GET /` — absolutt sti + Dockerfile static copy | ✅ | 2026-06-10 | --- ## Fase B — Operatørhub + første kunde (🔴 NOW) | ID | Oppgave | Status | Prioritet | |----|---------|--------|-----------| | OX2 | Command Hub: samle opax.html + jason.html + command-hub.html | 🔴 | Høy | | CG4b | Token dashboard breakdown per modul i UI | 🔴 | Høy | | C4 | Medioteq HITL-møte → første betalende kunde | 🔴 | Kritisk | | CI1 | OPAX-MCP: full CI/CD-kanal (CI1a–e) | 🟠 | Høy | | ML-3a | GCP GPU-VM for Emma (Gemma 4) + `emma.vauger@vauco.no` | 🟠 | Høy | | CG4d | Kundeprisingskalkulator | 🟠 | Medium | | C5 | Salgsdemo | 🟠 | Høy | --- ## Fase C — Multi-tenant + skalering (🟡 LATER) | ID | Oppgave | Status | |----|---------|--------| | ML-3c | Hybrid agent: Emma internt / Jason for kunder | 🟡 | | T1–T4 | Threadstone full app | 🟡 | | Fase C | Multi-tenant: `.vauco.no` via Terraform | 🟡 | | OQ-15 | BQ billing_export tabell aktivering | 🟡 | | OQ-17 | `github-token` secret alias fra `github-pat` | 🟡 | --- ## Sesjon-logg ### 2026-06-10 — OPAX-fix + absolutte stier **Hva ble gjort:** - Diagnostiserte `{"detail":"Not Found"}` på `opax.vauco.no` etter IAP-login - Rot-årsak: `app.py` manglet `GET /`-rute + `static/` var ikke kopiert inn i Docker-imaget - Fix 1: `agents/core-logic/Dockerfile` — lagt til `COPY static/ ./static/` - Fix 2: `agents/core-logic/app.py` — lagt til `GET /` og `GET /static/{filename}` med absolutt `Path(__file__)`-forankret sti - Etablert regel: absolutte filstier (`Path(__file__).parent...`) er obligatorisk i all Python som serverer statiske filer — gjelder Cloud Run, lokale VM-agenter og klientleveranser - Dokumentert i AGENT_RULEBOOK R-05, R-06, R-07 - Appended til gemma/world.md så Emma kjenner regelen fra dag 1 **Commits:** - `40788c3` — fix: copy static/ into image so FileResponse can serve opax.html - `9502201` — fix: add GET / route serving opax.html from static/ - `950220...` (denne) — docs: append 2026-06-10 session learnings **Neste:** - Verifiser `opax.vauco.no` viser opax.html etter ny Cloud Build-kjøring - OX2 — Command Hub - C4 — Medioteq møte