OSVauco/docs/HANDOFF.md
chrischristiansen-glitch 38596af1d8
Revise HANDOFF.md with updates and fixes
Updated the Handoff document with recent changes, including status updates, critical rules, and fixes related to Dockerfile and backend endpoints.
2026-06-13 18:31:19 +02:00

4.8 KiB

HANDOFF — Vauco OS

Sist oppdatert: 2026-06-13 18:00 CEST Skrevet av: Nemotron (stand-in) Status: Fase 2 — sesjon avsluttet


⚠️ KRITISKE REGLER — les alltid først

  • Hovudapp: main.py i rot — IKKJE agents/core-logic/app.py
  • Dockerfile: agents/core-logic/Dockerfile — skal ha WORKDIR /app og CMD ["uvicorn", "main:app", ...]
  • Region: us-central1 | Service: osvauco-agent | Prosjekt: propane-will-491900-m5
  • Test via proxy: gcloud run services proxy osvauco-agent --region us-central1 --project propane-will-491900-m5 --port 8181
  • ALDRI --audiences-flag
  • Smoke-test: skal peke på /health (ikkje /debug-health)
  • Curl mot prod: Bruk alltid identity token — TOKEN=$(gcloud auth print-identity-token) — IAP blokkerer utan

Levert i dag (2026-06-13)

PR #17 — merga til main (commit 1e6bc5b)

  • fix(opax): replace cloudbuild_v1 import with REST APId25caf1
  • fix: replace sync httpx.get with async client in build-status + terminal1e6bc5b
  • To stader i main.py fiksa: linje ~188 (build_status()) og linje ~248 (terminal_exec cmd=build)
  • Synkron httpx.getasync with httpx.AsyncClient(timeout=15.0) + raise_for_status()

Dockerfile-fix

  • fix(docker): start main:app fra /app — ikke agents/core-logicbeb466e
  • WORKDIR /app og CMD ["uvicorn", "main:app", ...] bekrefta i prod

Panelfiksar opax.html

  • fix(opax): MD-panel — bytt renderMd() med marked.js39f714a
  • fix(opax): CostGuard — AbortController 10s timeout + /billing/credits?days=30b5c03d4
  • fix(opax): Fix 4 — Browser → Docs Browser, marked.js render, default MASTERPLAN.md3cc6a83

Backend-endepunkt lagt til

  • feat(terminal+vm): POST /terminal/exec whitelist + GET /vm/ssh-keyc7e7b28

IAM

  • osvauco-agent-sa har fått roles/cloudbuild.builds.viewer — satt manuelt

Andre commits

  • chore: oppdater gemma/world.md + vm-teardown.sh6d0eeeb
  • chore: trigger CI/CD redeploy — rollback env-var fix3d8caf0

🔴 Incident i dag — env-var-krasj

Kva skjedde: --set-env-vars vart køyrt med plasshaldarar (<din-token>) i staden for faktiske verdiar. Cloud Run tolka < og > som ugyldig Python-syntaks → SyntaxError → container krasja → revision 00482-5hq dead.

Løysing:

  1. gcloud run services update ... --remove-env-vars GITHUB_TOKEN,SENDGRID_API_KEY,TWILIO_ACCOUNT_SID
  2. git commit --allow-empty + git pull --rebase + git push for å trigge ny CI/CD
  3. Tenesta tilbake på 00480-dbn → ny build 3d8caf0 deployd og live

Lærdom: Set aldri env-vars med plasshaldarar. Bruk Secret Manager for sensitive verdiar.


🧪 Panel-status opax.vauco.no

Panel Status
Jason chat Fungerer
Kalkulator Fungerer
VM-er Fungerer
Sites & Moduler Fungerer
CostGuard ⚠️ Ikkje verifisert i prod etter fix
Cloud Build ⚠️ Ikkje verifisert i prod etter fix
Terminal 🟡 Backend pusht, frontend-kobling manglar
MD-panel ⚠️ Ikkje verifisert i prod etter fix
Docs Browser ⚠️ Ikkje verifisert i prod etter fix

⚠️ Gjenstår (prioritert)

# Oppgåve Prioritet
1 Verifiser alle paneler i opax.vauco.no i nettlesar 🔴 Høy
2 Terminal frontend-kobling — runTerminalCommand() i opax.htmlPOST /terminal/exec 🔴 Høy
3 GET /vm/ssh-key modal i opax.html 🟡 Medium
4 Env-vars: GITHUB_TOKEN, SENDGRID_API_KEY, TWILIO_ACCOUNT_SID — hent frå SendGrid/Twilio/GitHub og set via --set-env-vars med faktiske verdiar 🟡 Medium
5 CG7-scope Venter på Chris
6 Emma/Gemma GPU VM — sjå docs/gemma/world.md 🟡 Medium
7 OAuth allowlist etter domene-migrering (ProISP → Google) 🟡 Issue open

🏗 Systemstatus

  • Cloud Run osvauco-agent: Live us-central1 — revision 00483 (etter CI/CD 3d8caf0)
  • opax.vauco.no: Live — panel-status ikkje verifisert etter dagens fixar
  • costguard.oss.vauco.no: 403 i inline-panel
  • Kreditt: 2911 NOK utløper 2026-07-10
  • Env-vars på Cloud Run: GOOGLE_CLOUD_PROJECT, GOOGLE_CLOUD_LOCATION, GOOGLE_GENAI_USE_VERTEXAI, BILLING_TABLE, RAG_CORPUS, RAG_LOCATION, GOOGLE_CLIENT_ID, SESSION_SECRET, GOOGLE_CLIENT_SECRET, MCP_SECRET
  • Manglar: GITHUB_TOKEN, SENDGRID_API_KEY, TWILIO_ACCOUNT_SID

📌 Neste sesjon — start her

  1. Gå til opax.vauco.no i nettlesar — sjekk alle 9 paneler
  2. Les main.py linje 240-280 for terminal-frontend-kobling
  3. Hent GITHUB_TOKEN frå github.com/settings/tokens, SENDGRID_API_KEY frå sendgrid.com, TWILIO_ACCOUNT_SID frå console.twilio.com
  4. Set env-vars med faktiske verdiar — ikkje plasshaldarar