OSVauco/MASTERPLAN.md

8.4 KiB

VAUCO MASTERPLAN — Chris Christiansen

Sist oppdatert: 2026-05-27 20:xx CEST Status: FASE A KOMPLETT | FASE B KOMPLETT | ML-1 live | CG1+CG2 live | OAuth live | CG3 neste


KONTEKST — Hva vi bygger

To parallelle spor:

  1. OPAX — AI-drevet operativsystem for deg selv (intern cockpit, opax.vauco.no). Medioteq og andre kunder onboardes via OPAX/Terraform — du styrer det selv innenfra OPAX, ikke her.

  2. CostGuard — Salgbart produkt. AI-drevet GCP-kostnadsovervåking som selges til andre bedrifter. Stack: Dialogflow CX → OSVauco Cloud Run → Cloud Billing API → Gemini 2.5 Flash Pris å drifte: ~$32-45/mnd. Salgspris: $99-299/mnd pr. kunde. Dette er fokus nå.

Repo-oversikt:

Repo Hva det er
OSVauco Kjerne: Cloud Run agent, GCP-scripts, ml/, auth/
vauco-gemini-tui-bridge Din TUI-cockpit
vauco-os Arkitektur og kundedok
vauco-bootstrap Terraform-modul for kunde-provisjonering (Fase C)
deep-dream Strategisk visjon — aldri deploy herfra

AGENT-IDENTITET

Identitet E-post Rolle Formål
Eier / admin chris.christiansen@vauco.no billing.admin + billing.viewer Full kontroll
Agent (OPAX) jason.vauger@vauco.no billing.viewer Hente og rapportere kostnadsdata autonomt
Fremtidig gruppe billing@vauco.no billing.viewer (Fase C) Delt innboks for team og kunder

DNS / DOMENE-ARKITEKTUR

Domene Type Teknologi Fase
opax.vauco.no Intern cockpit (kun Chris) CNAME → Cloud Run Live
costguard.vauco.no CostGuard salgsdemo CNAME → Cloud Run /static/ CG3 neste
kunde1.vauco.no / kundedomener Kunde-instanser LB + IAP (Terraform) Fase C

CLOUD RUN — LIVE ENDEPUNKTER

Service: osvauco-agent | Region: europe-west1 URL: https://osvauco-agent-357036551735.europe-west1.run.app Siste revisjon: osvauco-agent-00064-p9h

Endepunkt Status Beskrivelse
GET /health Health check
POST /run Agent (light/heavy)
POST /run/dag Parallell DAG
GET /billing/summary?client_id=X Kostnad per tjeneste siste 30d
GET /billing/forecast?client_id=X Prognose basert på 7d snitt
GET /billing/anomalies?client_id=X Anomali-deteksjon + Pub/Sub
GET /auth/login?client_id=X Start OAuth2-flow for klient
GET /auth/callback Google redirect → lagrer token
GET /static/billing-dashboard.html Billing dashboard UI
GET /state Agent state snapshot
GET /telemetry/history Telemetri

OAuth credentials (Vauco OS Web App):

  • Client ID: 357036551735-ka7t2fv9ue2jp01bs826hpdctlvispuo.apps.googleusercontent.com
  • Redirect URI: https://osvauco-agent-357036551735.europe-west1.run.app/auth/callback
  • Secrets i Secret Manager: OAUTH_CLIENT_ID, OAUTH_CLIENT_SECRET

BigQuery billing export:

  • Dataset: propane-will-491900-m5:billing_export
  • Tabell: ikke ankommet ennå (aktivert 2026-05-27, forventet innen 24t)
  • Når tabell dukker opp: sett BILLING_TABLE env-var i Cloud Run

FASE CG — CostGuard ← AKTIV SPRINT

[x] CG1 — Billing API-integrasjon
        ml/billing_agent.py: GET /billing/summary, /forecast
        BQ-spørring klar, venter på billing_export-tabell (i morgen)

[x] CG2 — Anomali-deteksjon
        ml/anomaly_detector.py: forbruk > 2x 7d-snitt → Pub/Sub

[x] AUTH — OAuth2 klient-onboarding
        auth/oauth_flow.py + auth/token_store.py
        /auth/login + /auth/callback live i main.py
        Token lagres per client_id i Secret Manager

[ ] CG3 — CostGuard landingsside
        costguard.vauco.no: "Koble til GCP"-knapp → /auth/login
        Dialogflow Messenger embed (Jason-v1 FAQ, DX1-DX3 ferdig)
        Billing dashboard embed (/static/billing-dashboard.html ferdig)
        CNAME costguard.vauco.no → Cloud Run

[ ] CG4 — Onboard første kunde via vauco-bootstrap Terraform-modul

[ ] CG5 — Salgsdemo klar

FASE A — KOMPLETT

[x] A1-A9 — Alle ferdig. Se tidligere historikk.
[x] SMOKE — scripts/smoke-test.sh: 10/10 ✅ (2026-05-26 01:45 CEST)
RAG corpus: projects/357036551735/locations/europe-west1/ragCorpora/6917529027641081856
Memory Engine: projects/357036551735/locations/us-central1/reasoningEngines/2260229219579592704

