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.
5.5 KiB
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.pyi rot — IKKEagents/core-logic/app.py - Dockerfile:
agents/core-logic/Dockerfile— skal haWORKDIR /appogCMD ["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 /appsatt eksplisitt først i DockerfileCOPY docs/ ./docs/lagt tilCMD ["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 ⚠️) |