Updated the last modified date and status in the master plan. Added a quick-start guide for Cloud Shell and made various adjustments to the task list and notes.
177 lines
5.4 KiB
Markdown
177 lines
5.4 KiB
Markdown
# VAUCO MASTERPLAN — Chris Christiansen
|
||
|
||
**Sist oppdatert: 2026-05-23 CEST**
|
||
**Status: Repo ferdig — GCP gjenstår (A4–A8 neste)**
|
||
|
||
---
|
||
|
||
## KONTEKST — Hva vi bygger
|
||
|
||
Ett AI-drevet operativsystem (OPAX) som kjører på Google Cloud.
|
||
Du er første kunde. Når det virker for deg → selg det til andre.
|
||
|
||
**Repo-oversikt:**
|
||
| Repo | Hva det er |
|
||
|---|---|
|
||
| `OSVauco` | Regler, GCP-scripts, agenter, docs — KJERNEN |
|
||
| `vauco-gemini-tui-bridge` | Din TUI-cockpit |
|
||
| `vauco-os` | Det kundene bruker |
|
||
| `vauco-bootstrap` | Onboarding av nye kunder |
|
||
| `deep-dream` | Strategisk visjon — aldri deploy herfra |
|
||
|
||
---
|
||
|
||
## CLOUD SHELL QUICK-START (kopi-klipp)
|
||
|
||
> Bruk Cloud Shell: https://shell.cloud.google.com
|
||
|
||
```bash
|
||
# Steg 1: Klon og sett opp miljø
|
||
gcloud config set project propane-will-491900-m5
|
||
git clone https://github.com/chrischristiansen-glitch/OSVauco.git ~/OSVauco
|
||
cd ~/OSVauco
|
||
|
||
# Steg 2: Kopier og rediger .env
|
||
cp .env.example .env
|
||
nano .env
|
||
# Fyll ut: BILLING_ACCOUNT_ID og ALERT_EMAIL
|
||
# Alle andre verdier er ferdig-forhåndsutfylt
|
||
|
||
# Steg 3: Installer Python-avhengigheter
|
||
pip install google-adk google-cloud-aiplatform>=1.111.0 --quiet
|
||
|
||
# Steg 4: Kjør i rekkefølge (kilde .env først)
|
||
source .env
|
||
bash infrastructure/00-authcheck.sh
|
||
bash infrastructure/01-setupenv.sh
|
||
bash infrastructure/07-rag-setup.sh
|
||
# *** Kopier RAG_CORPUS_NAME fra output inn i .env ***
|
||
nano .env # Legg til: export RAG_CORPUS_NAME="..."
|
||
source .env
|
||
|
||
bash infrastructure/08-memorybank-setup.sh
|
||
# *** Kopier MEMORY_ENGINE_NAME fra output inn i .env ***
|
||
nano .env # Legg til: export MEMORY_ENGINE_NAME="..."
|
||
source .env
|
||
|
||
bash infrastructure/05-cloudrun-deploy.sh
|
||
bash infrastructure/04-observability-setup.sh
|
||
|
||
# Om kvelden (OBLIGATORISK — unngå 24/7-fakturering):
|
||
bash infrastructure/03-teardown.sh
|
||
```
|
||
|
||
---
|
||
|
||
## FASE A — Ferdigstill kjernen (GCP oppe)
|
||
|
||
**Mål: Agenten din er live på Google Cloud | Tid: Ca. 2 timer**
|
||
|
||
```
|
||
[ ] A1 — cp .env.example .env og fyll inn verdier
|
||
PROJECT_ID=propane-will-491900-m5
|
||
REGION=us-central1
|
||
BILLING_ACCOUNT_ID=0171F6-057E6B-A260BA
|
||
ALERT_EMAIL=chris.christiansen@vauco.no
|
||
ORCHESTRATOR_MODEL=gemini-2.0-flash
|
||
SUBAGENT_MODEL=gemini-2.0-flash
|
||
[ ] A2 — bash infrastructure/00-authcheck.sh
|
||
[ ] A3 — bash infrastructure/01-setupenv.sh
|
||
[ ] A4 — bash infrastructure/07-rag-setup.sh
|
||
OQ-02: Script faller automatisk tilbake til us-east1 om nødvendig
|
||
ACTION: Kopier RAG_CORPUS_NAME til .env
|
||
[ ] A5 — bash infrastructure/08-memorybank-setup.sh
|
||
OQ-01: Python SDK only (auto-installert av script)
|
||
ACTION: Kopier MEMORY_ENGINE_NAME til .env
|
||
[ ] A6 — bash infrastructure/05-cloudrun-deploy.sh
|
||
[ ] A7 — bash infrastructure/04-observability-setup.sh
|
||
[ ] A8 — bash infrastructure/03-teardown.sh (kjør hver kveld)
|
||
```
|
||
|
||
---
|
||
|
||
## FASE B — Sikring og CI/CD
|
||
|
||
**Mål: Begrenset tilgang og aktiv CI/CD | Tid: 1 time**
|
||
|
||
```
|
||
[ ] B1 — bash infrastructure/02-deploy.sh (IAP på opax.vauco.no)
|
||
[ ] B2 — bash infrastructure/06-cicd-setup.sh
|
||
OQ-04: GitHub OAuth må settes opp manuelt i GCP Console
|
||
https://console.cloud.google.com/cloud-build/triggers
|
||
```
|
||
|
||
---
|
||
|
||
## FASE C — Første salgsmodul
|
||
|
||
**Mål: Ny kunde onboardet på 30 minutter | Tid: Ukentlig arbeid**
|
||
|
||
```
|
||
[ ] C1 — Pakk `vauco-bootstrap` som onboardingprodukt
|
||
[ ] C2 — Pakk `vauco-os` som kundeflate
|
||
[ ] C3 — Første kunde: Medioteq (europe-north1, separat GCP-prosjekt)
|
||
```
|
||
|
||
---
|
||
|
||
## INFRASTRUKTUR
|
||
|
||
| Script | Rolle | Status |
|
||
|--------|-------|--------|
|
||
| `00-authcheck.sh` | Verifiser gcloud-innlogging | Klar |
|
||
| `01-setupenv.sh` | Aktiver APIs, SA, IAM, budsjett | Klar |
|
||
| `02-deploy.sh` | IAP-deploy på eget domene | Klar |
|
||
| `03-teardown.sh` | Riv ned Cloud Run | Klar |
|
||
| `04-observability-setup.sh` | Monitoring + alerting | Klar |
|
||
| `05-cloudrun-deploy.sh` | ADK-agent til Cloud Run | Klar |
|
||
| `06-cicd-setup.sh` | GitHub → Cloud Build | Klar |
|
||
| `07-rag-setup.sh` | RAG Engine corpus + fallback | Oppdatert |
|
||
| `08-memorybank-setup.sh` | Memory Bank + auto-install | Oppdatert |
|
||
|
||
---
|
||
|
||
## BEKREFTET GA-API
|
||
|
||
| API | Status | Bekreftet fra |
|
||
|-----|--------|---------------|
|
||
| `google.adk.Agent` (ikke LlmAgent) | Bekreftet GA-API |
|
||
| `load_memory_tool` | Bekreftet fra adk-python samples |
|
||
| CMEK ikke for RAG Engine | Ikke støttet (OQ-03) |
|
||
| CI/CD `--no-traffic` | Manuell trafikkbytte — HITL |
|
||
| Idempotente scripts | Trygt å kjøre flere ganger |
|
||
| `03-teardown.sh` hver kveld | Agent Runtimes koster 24/7 |
|
||
|
||
---
|
||
|
||
## DRIFTSKOSTNADER
|
||
|
||
| Scenario | Kostnad/mnd |
|
||
|---|---|
|
||
| Bare deg (dev, teardown daglig) | ~$25-75 |
|
||
| 1 betalende kunde (lett prod) | ~$115-280 |
|
||
| Medioteq-type (klinisk, compliance) | ~$220-350 |
|
||
|
||
Breakeven: 1 kunde til $300-500/mnd dekker alle kostnader.
|
||
Ikke bygg kost-analyse-system nå — spør agenten når GCP er oppe.
|
||
|
||
---
|
||
|
||
## KJENTE HULL
|
||
|
||
| ID | Hva | Workaround |
|
||
|---|---|---|
|
||
| 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 | Manuelt i Console |
|
||
| OQ-05 | gcloud alpha monitoring ustabil | Fallback til true |
|
||
| OQ-06 | Memory Bank auto-discovery | Eksplisitt env var |
|
||
| OQ-07 | Monitoring email flag-format | Teste i dev |
|
||
| OQ-08 | VPC connector e2-micro regional | Default us-central1 |
|
||
|
||
---
|
||
|
||
*OSVauco-NMTMD-GCOS | propane-will-491900-m5 | us-central1*
|
||
*GitHub: chrischristiansen-glitch/OSVauco*
|