FASE A2 — Dialogflow CX FAQ-agent

[x] DX1 — Agent: OSVauco FAQ, us-central1, propane-will-491900-m5
[x] DX2 — Data Store: threadstone-faq-store, 39 Q&A-par
[x] DX3 — Norsk systemprompt, fungerer
[x] DX4 — Parkert til C4 (Medioteq) — Cloud Run URL: https://osvauco-agent-zjbqp3prqq-uc.a.run.app
[ ] DX5 — Publiser via Dialogflow Messenger (trigger: CG3)
[ ] DX6 — Budsjett-alert Dialogflow CX
[ ] DX7 — Voice-kanal (trigger: etter DX5)
[ ] B6  — Eksporter Dialogflow CX til versjonskontroll

FASE ML

[x] ML-1 — DAG, state store, telemetri ✅ (2026-05-25)
[ ] ML-2 — Adaptiv intelligens (trigger: >500 telemetri-kall)
[ ] ML-3 — Strategisk innsikt (trigger: ML-2 + første kunde)

FASE B — KOMPLETT

[x] B1 — Cloud Run live
[x] B2 — GitHub PAT i Secret Manager
[x] B3 — Cloud Build 2nd gen (trigger: osvauco-agent-deploy)
[x] B4 — GitHub App webhook
[x] B5 — Cost guard 500 NOK/mnd + GCS ML-telemetri
[x] B1-IAP — opax.vauco.no CNAME live
[ ] B6 — Eksporter Dialogflow CX (se DX-lista)

FASE C — Kunde-onboarding (Medioteq og videre)

NB: Medioteq og fremtidige kunder onboardes av deg selv via OPAX innenfra. Dette er ikke en oppgave for ekstern assistanse. Terraform-modulen er klar.

[x] C1 — vauco-bootstrap Terraform-modul klar (validate: PASS)
[x] C2 — vauco-os kundeflate + CUSTOMER_API.md
[x] C3 — billing@vauco.no Google Group
[ ] C4 — Medioteq: HITL-møte → velg project_id → terraform apply
        C4.1: project_id + billing_account_id (HITL-gate)
        C4.2: Auth (Google login → vurder BankID sluttfase)

INFRASTRUKTUR

Script Rolle Status
00-authcheck.sh Verifiser gcloud-innlogging Klar
01-setupenv.sh Aktiver APIs, SA, IAM, budsjetter, Pub/Sub Klar
02-deploy.sh IAP-deploy på eget domene Klar
03-teardown.sh Riv ned Cloud Run (kjør hver kveld) Klar
04-observability-setup.sh Cloud Monitoring + alerting Klar
05-cloudrun-deploy.sh ADK-agent til Cloud Run Klar
06-cicd-setup.sh GitHub → Cloud Build 2nd gen Klar
07-rag-setup.sh RAG Engine corpus + fallback Klar
08-memorybank-setup.sh Memory Bank + auto-install Klar
09-cost-check.sh Kostnadsoversikt + Artifact Registry Klar
10-cost-guard.sh Cloud Function auto-teardown + GCS telemetri sink Klar
11-billing-iam-hardening.sh Billing IAM hardening Klar
scripts/smoke-test.sh 10-case røyktest Klar

KJENTE HULL

ID Hva Status
OQ-01 Memory Bank — ingen gcloud CLI Python SDK only
OQ-02 RAG Engine regional availability Auto-fallback til us-east1
OQ-03 CMEK ikke for RAG Engine VPC-SC only
OQ-04 Cloud Build GitHub OAuth LØST — 2nd gen
OQ-05 gcloud alpha monitoring ustabil Fallback til true
OQ-06 Memory Bank auto-discovery Eksplisitt env var
OQ-11 Dialogflow CX Data Store norsk indeksering Teste nb-NO i DX2
OQ-12 gemini-2.0-flash ikke tilgjengelig LØST — gemini-2.5-flash/pro + LOCATION=global
OQ-13 ML-telemetri /tmp/ flyktig LØST — B5: GCS sink
OQ-14 LB vs CNAME LØST — CNAME intern, LB Terraform for kunder
OQ-15 billing_export BQ-tabell ikke ankommet Venter — aktivert 2026-05-27

DRIFTSKOSTNADER

Scenario Kostnad/mnd
Bare deg (dev, teardown daglig) ~$25-75
Dev + Dialogflow CX FAQ (10k req) ~$145-195
1 betalende kunde (lett prod) ~$115-280
Medioteq-type (klinisk, compliance) ~$220-350

Breakeven: 1 kunde til $300-500/mnd dekker alle kostnader.


LLM-RUTINGSSTRATEGI

Modell Pris (per 1M) Bruksområde
gemini-2.5-flash $0.30 / $2.50 light — alle enkle kall
gemini-2.5-pro $1.25 / $10.00 heavy — reasoning, compliance

Autoriserte heavy-brukere: opax, admin


OSVauco-NMTMD-GCOS | propane-will-491900-m5 | global (modell) / europe-west1 (infra)