fix+docs: fiks iframe us-central1, legg til Fase C multi-tenant i MASTERPLAN
This commit is contained in:
parent
71c885281a
commit
d86ae23706
|
|
@ -1,7 +1,7 @@
|
||||||
# MASTERPLAN — Vauco OS
|
# MASTERPLAN — Vauco OS
|
||||||
|
|
||||||
**Eier:** Chris Christiansen · Vauco AS · Org.nr 935 989 779
|
**Eier:** Chris Christiansen · Vauco AS · Org.nr 935 989 779
|
||||||
**Sist oppdatert:** 2026-05-27
|
**Sist oppdatert:** 2026-05-28
|
||||||
**Status:** AUTORITATIV — én kilde til sannhet
|
**Status:** AUTORITATIV — én kilde til sannhet
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -23,23 +23,25 @@ Overordnet plattform og merkevare. Holder VVL (Vauco Value Ledger), token-økono
|
||||||
Den tekniske motoren. Cloud Run (`osvauco-agent`) på GCP. Alle produkt-moduler bygger på OPAX-API-et. OPAX er ikke synlig for sluttkunden — det er plumbing.
|
Den tekniske motoren. Cloud Run (`osvauco-agent`) på GCP. Alle produkt-moduler bygger på OPAX-API-et. OPAX er ikke synlig for sluttkunden — det er plumbing.
|
||||||
|
|
||||||
### CostGuard (Modul #1)
|
### CostGuard (Modul #1)
|
||||||
Første go-to-market produkt. Hjelper bedrifter å forstå og kontrollere GCP-kostnader via AI-drevet analyse. Live på `costguard.oss.vauco.no` (Cloudflare Pages). Backend via Cloud Run.
|
Første go-to-market produkt. Hjelper bedrifter å forstå og kontrollere GCP-kostnader via AI-drevet analyse. Live på `costguard.oss.vauco.no` (Cloudflare Pages). Backend via Cloud Run `us-central1`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 2. Infrastrukturstatus (per 2026-05-27)
|
## 2. Infrastrukturstatus (per 2026-05-28)
|
||||||
|
|
||||||
| Komponent | Status | URL / Detalj |
|
| Komponent | Status | URL / Detalj |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| Cloud Run (`osvauco-agent`) | ✅ Live | GCP us-central1 |
|
| Cloud Run (`osvauco-agent`) | ✅ Live | GCP us-central1 |
|
||||||
| `opax.vauco.no` | ✅ Live | CNAME → ghs.googlehosted.com |
|
| `opax.vauco.no` | ✅ Live | CNAME → ghs.googlehosted.com |
|
||||||
| `costguard.oss.vauco.no` | ✅ Live | Cloudflare Pages, docs/ |
|
| `costguard.oss.vauco.no` | ✅ Live | Cloudflare Pages, docs/ |
|
||||||
|
| `docs/index.html` iframe | ✅ Fikset | Peker nå på us-central1 |
|
||||||
| BigQuery (`osvauco_logs`) | ⏳ Venter | Sink oppe, tabell populeres |
|
| BigQuery (`osvauco_logs`) | ⏳ Venter | Sink oppe, tabell populeres |
|
||||||
| OAuth2 (Google) | ✅ Konfigurert | Secret Manager |
|
| OAuth2 (Google) | ✅ Konfigurert | Secret Manager |
|
||||||
| CI/CD (Cloud Build) | ✅ Live | Google Chat deploy-varsler |
|
| CI/CD (Cloud Build) | ✅ Live | Google Chat deploy-varsler |
|
||||||
| Budget guard (500 NOK/mnd) | ✅ Live | 50/90/100% terskler |
|
| Budget guard (500 NOK/mnd) | ✅ Live | 50/90/100% terskler |
|
||||||
| IAP på Cloud Run | 🔜 Fase C | Krever LB — Terraform-modul |
|
| IAP på Cloud Run | 🔜 Fase C | Krever LB — Terraform-modul |
|
||||||
| BQ billing export (`gcp_billing_export_v1_*`) | ⏳ Venter | Første tabell ikke populert ennå |
|
| BQ billing export (`gcp_billing_export_v1_*`) | ⏳ Venter | Første tabell ikke populert ennå |
|
||||||
|
| Multi-tenant stamp-out | 🔜 Fase C | Onboarding-script + admin-panel |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -58,29 +60,52 @@ Første go-to-market produkt. Hjelper bedrifter å forstå og kontrollere GCP-ko
|
||||||
### 🔄 Aktiv nå
|
### 🔄 Aktiv nå
|
||||||
|
|
||||||
- **CG3 — CostGuard Frontend Wiring**
|
- **CG3 — CostGuard Frontend Wiring**
|
||||||
- `docs/index.html` (Cloudflare Pages) og `static/billing-dashboard.html`
|
- `docs/index.html` (Cloudflare Pages) → iframe fikset til us-central1 ✅
|
||||||
|
- `static/billing-dashboard.html` live
|
||||||
- OAuth login flow (`/auth/login?client_id=demo`) kobles til Cloud Run
|
- OAuth login flow (`/auth/login?client_id=demo`) kobles til Cloud Run
|
||||||
- BigQuery-data vises når `gcp_billing_export_v1_*` er populert
|
- BigQuery-data vises når `gcp_billing_export_v1_*` er populert
|
||||||
- HITL gate: `CG3 APPROVED`
|
- HITL gate: `CG3 APPROVED`
|
||||||
|
|
||||||
### 🔜 Neste
|
### 🔜 Neste — Fase C (etter CG3 APPROVED)
|
||||||
|
|
||||||
- **Fase C — IAP + Terraform**
|
**C1 — IAP + Terraform**
|
||||||
- LB + IAP for `opax.vauco.no` (begrens til `@vauco.no`)
|
- LB + IAP for `opax.vauco.no` (begrens til `@vauco.no`)
|
||||||
- Konverter `infrastructure/*.sh` → Terraform-modul i `vauco-bootstrap/`
|
- Konverter `infrastructure/*.sh` → Terraform-modul i `vauco-bootstrap/`
|
||||||
|
- Sett `IAP_ENABLED=true` + `IAP_AUDIENCE` i Cloud Run env-vars
|
||||||
|
|
||||||
- **BQ-2 / BQ-3** — Verifiser sink-SA IAM → Looker Studio dashboard
|
**C2 — Multi-tenant Stamp-Out**
|
||||||
|
|
||||||
- **Threadstone Fase 1** — `vauco-saas/threadstone-instructions` repo, Master Hub v3.2
|
Målet: Du lager en modul i din admin-view. Kunden får sin egen isolerte instans automatisk.
|
||||||
|
|
||||||
- **Dialogflow CX** — Norsk Playbook-agent, webhook mot Cloud Run
|
```
|
||||||
|
Du (admin, opax.vauco.no)
|
||||||
|
└── klikker "Opprett klient: Medioteq"
|
||||||
|
↓
|
||||||
|
onboarding-script provisjonerer:
|
||||||
|
- medioteq-oss.vauco.no (staging — kunden tester her)
|
||||||
|
- medioteq-os.vauco.no (prod — live etter godkjenning)
|
||||||
|
- Eget GCP-prosjekt (isolert, spesielt viktig for Medioteq/helse)
|
||||||
|
- Kunden logger inn med Google OAuth (BankID for helse-kunder)
|
||||||
|
- Ingenting av Vauco OS sin interne infrastruktur eksponeres
|
||||||
|
```
|
||||||
|
|
||||||
|
Leveranser i C2:
|
||||||
|
- `scripts/onboard-client.sh <klientnavn>` — provisjonerer DNS + Cloud Run + GCP-prosjekt
|
||||||
|
- `opax.vauco.no/admin` — admin-panel: liste over klienter, status, knapp for oss → os flip
|
||||||
|
- ARCHITECTURE.md oppdateres med klient-isolasjonsmodell
|
||||||
|
- Første testkandidat: CostGuard som mal (den er allerede bygget)
|
||||||
|
|
||||||
|
**C3 — BQ-2 / Looker Studio**
|
||||||
|
- Verifiser sink-SA IAM → Looker Studio dashboard
|
||||||
|
- Koble live BQ-data til billing-dashboard
|
||||||
|
|
||||||
### 📋 Backlog
|
### 📋 Backlog
|
||||||
|
|
||||||
- `opax-mcp/` restruktureres som modul-subtree
|
- `opax-mcp/` restruktureres som modul-subtree
|
||||||
- Full boot cycle acceptance test (automatisert)
|
- Full boot cycle acceptance test (automatisert)
|
||||||
- Multi-klient onboard-mønster
|
- **Threadstone Fase 1** — `vauco-saas/threadstone-instructions` repo, Master Hub v3.2 (Q3 2026)
|
||||||
- **Medioteq** — kun idéfase, ingenting implementeres før OPAX er fullt operasjonelt
|
- **Dialogflow CX** — Norsk Playbook-agent, webhook mot Cloud Run
|
||||||
|
- **Medioteq** — kun idéfase, ingenting implementeres før OPAX multi-tenant er operasjonelt
|
||||||
- **VVL Fase 2** — $VCO on-chain (Q3 2026), etter Threadstone Fase 1 er validert
|
- **VVL Fase 2** — $VCO on-chain (Q3 2026), etter Threadstone Fase 1 er validert
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -120,9 +145,9 @@ REGEL 5 — AUTO-SNAPSHOT VED GH-OPERASJONER
|
||||||
Lagre til: docs/archive/sessions/[YYYY-MM-DD]_[emne].md
|
Lagre til: docs/archive/sessions/[YYYY-MM-DD]_[emne].md
|
||||||
```
|
```
|
||||||
|
|
||||||
### Kommersiell potensiell
|
### Kommersiell potensial
|
||||||
|
|
||||||
Protokollanenn pakkes og selges under OPAX-paraplyen i tre nivåer:
|
Protokollen pakkes og selges under OPAX-paraplyen i tre nivåer:
|
||||||
|
|
||||||
| Nivå | Produkt | Modell |
|
| Nivå | Produkt | Modell |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
|
|
@ -157,7 +182,8 @@ vauco-saas/OSVauco/
|
||||||
│ └── archive/ ← alt arkivert, ingenting slettet
|
│ └── archive/ ← alt arkivert, ingenting slettet
|
||||||
│ └── sessions/ ← sesjonslogger fra vauco-os
|
│ └── sessions/ ← sesjonslogger fra vauco-os
|
||||||
├── static/
|
├── static/
|
||||||
│ └── billing-dashboard.html ← CostGuard dashboard
|
│ ├── billing-dashboard.html ← CostGuard dashboard
|
||||||
|
│ └── command-hub.html ← Vauco OS TUI (intern bruk)
|
||||||
└── src/ ← OPAX backend
|
└── src/ ← OPAX backend
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -168,6 +194,7 @@ vauco-saas/OSVauco/
|
||||||
- **GCP Project:** `propane-will-491900-m5`
|
- **GCP Project:** `propane-will-491900-m5`
|
||||||
- **Region:** `us-central1`
|
- **Region:** `us-central1`
|
||||||
- **Cloud Run service:** `osvauco-agent`
|
- **Cloud Run service:** `osvauco-agent`
|
||||||
|
- **Cloud Run URL:** `https://osvauco-agent-357036551735.us-central1.run.app`
|
||||||
- **Secret Manager:** Google OAuth2-credentials
|
- **Secret Manager:** Google OAuth2-credentials
|
||||||
- **Billing account:** se Secret Manager
|
- **Billing account:** se Secret Manager
|
||||||
- **Kontakt:** chris.christiansen@vauco.no
|
- **Kontakt:** chris.christiansen@vauco.no
|
||||||
|
|
@ -175,4 +202,4 @@ vauco-saas/OSVauco/
|
||||||
---
|
---
|
||||||
|
|
||||||
*Vauco AS · Org.nr 935 989 779 · Oslo, Norge*
|
*Vauco AS · Org.nr 935 989 779 · Oslo, Norge*
|
||||||
*Powered by OPAX · Crafted by Chris Vauger*
|
*Powered by OPAX · Crafted by Chris Christiansen*
|
||||||
|
|
|
||||||
|
|
@ -36,12 +36,12 @@ footer{padding:10px 20px 16px;font-size:11px;color:var(--faint);text-align:cente
|
||||||
<p style="color:var(--muted); max-width: 500px; margin: 8px auto 24px;">Få full kontroll på dine GCP-kostnader med sanntids overvåkning og anomali-deteksjon.</p>
|
<p style="color:var(--muted); max-width: 500px; margin: 8px auto 24px;">Få full kontroll på dine GCP-kostnader med sanntids overvåkning og anomali-deteksjon.</p>
|
||||||
<a href="/auth/login?client_id=demo" class="button">Koble til GCP</a>
|
<a href="/auth/login?client_id=demo" class="button">Koble til GCP</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<iframe src="https://osvauco-agent-357036551735.europe-west1.run.app/static/billing-dashboard.html"></iframe>
|
<iframe src="https://osvauco-agent-357036551735.us-central1.run.app/static/billing-dashboard.html"></iframe>
|
||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer>Powered by Vauco OS · Vauco AS · 935 989 779</footer>
|
<footer>Powered by Vauco OS · Vauco AS · 935 989 779</footer>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
Loading…
Reference in New Issue
Block a user