184 lines
7.1 KiB
Markdown
184 lines
7.1 KiB
Markdown
# 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 | 🟡 | |
|
||
| T1–T4 | 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"}` på `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` | 🟡 | |
|
||
|