OSVauco/docs/ROADMAP.md

184 lines
7.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# VAUCO OS — ROADMAP
**Sist oppdatert:** 2026-06-15
**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 |
| CG4b | Token dashboard breakdown per modul — Chart.js donut live | ✅ | 2026-06-11 |
---
## Fase B — CostGuard klient-flow (🟠 IN PROGRESS)
> **Fokus:** Bygg CostGuard som et produkt klienter faktisk kan bruke og betale for.
> Prismodell v2 godkjent 2026-06-12. Push-first arkitektur.
> **Prinsipp:** Ingen tredjepartsverktøy. Alt eies og kjøres i eget GCP/GitHub.
### CG4 — Kalkulator & UI
| ID | Oppgave | Status | Prioritet |
|----|---------|--------|-----------|
| **CG4d** | Prisingskalkulator — GCP-spend slider, tier-highlighter, ROI-beregning | ✅ | Høy |
| **CG6** | Klient-dashboard `costguard.oss.vauco.no` | ✅ 2026-06-15 | Høy |
### CG5 — Delivery layer
| ID | Oppgave | Status | Tier | Prioritet |
|----|---------|--------|------|-----------|
| **CG5a** | `POST /notify/webhook` → Slack/Teams/Chat/Discord | ✅ 2026-06-15 | Starter+ | Høy |
| **CG5b** | `POST /notify/email` — SendGrid digest + varsler | ✅ 2026-06-15 | Starter+ | Høy |
| **CG5c** | `POST /notify/sms` — Twilio, kritiske spikes | 🔴 Venter env-vars | Guard+ | Medium |
### CG5 — Onboarding
| ID | Oppgave | Status | Prioritet |
|----|---------|--------|-----------|
| **CG5-onboard** | 4-stegs wizard + token-invite system + `POST /onboard/complete` | ✅ 2026-06-15 | Høy |
| **OQ-29** | `GET /notify/channels` — korrekt format i dashboard | ✅ 2026-06-15 | Lav |
| **OQ-26** | `docs/gemma/world.md` — Emma boot context | ✅ 2026-06-15 | Høy |
### CI1 — opax-mcp CI/CD
| ID | Oppgave | Status | Prioritet |
|----|---------|--------|-----------|
| **CI1-kode** | `opax-mcp/server.py` — 20 tools, Dockerfile, requirements | ✅ 2026-06-15 | Høy |
| **CI1-cicd** | `cloudbuild.mcp.yaml` — CI/CD pipeline | ✅ 2026-06-15 | Høy |
| **CI1-trigger** | Cloud Build trigger opprettes i GCP Console av Chris | 🔴 Manuelt steg | Høy |
> **Prinsipp CI1:** opax-mcp er intern binding mellom Jason/Emma og OPAX-plattformen.
> Ingen tredjepartsverktøy (Cursor, Copilot o.l.). Alt eies 100% av Vauco AS i eget GCP.
### Infrastruktur (parallelt)
| ID | Oppgave | Status | Prioritet |
|----|---------|--------|-----------|
| OX2 | OPAX Hub: koble gjenværende funksjoner | 🟠 | Medium |
| **ML-3a** | GPU-VM for Emma + world.md | 🟠 world.md ✅ — VM gjenstår | Medium |
### Gjenstår før Fase B er ferdig
| ID | Oppgave | Blokkering |
|----|---------|------------|
| CI1-trigger | Cloud Build trigger for opax-mcp | Manuelt i GCP Console |
| CG5c | SMS-varsler | `TWILIO_*` env-vars |
| ML-3a VM | GPU Spot VM for Emma | Planlegging |
| Env-vars | `SENDGRID_API_KEY`, `GOOGLE_CREDIT_TOTAL_USD` m.fl. | GCP Console |
---
## Fase C — Salg + multi-tenant (🟡 LATER)
| ID | Oppgave | Status | Notat |
|----|---------|--------|-------|
| **C4** | Medioteq partnerstrategimøte (joint venture) | 🟡 Klar å aktivere | Aktiveres etter CI1-trigger |
| **C5** | Salgsdemo | 🟡 | Avventer C4 |
| ML-3c | Hybrid agent: Emma internt / Jason for kunder | 🟡 | |
| T1T4 | Threadstone full app | 🟡 | |
| Fase C | Multi-tenant: `<kunde>.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
- Diagnostiserte `{"detail":"Not Found"}``opax.vauco.no` etter IAP-login
- Fix: `COPY static/` i Dockerfile + `GET /` rute med absolutt sti i `app.py`
- Dokumentert i AGENT_RULEBOOK R-05, R-06, R-07
### 2026-06-10 kveld — Boot prompt + cron + webhook
- `UNIVERSAL_BOOT_PROMPT.md` v1.4 opprettet
- `boot.sh` region-fix, `cloudbuild.yaml` notify-fix
- `vm-teardown.sh` + `vm-startup.sh` opprettet
- Cron-varsler til Google Chat aktivert på VM
### 2026-06-11 — CG4b live + strategisk pivoting
- Chart.js donut live — CG4b ✅
- C4 (Medioteq) deprioritert — presisert som joint venture, ikke kunde
- Fokus satt til CostGuard klient-flow
### 2026-06-12 — Prismodell v2 + push-first arkitektur
- Prismodell revidert basert på markedsanalyse
- Ny tier-struktur: Starter $499 / Guard $999 / Shield $1.999 / Enterprise $3.500+
- Push-first: Jason finner kunden der de er
- Delivery layer: CG5a + CG5b + CG5c
### 2026-06-15 — Fase B hoveddel + CI1 + eierskap-prinsipp
- CG5a `POST /notify/webhook`
- CG5b `POST /notify/email`
- CG5-onboard token-invite system ✅
- CG6 `costguard-dashboard.html`
- OQ-26 `docs/gemma/world.md`
- CI1 `opax-mcp/server.py` 20 tools ✅
- CI1 `cloudbuild.mcp.yaml`
- **Prinsipp fastslått:** Ingen tredjepartsverktøy. Alt eies i eget GCP/GitHub.
- CI1-trigger gjenstår — manuelt steg i GCP Console av Chris
---
## Fase D — Secrets & Sikkerhet (🟠 IN PROGRESS)
> **Fokus:** Integrere eksterne tjenester (Twilio, etc.) sikkert via Secret Manager og IAM.
| ID | Oppgave | Status | Prioritet |
|----|---------|--------|-----------|
| **TW-1** | Twilio Secrets (SID, Auth, Number) i Secret Manager | 🟠 in progress | Høy |
| **TW-2** | Koble Twilio Secrets til opax-mcp | 🔴 | Høy |
| **TW-3** | Test `send_sms` tool | 🔴 | Høy |
| **INFRA-1** | Automatic restart på `osvauco-dev-vm` | 🔴 | Medium |
| **INFRA-2** | Statisk IP på `osvauco-dev-vm` | 🔴 | Medium |
| **OLLAMA-1** | Sikre Ollama-endepunkt på `osvauco-dev-vm` | 🔴 | Medium |
---
## Fase E — AI-agent Telefoni (🟡 LATER)
> **Fokus:** Aktivere toveis talestyrt kommunikasjon med Emma-agenten.
**Kommunikasjonsagent (Emma som kommunikasjonslag)**
- Utgående SMS operativ ✅
- Neste: innkommende SMS → Emma → auto-svar
- Fremtidig: WhatsApp, voice, AirPods-integrasjon
### Uke 3-4: Inngående AI-telefonsvarer
| ID | Oppgave | Status | Notat |
|----|---------|--------|-------|
| **VOICE-1** | `/voice` webhook i opax-mcp | 🟡 | |
| **VOICE-2** | Konfigurer Twilio Voice URL | 🟡 | |
| **VOICE-3** | Bygg ConversationRelay WebSocket | 🟡 | |
| **VOICE-4** | Definer Emma telefon-persona | 🟡 | |
### Uke 5-6: Utgående AI-anrop
| ID | Oppgave | Status | Notat |
|----|---------|--------|-------|
| **CALL-1** | Trigger-logikk for utgående anrop | 🟡 | |
| **CALL-2** | Implementer anrop via Twilio Outbound API | 🟡 | |
| **CALL-3** | Definer caser (kostnad, møte, etc) | 🟡 | |
---
## Fase F — Multikanal-orkestrering (🟡 LATER)
> **Fokus:** La Emma velge den mest effektive kommunikasjonskanalen autonomt.
| ID | Oppgave | Status | Notat |
|----|---------|--------|-------|
| **CHAN-1** | Kanalvalg-logikk i Emma | 🟡 | |
| **CHAN-2** | Integrer med `main.py` | 🟡 | |