- MASTERPLAN §6: AI-modell-strategi utvidet med tofase-plan (Vertex nå → Gemma lokalt når kreditter brukes) - MASTERPLAN §12: OPAX-evolusjon utvidet med Gemma-verdenbygging (simultan kontekstlasting) - ROADMAP: ML-3 Gemma-migrering lagt til under LATER med trigger + deloppgaver ML-3a–ML-3d
363 lines
13 KiB
Markdown
363 lines
13 KiB
Markdown
# VAUCO OS — MASTERPLAN
|
||
|
||
**Eier:** Chris Christiansen · Vauco AS · Org.nr 935 989 779
|
||
**Sist oppdatert:** 2026-06-10
|
||
**Status:** 🟢 AUTORITATIV — én kilde til sannhet for hele Vauco-økosystemet
|
||
|
||
> **Regel #1:** Denne filen er sannheten. Hvis en annen fil sier noe annet — denne vinner.
|
||
> **Regel #2:** Endringer her krever eksplisitt `PLAN APPROVED` fra Chris.
|
||
> **Regel #3:** Roadmap → seksjon 7. Sesjonsstatus → `docs/HANDOFF.md`. Ingen andre handoff-filer.
|
||
|
||
---
|
||
|
||
## 1. Plattformhierarki — sannheten i én modell
|
||
|
||
```
|
||
Vauco AS (selskap, eier alle merkevarer)
|
||
│
|
||
├── vauco.no (APEX — bedriftens salgs- og portalside; ansiktet utad)
|
||
│ └── ruter besøkende videre til riktig modul
|
||
│
|
||
└── VAUCO OS (plattform — visjon, økonomi, token-lag, agent-fabrikk)
|
||
└── OPAX (engine — Cloud Run, RAG, agentic arkitektur, IAP)
|
||
├── Modul #1 · CostGuard (live på costguard.oss.vauco.no)
|
||
├── Modul #2 · Threadstone (landingsside live, app i bygg)
|
||
└── Modul #3 · [navngis senere]
|
||
|
||
Separat merkevare under Vauco AS (parkert til etter Modul #1 + #2 lever):
|
||
└── Proof of Curiosity (egen identitet, ikke en OPAX-modul)
|
||
```
|
||
|
||
**Fire nivåer, fire formål:**
|
||
|
||
| Nivå | Hva | Hvem ser det |
|
||
|---|---|---|
|
||
| **vauco.no (apex)** | **Bedriftens salgsportal — viser hvem Vauco AS er og hvilke moduler vi selger** | **Alle: kunder, partnere, presse, kandidater** |
|
||
| Vauco OS | Plattformen Chris bygger og selger fra | Internt (Chris + agenter) |
|
||
| OPAX | Engine som driver modulene | Internt + utviklere |
|
||
| Modul (CostGuard / Threadstone / …) | Det kundene faktisk kjøper | Kunder |
|
||
|
||
**Salgskanal-prinsipp:**
|
||
- `vauco.no` = portalen som forteller "hva selger vi" og leder til riktig modul
|
||
- Hver modul har sin egen landings-/produktside
|
||
- Vauco OS og OPAX nevnes ikke som produkter på `vauco.no` — de er interne verktøy
|
||
|
||
**Ikke selg Vauco OS. Ikke selg OPAX. De er interne verktøy.**
|
||
|
||
---
|
||
|
||
## 2. Registrerte domener — fasit
|
||
|
||
### Vauco (hos Proisp)
|
||
|
||
| Domene | Prosjekt | Status |
|
||
|--------|----------|--------|
|
||
| `vauco.no` | Rot for alle Vauco-tjenester | ✅ Aktiv, live på GCS+LB |
|
||
|
||
**Aktive subdomener:**
|
||
|
||
| Domene/subdomen | Teknologi | Status | Eier-flate |
|
||
|----------|-----------|--------|------------|
|
||
| `vauco.no` (apex) | GCS + GCP Load Balancer + Cloud CDN | ✅ LIVE · 2026-06-05 | Vauco AS apex |
|
||
| `www.vauco.no` | Følger apex | ✅ LIVE | Vauco AS apex |
|
||
| `opax.vauco.no` | LB + IAP → Cloud Run `osvauco-agent` | ✅ Live (IP 34.98.77.173) | OPAX |
|
||
| `oss.vauco.no` | Staging-miljø | ✅ Aktiv | OPAX |
|
||
| `os.vauco.no` | Prod-miljø | 🔮 Fase C | OPAX |
|
||
| `costguard.oss.vauco.no` | Cloud Run via IAP | ✅ Live | CostGuard |
|
||
| `costguard.os.vauco.no` | Promoteres fra oss | 🔮 Fase C | CostGuard |
|
||
| `threadstone.vauco.no` | GitHub Pages (`threadstone-landing`) | ✅ Live | Threadstone |
|
||
| `app.threadstone.vauco.no` | GitHub Pages (`vauco-saas.github.io`) | ⚠️ CNAME satt, side mangler | Threadstone |
|
||
| `<kunde>.vauco.no` | LB + IAP via Terraform | 🔮 Fase C2 | OPAX/Multi-tenant |
|
||
|
||
**Reservert til senere:**
|
||
|
||
| Subdomen | Tiltenkt formål | Trigger |
|
||
|----------|------------------|---------|
|
||
| `status.vauco.no` | Statuspage | Etter første kunde |
|
||
| `docs.vauco.no` | Offentlig kundedok | CG4 / første kunde |
|
||
| `careers.vauco.no` | Stillinger | Når Vauco rekrutterer |
|
||
|
||
**Email-infra:**
|
||
- MX: Google Workspace ✅
|
||
- SPF/DKIM/DMARC: ⚠️ Mangler — sett opp som del av V1e
|
||
|
||
### Proof of Curiosity (hos Proisp) — egen merkevare
|
||
|
||
| Domene | Merknad |
|
||
|--------|---------|
|
||
| `proof-of-curiosity.com` | Registrert — ikke i bruk |
|
||
| `proofofcuriosity.com` | Registrert — ikke i bruk |
|
||
| `proofofcuriosity.io` | Registrert — ikke i bruk |
|
||
| `proof-of-curiosity.no` | Registrert — ikke i bruk |
|
||
| `proofofcuriosity.no` | Registrert — ikke i bruk |
|
||
|
||
> **Trigger:** Ingen POC-arbeid før Modul #1 + #2 lever.
|
||
|
||
---
|
||
|
||
## 3. Repo-struktur — fasit
|
||
|
||
### Aktive repos (5)
|
||
|
||
| Repo | Formål | Synlighet | Eier-flate |
|
||
|------|--------|-----------|------------|
|
||
| `OSVauco` | Mono-repo: OPAX-engine, infra, Terraform, all dokumentasjon | Privat | OPAX (rot) |
|
||
| `vauco-bootstrap` | Terraform-modul for kunde-provisjonering | Privat | OPAX |
|
||
| `vauco-site` | `vauco.no` salgsportal | Public | Vauco AS apex |
|
||
| `threadstone-landing` | `threadstone.vauco.no` landingsside | Public | Threadstone |
|
||
| `vauco-saas.github.io` | `app.threadstone.vauco.no` Threadstone-app frontend | Public | Threadstone |
|
||
|
||
### Arkiverte repos
|
||
|
||
| Repo | Arkivert | Innholdet finnes nå i |
|
||
|------|----------|------------------------|
|
||
| `vauco-os` | ✅ 2026-05-27 | `OSVauco/docs/architecture/` |
|
||
| `vauco-gemini-tui-bridge` | ✅ 2026-05-27 | Arkiv — reaktiveres som del av OX1b |
|
||
| `command-hub` | ✅ 2026-05-27 | `OSVauco/static/command-hub.html` |
|
||
|
||
> **Regel:** Nytt repo krever eksplisitt `REPO APPROVED` fra Chris.
|
||
|
||
---
|
||
|
||
## 4. OSVauco — intern mappestruktur (fasit)
|
||
|
||
```
|
||
OSVauco/
|
||
├── MASTERPLAN.md
|
||
├── README.md
|
||
├── AGENTS.md
|
||
├── Dockerfile / cloudbuild.yaml
|
||
│
|
||
├── agents/
|
||
│ ├── core-logic/ OPAX orchestrator + FastAPI app
|
||
│ │ ├── agent.py Kjører Gemini nå → Gemma fra ML-3
|
||
│ │ ├── app.py
|
||
│ │ └── token_logger.py
|
||
│ ├── rag/
|
||
│ ├── memory/
|
||
│ ├── multi_agent/
|
||
│ ├── eval/
|
||
│ ├── tests/
|
||
│ └── tools/
|
||
│
|
||
├── auth/
|
||
├── ml/
|
||
├── infrastructure/
|
||
├── scripts/
|
||
├── static/
|
||
│ ├── opax.html Operator hub — blir Chris sitt cockpit (OX1)
|
||
│ ├── billing-dashboard.html
|
||
│ ├── command-hub.html
|
||
│ ├── costguard.html
|
||
│ └── admin.html
|
||
├── docs/
|
||
│ ├── MASTERPLAN.md ← denne filen
|
||
│ ├── ROADMAP.md
|
||
│ ├── HANDOFF.md
|
||
│ ├── AGENT_RULEBOOK.md
|
||
│ ├── gemma/ ← NY: Gemma kontekstpakke (ML-3b)
|
||
│ │ ├── world.md Vaucos verden — alt Gemma trenger å vite
|
||
│ │ └── README.md
|
||
│ └── [øvrige tema-docs]
|
||
├── protocols/sessions/
|
||
└── data/
|
||
```
|
||
|
||
---
|
||
|
||
## 4b. vauco.no — salgsportal (Vauco AS apex)
|
||
|
||
> Eget repo: `vauco-saas/vauco-site` — LIVE 2026-06-05 på GCS+LB.
|
||
|
||
### Formål
|
||
Vauco AS sin offisielle bedriftsside. Selger moduler ved å lede besøkende til riktig produktside.
|
||
|
||
### Versjons-evolusjon
|
||
|
||
| Versjon | Inneholder | Trigger |
|
||
|---------|------------|---------|
|
||
| V1 (MVP) ✅ | Hero + modul-grid + om-oss + kontakt + personvern | LIVE 2026-06-05 |
|
||
| V2 | Sales-CTA + CostGuard ROI-kalkulator | Etter første betalende kunde |
|
||
| V3 | Blogg, kundereferanser, status-widget | Når 3+ kunder |
|
||
| V4 | Internasjonalt (`vauco.no/en`), Proof of Curiosity i footer | Etter Modul #3 |
|
||
|
||
---
|
||
|
||
## 5. Dokumenthierarki — én kilde til sannhet
|
||
|
||
| Fil | Rolle | Oppdateres |
|
||
|-----|-------|------------|
|
||
| `docs/MASTERPLAN.md` | Arkitektur, domener, repos, agent-identitet | Ved arkitekturendringer |
|
||
| `docs/ROADMAP.md` | Faser, status, backlog | Hver sesjon |
|
||
| `docs/HANDOFF.md` | Hva ble gjort, hva er neste | Overskrives hver sesjon |
|
||
| `docs/AGENT_RULEBOOK.md` | Locked definitions for agent-boot | Ved infrastruktur-låsing |
|
||
| `docs/gemma/world.md` | Gemmas verden — kontekstpakke for lokal modell | Bygges simultant med alt annet |
|
||
| `protocols/sessions/YYYY-MM-DD_<tema>.md` | Detaljerte protokoller | Append-only |
|
||
|
||
---
|
||
|
||
## 6. AI-modell — tofase-strategi
|
||
|
||
### Fase 1 — Nå (Vertex AI, løper ut kreditter)
|
||
|
||
| Parameter | Verdi | Merknad |
|
||
|-----------|-------|---------|
|
||
| **Intern modell (Jason/Chris)** | `gemini-2.5-pro` / `gemini-2.5-flash` | Via Vertex AI, tærer på kreditter |
|
||
| **Kundemodell** | `gemini-2.5-flash` | Via Vertex AI — kunder betaler indirekte |
|
||
| **Endpoint** | `us-central1` | Vertex-kreditter |
|
||
| **SDK** | `google-adk` + `google-genai` | |
|
||
| **Status Claude** | ⏳ Venter på EU-kvote | Bytt når kvote innvilget |
|
||
|
||
### Fase 2 — Gemma-migrering (trigger: kreditter < 20% eller første kunde onboardet)
|
||
|
||
| Parameter | Verdi | Merknad |
|
||
|-----------|-------|---------|
|
||
| **Intern modell (Jason/Chris)** | `gemma-4-12b-it` int4 | GCP `g2-standard-4` Spot VM (~$120–150/mnd) |
|
||
| **Serving** | Ollama (utvikling) → vLLM (produksjon) | |
|
||
| **Kundemodell** | `gemini-2.5-flash` via Vertex | Uendret — kunder merker ingenting |
|
||
| **Kontekst** | `docs/gemma/world.md` lastet som system-prompt | Gemma forstår Vauco fra dag 1 |
|
||
|
||
**Prinsipp:** Kunder bruker alltid Gemini via Vertex. Chris/Jason bruker Gemma lokalt.
|
||
**Gemma er ikke dum når den starter** — kontekstpakken (`docs/gemma/world.md`) bygges simultant og lastes ved oppstart.
|
||
|
||
**Bytte til Gemma krever:**
|
||
1. ML-3b kontekstpakke ferdigstilt
|
||
2. GPU-VM verifisert med smoke-test
|
||
3. Eksplisitt `MODEL APPROVED` fra Chris
|
||
4. Oppdatering av `agent.py`, `AGENT_RULEBOOK.md` og denne tabellen i samme commit
|
||
|
||
---
|
||
|
||
## 7. Roadmap — kortversjon
|
||
|
||
> Full status i `docs/ROADMAP.md`.
|
||
|
||
### 🔴 NOW
|
||
- [x] K2, F8, CG6, CG3e — alle done ✅
|
||
|
||
### 🟠 NEXT
|
||
- V1e — SPF/DKIM/DMARC
|
||
- CG4 — Token Intelligence (estimering + prising)
|
||
- OX1 — Operator Hub (Cloud Build widget, TUI, Jason-chat som cockpit)
|
||
- ML-3b — Gemma kontekstpakke bygges simultant (starter neste sesjon)
|
||
|
||
### 🟡 LATER
|
||
- C4 — Første betalende kunde
|
||
- ML-3 — Full Gemma-migrering (trigger: kreditter < 20%)
|
||
- T1–T4 — Threadstone
|
||
- Fase C — Multi-tenant
|
||
|
||
---
|
||
|
||
## 8. Agent-identitet
|
||
|
||
| Identitet | E-post | Rolle |
|
||
|-----------|--------|-------|
|
||
| Eier / admin | `chris.christiansen@vauco.no` | Full kontroll |
|
||
| Agent (OPAX / Jason) | `jason.vauger@vauco.no` | `billing.viewer` + `run.invoker` |
|
||
| Fremtidig gruppe | `billing@vauco.no` | `billing.viewer` (Fase C) |
|
||
|
||
**Forbudte kontoer:** `tinius.vauger`, `ccv` — aldri gi tilganger.
|
||
|
||
---
|
||
|
||
## 9. Cloud Run — live endepunkter
|
||
|
||
**Service:** `osvauco-agent` | **Region:** `us-central1` | **Project:** `propane-will-491900-m5`
|
||
**Direkte URL:** `https://osvauco-agent-357036551735.us-central1.run.app`
|
||
**Public URL:** `https://opax.vauco.no` (via LB 34.98.77.173 + IAP `@vauco.no`)
|
||
|
||
| Endepunkt | Status |
|
||
|-----------|--------|
|
||
| `GET /health` | ✅ |
|
||
| `POST /run` | ✅ |
|
||
| `POST /run/dag` | ✅ |
|
||
| `GET /billing/summary` | ✅ |
|
||
| `GET /billing/forecast` | ✅ |
|
||
| `GET /billing/anomalies` | ✅ |
|
||
| `GET /billing/history` | ✅ |
|
||
| `GET /billing/budget` | ✅ |
|
||
| `POST /billing/budget` | ✅ |
|
||
| `GET /billing/tokens/summary` | ✅ (data fra CG3e) |
|
||
| `GET /auth/login` | ✅ |
|
||
| `GET /auth/callback` | ✅ |
|
||
| `GET /state` | ✅ |
|
||
| `GET /telemetry/history` | ✅ |
|
||
|
||
---
|
||
|
||
## 10. Go-to-market
|
||
|
||
**Produkt #1: CostGuard**
|
||
- **Hvem:** Norske bedrifter med GCP-kostnader de ikke kontrollerer
|
||
- **Hva:** Autonomt kostnadsovervåkningsverktøy med AI-anomali-deteksjon
|
||
- **Pris:** $300–500/mnd per kunde (breakeven ved 1 kunde)
|
||
- **Salgskanal:** Chris selv → HITL-møte → `terraform apply`
|
||
|
||
**Produkt #2: Threadstone** (Q3 2026)
|
||
- Definisjon låses når Modul #1 har første kunde.
|
||
|
||
---
|
||
|
||
## 11. Kjente hull
|
||
|
||
| ID | Problem | Løsning | Prioritet |
|
||
|----|---------|---------|-----------|
|
||
| OQ-15 | BQ billing_export tabell | Venter på aktivering | Medium |
|
||
| OQ-17 | `github-token` secret mangler | Opprett alias fra `github-pat` | Medium |
|
||
| OQ-18 | VM alltid-på kostnad | Kjør `03-teardown.sh` hver kveld | Høy |
|
||
| OQ-20 | Nattlig GDrive backup | Fikset K3 · 2026-06-09 ✅ | — |
|
||
| OQ-21 | `app.threadstone.vauco.no` CNAME uten side | Bygg T2 eller fjern CNAME | Lav |
|
||
| OQ-22 | Claude EU-kvote | Vent på Google Cloud-team | Medium |
|
||
| OQ-23 | vauco.no placeholder | LIVE 2026-06-05 ✅ | — |
|
||
| OQ-24 | Ingen SPF/DKIM/DMARC | V1e | Høy |
|
||
| OQ-25 | Ingen personvern/vilkår | LIVE 2026-06-05 ✅ | — |
|
||
| OQ-26 | Ingen statuspage | Etter første kunde | Lav |
|
||
|
||
---
|
||
|
||
## 12. OPAX — fremtidig visjon
|
||
|
||
> Notert 2026-05-28, utvidet 2026-06-10.
|
||
|
||
### Operator Hub (OX1) — Chris sitt cockpit
|
||
|
||
OPAX (`opax.vauco.no`) blir Chris sin **komplette arbeidsflate** — aldri trenger VM igjen for daglig drift.
|
||
|
||
**Inneholder når ferdig:**
|
||
- Jason-chat (allerede der)
|
||
- Billing dashboard (allerede der)
|
||
- Cloud Build live-widget (spinner → ✅/❌ ved push)
|
||
- Embedded TUI/terminal (reaktiverer `vauco-gemini-tui-bridge`)
|
||
- Token Intelligence dashboard (CG4)
|
||
|
||
**Flyt:** tale → transkribering → Jason analyserer → genererer kundemodul → Chris reviewer → magic-link til kundens mail.
|
||
|
||
### Gemma-verdensbygging (ML-3b) — simultant spor
|
||
|
||
**Prinsipp:** Gemma skal ikke være dum når den tar over. Kontekstpakken bygges nå, simultant med alt annet.
|
||
|
||
```
|
||
docs/gemma/world.md ← bygges løpende fra neste sesjon
|
||
├── Hvem er Vauco AS og Chris
|
||
├── Plattformhierarkiet (Vauco OS → OPAX → Moduler)
|
||
├── Alle aktive domener og endepunkter
|
||
├── Agent-identitet og HITL-grenser
|
||
├── Alle sesjons-protokoller (komprimert)
|
||
├── Teknisk stack og GCP-konfig
|
||
├── Gjeldende ROADMAP-status
|
||
└── Tone og kommunikasjonsstil (norsk bokmål, direkte)
|
||
```
|
||
|
||
Når Gemma-VM starter → `world.md` lastes som system-prompt → Jason/Gemma forstår konteksten fra første token.
|
||
|
||
---
|
||
|
||
## 13. TUI-bridge — reaktiveres som OX1b
|
||
|
||
Lokal TUI-plan ble løst av OPAX + Cloud Shell + Gemini TUI. Koden ligger i arkiv (`vauco-gemini-tui-bridge`). Reaktiveres som **OX1b** — embedded terminal i operator hub — når OX1a (Cloud Build widget) er live.
|
||
|
||
---
|
||
|
||
*OSVauco | propane-will-491900-m5 | us-central1 | Autoritativ fra 2026-05-31 | Oppdatert 2026-06-10*
|