OSVauco/docs/HANDOFF.md
chrischristiansen-glitch 95ad4f799a
Revise HANDOFF document for phase 2 updates
Updated the HANDOFF document to reflect the latest status, critical issues, and tasks for the ongoing phase 2. Added details on Dockerfile fixes, panel statuses, and next steps for development.
2026-06-13 17:22:45 +02:00

5.5 KiB

HANDOFF — Vauco OS

Sist oppdatert: 2026-06-13 17:00 CEST Skrevet av: Perplexity (stand-in) Status: Fase 2 pågår — opax.html paneler og Dockerfile-fix


⚠️ KRITISKE REGLER — les alltid først

  • Hovudapp: main.py i rot — IKKE 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=8080
  • ALDRI --audiences-flag
  • Smoke-test: skal peke på /health (ikke /debug-health)

🔴 Siste kjente problem — Dockerfile base-image

Bygg 00401 og 00403 viste fortsatt:

WORKDIR /app/agents/core-logic
CMD uvicorn app:app

Selv etter at agents/core-logic/Dockerfile ble fikset.

Rotårsak: osvauco-base:latest base-image inneholder gammel WORKDIR og CMD som arves.

Siste fix (commit beb466e):

  • WORKDIR /app satt eksplisitt først i Dockerfile
  • COPY docs/ ./docs/ lagt til
  • CMD ["uvicorn", "main:app", ...] bekreftet
  • Smoke-test tilbake til /health

Hvis neste bygg fortsatt feiler på /health:

gcloud builds submit --config=cloudbuild.base.yaml

Deretter trigger et nytt bygg.


🧪 Panel-status opax.vauco.no (testet 2026-06-13 17:00)

Panel Status Problem / Merknad
Jason chat Svarer Enkle spørsmål OK — verktøykall ga HTTP 500 (devtools-fix pushet)
CostGuard ⚠️ Ingen data Viser "Ingen data tilgjengelig" — løses når riktig app er oppe
Kalkulator Fungerer Slider + ROI live
Cloud Build ⚠️ Ingen builds REST-kall fungerer men returnerer tom liste — auth OK
VM-er Fungerer RUNNING, IP, SSH-knapp til GCP
Sites & Moduler Fungerer Alle 6 kort vises
Terminal 🟡 Skall JS kaller endepunkter direkte, ingen POST /terminal/exec backend
MD ⚠️ HTTP 404 Åpne-knappen feiler — løses når COPY docs/ er i prod
Docs Browser ⚠️ HTTP 404 Samme — løses med riktig Dockerfile i prod

🔴 Nåværende oppdrag — gjør i denne rekkefølgen

Oppdrag 1 — Verifiser at Dockerfile-fix er i prod

# Sjekk siste revisjon
gcloud run services describe osvauco-agent --region=us-central1 \
  --format="value(status.latestReadyRevisionName)"

# Test /health
curl http://localhost:8080/health

# Test /docs/
curl http://localhost:8080/docs/MASTERPLAN.md | head -5

Hvis HTTP 404 på /health → rebuild base-image (se over).

Oppdrag 2 — Terminal backend (main.py)

Legg til:

@app.post("/terminal/exec")
async def terminal_exec(body: dict):
    cmd = body.get("cmd", "").strip()
    whitelist = {
        "health":  lambda: {"output": "OK", "exit_code": 0},
        "billing": "GET /billing/summary",
        "build":   "GET /opax/build-status",
        "help":    lambda: {"output": "Kommandoer: health billing build logs help", "exit_code": 0},
    }
    if cmd not in whitelist:
        return {"output": f"Ukjent kommando: {cmd}", "exit_code": 1}
    # kall internt og returner output som streng

Koble opax.html terminal-input til POST /terminal/exec og vis output.

Oppdrag 3 — VM SSH-nøkkel modal (main.py + opax.html)

@app.get("/vm/ssh-key")
async def vm_ssh_key(instance: str = "osvauco-dev-vm"):
    # hent public key via Compute Engine metadata API
    # google.auth + httpx GET
    # https://compute.googleapis.com/compute/v1/projects/{project}/zones/us-central1-b/instances/{instance}
    return {"public_key": str, "instance": str}

Legg til "Vis SSH-nøkkel"-knapp på VM-kortet i opax.html.


Levert og bekreftet

Commit Hva
6611927 google-cloud-build i requirements + BQ-migrering
c114f6c billing-dashboard: tre pool-bars, banner, allSettled
bc501c1 credit_pools[], effective_days, badge_class
055a482 GET /notify/channels — verifisert i prod
4693fea CI-fix: fjernet --audiences fra smoke-test
39f714a MD-panel: marked.js + openMd()
b5c03d4 CostGuard: fetchWithTimeout 10s + fallback
3cc6a83 Docs Browser: dropdown, auto-load, marked.js
beb466e Dockerfile: WORKDIR /app, COPY docs/, main:app

OQ-logg

OQ Beskrivelse Status
OQ-29 GET /notify/channels Prod
OQ-30 Browser-panel opax.html Levert
OQ-31 credit_pools[] Komplett

⚠️ Gjenstår

# Oppgave Prioritet
1 Verifiser Dockerfile-fix i prod (/health + /docs/) 🔴 Høy
2 POST /terminal/exec backend + frontend kobling Høy
3 GET /vm/ssh-key + modal i opax.html Medium
4 Sett varslings env-vars: SENDGRID_API_KEY, TWILIO_ACCOUNT_SID Lav
5 CG7-scope — venter på Chris Venter
6 Emma/Gemma GPU VM — docs/gemma/world.md finnes Medium

🏗 Systemstatus

Komponent Status
Cloud Run osvauco-agent Live us-central1
opax.vauco.no Live — 5/9 paneler fungerer
costguard.oss.vauco.no ⚠️ 403 i inline-panel — åpne direkte i nettleser
Jason ADK ⚠️ Verktøykall feilet — devtools-fix pushet, venter på deploy
BQ billing export Aktiv
Gemma/Emma VM Ikke startet
Kreditt env-vars Satt (INFRA 2911 NOK utløper 2026-07-10 ⚠️)