6.1 KiB
6.1 KiB
HANDOFF — Vauco OS
Sist oppdatert: 2026-06-13 08:29 CEST Skrevet av: Perplexity (stand-in) via GitHub MCP Sprint: Alle OQ-er lukket ✅ — venter på CG7-direktiv fra Chris
🏁 Sprint-status: BACKLOG TOM
Alle åpne OQ-er er lukket og verifisert i prod. Neste steg bestemmes av Chris — CG7 er ikke definert uten direktiv.
✅ Levert 2026-06-13 (full sesjon)
| Commit | Task | Detalj |
|---|---|---|
c114f6c |
Frontend static/billing-dashboard.html |
Tre pool-bars, Free Trial topbar-banner, Promise.allSettled() |
bc501c1 |
OQ-31 ml/billing_agent.py |
credit_pools[], effective_days, badge_class, warning: bool, expires_days fra env |
055a482 |
OQ-29 main.py |
GET /notify/channels — env-var-basert, IAP-beskyttet, verifisert i prod |
62d691d |
HANDOFF docs/HANDOFF.md |
cloud-run-proxy-regel låst |
4693fea |
CI-fix cloudbuild.yaml |
Fjernet --audiences fra smoke-test token — fikset 404 i Cloud Build |
✅ OQ-logg — alle lukket og verifisert
| OQ | Beskrivelse | Status | Verifisert |
|---|---|---|---|
| OQ-29 | GET /notify/channels |
✅ LØST | Prod ✅ {"channels": [{"type":"email",...},{"type":"sms",...},{"type":"webhook",...}]} |
| OQ-30 | Browser-panel opax.html |
✅ LØST | Panel + /docs/-proxy leverte i a773ec2 |
| OQ-31 | credit_pools[] i get_credits_status() |
✅ LØST | Struktur verifisert — env-vars ikke satt i Cloud Run ennå |
🔴 Chris sin handleliste før CG7
# 1. Sett kreditt env-vars i Cloud Run (GCP Console → osvauco-agent → Edit & Deploy)
GOOGLE_CREDIT_INFRA_NOK=<beløp> # f.eks. 5000
GOOGLE_CREDIT_INFRA_EXPIRES=<dato> # f.eks. 2026-07-10
VERTEX_CREDIT_NOK=<beløp>
VERTEX_CREDIT_EXPIRES=<dato>
DIALOGFLOW_CREDIT_NOK=<beløp>
DIALOGFLOW_CREDIT_EXPIRES=<dato>
# 2. Verifiser credit_pools etter deploy
gcloud run services proxy osvauco-agent \
--region=us-central1 --project=propane-will-491900-m5 --port=8080
curl http://localhost:8080/billing/credits?days=90 | \
python3 -m json.tool | grep -E '"label"|"effective_days"|"badge_class"'
# Forventet: 3 pools med configured: true og runway_days ikke null
# 3. Sett varslings-env-vars når du er klar
SENDGRID_API_KEY=SG.xxxx
NOTIFY_EMAIL_TO=chris.christiansen@vauco.no
TWILIO_ACCOUNT_SID=ACxxxx
NOTIFY_WEBHOOK_URL=https://hooks.slack.com/...
🏗 Systemstatus
| Komponent | Status |
|---|---|
Cloud Run osvauco-agent |
✅ Live us-central1 rev 00465-b7m |
opax.vauco.no |
✅ Live |
main.py |
✅ Hovudapp — alle ruter her |
GET /billing/credits |
✅ Levert — ⚠️ env-vars ikke satt ennå |
GET /notify/channels |
✅ OQ-29 — verifisert i prod |
ml/billing_agent.py get_credits_status() |
✅ credit_pools[] levert |
static/billing-dashboard.html |
✅ Tre pool-bars + Free Trial banner |
static/opax.html |
✅ Live — browser-panel OK |
static/costguard-dashboard.html |
✅ Live — CG6 |
POST /notify/webhook |
✅ CG5a |
POST /notify/email |
✅ CG5b |
POST /notify/sms |
✅ CG5c (Guard+) |
docs/gemma/world.md |
❌ Mangler — blokkerer ML-3a / Emma |
📋 Nøkkelinformasjon
| Nøkkel | Verdi |
|---|---|
| GCP Project | propane-will-491900-m5 |
| Region (LÅST) | us-central1 |
| Cloud Run service | osvauco-agent |
| Direct URL | https://osvauco-agent-zjbqp3prqq-uc.a.run.app |
| Public URL | https://opax.vauco.no |
| Hovudapplikasjon | main.py (rot i repo) |
| MCP-server | opax-mcp/ |
| Static filer | static/ |
| IAP-test | gcloud run services proxy — se regler |
| LB IP | 34.98.77.173 |
| Repo | vauco-saas/OSVauco |
| Eier | chris.christiansen@vauco.no |
| Jason | jason.vauger@vauco.no · gemini-2.5-flash |
| Emma | emma.vauger@vauco.no — 🔮 ML-3a (blokkert) |
Env-vars påkrevd
# Kreditter — NOK-beløp og utløpsdatoer (ikke satt ennå)
GOOGLE_CREDIT_INFRA_NOK=5000
GOOGLE_CREDIT_INFRA_EXPIRES=2026-07-10
VERTEX_CREDIT_NOK=2000
VERTEX_CREDIT_EXPIRES=2026-09-01
DIALOGFLOW_CREDIT_NOK=1500
DIALOGFLOW_CREDIT_EXPIRES=2026-09-01
USDNOK=10.8
# Varsling (ikke satt ennå)
SENDGRID_API_KEY=SG.xxxx
NOTIFY_EMAIL_TO=chris.christiansen@vauco.no
TWILIO_ACCOUNT_SID=ACxxxx
TWILIO_AUTH_TOKEN=xxxx
TWILIO_FROM_NUMBER=+47xxxxxxxx
NOTIFY_WEBHOOK_URL=https://hooks.slack.com/...
# Docs proxy
GITHUB_PAT=ghp_xxxx
DOCS_BRANCH=main
⚠️ Regler (låste)
- Hovudapp er
main.py— ikkeagents/core-logic/app.py - MCP-server er
opax-mcp/— ikkeagents/mcp_server/ - Absolutte stier i Python —
Path(__file__).parent / "..." - Ikke migrer fra us-central1
- IAP-test: bruk alltid
cloud-run-proxy— aldri--audiences, aldri manuell IAP client ID:gcloud run services proxy osvauco-agent \ --region=us-central1 --project=propane-will-491900-m5 --port=8080 curl http://localhost:8080/<endepunkt> - Ikke rør IAP/OAuth uten
DEPLOY GODKJENT - Ikke opprett repos uten
REPO APPROVED - Medioteq = joint venture — ikke SaaS-kunde
- Prismodell låst — ikke endre uten
PLAN APPROVED - CG7 er ikke definert — ikke start uten direktiv fra Chris
- Verifiser alltid mappestruktur via GitHub API før du bygger
📁 Filer (i prioritert rekkefølge)
docs/MASTERPLAN.md— autoritær sannhetdocs/ROADMAP.md— hva skjer nådocs/HANDOFF.md— denne filenCLAUDE.md— kontekst for Claude (rot)docs/AGENT_RULEBOOK.mddocs/UNIVERSAL_BOOT_PROMPT.mdv1.4docs/gemma/world.md❌ mangler
Vauco AS · propane-will-491900-m5 · us-central1 · Sesjon lukket 2026-06-13 08:29 CEST