docs: legg til diagnostics-regler i GEMINI.md — aldri gjett, hent logs direkte

This commit is contained in:
chrischristiansen-glitch 2026-05-30 20:07:26 +02:00
parent c4f006f5f8
commit 379bbc523d

View File

@ -72,6 +72,69 @@ HUB_URL: https://opax.vauco.no
---
## Diagnostics Rules (CRITICAL)
> **Regel: Aldri gjett. Alltid hent faktisk data før du konkluderer.**
### Ved build-feil (Cloud Build)
NÅR `gcloud builds submit` feiler → kjør ALLTID dette FØR du gjør noe annet:
```bash
# Hent siste build-ID og vis logg direkte
BUILD_ID=$(gcloud builds list \
--project=propane-will-491900-m5 \
--limit=1 \
--format="value(id)")
gcloud builds log $BUILD_ID \
--project=propane-will-491900-m5 2>&1 | tail -80
```
- IKKE søk på nett før du har lest loggene.
- IKKE gjett på årsak basert på exit code alene.
- Exit code 125 = Docker-feil → les logg for å se hvilken linje som feilet.
### Ved deploy-feil (Cloud Run)
```bash
# Hent Cloud Run-logger
gcloud logging read \
'resource.type=cloud_run_revision AND resource.labels.service_name=osvauco-agent' \
--project=propane-will-491900-m5 \
--limit=50 \
--format="value(textPayload)"
```
### Ved HTTP-feil (4xx/5xx fra tjeneste)
```bash
# Test direkte mot Cloud Run URL (bypasser IAP)
curl -s -o /dev/null -w "%{http_code}" \
-H "Authorization: Bearer $(gcloud auth print-identity-token)" \
https://osvauco-agent-357036551735.us-central1.run.app/ENDPOINT
```
### Ved sertifikat/DNS-feil
```bash
# Sjekk SSL-sertifikat status
gcloud compute ssl-certificates list \
--project=propane-will-491900-m5 \
--format="table(name,managed.status,managed.domainStatus)"
```
### Generell regel
| Situasjon | Gjør DETTE | IKKE dette |
|-----------|-----------|------------|
| Build feiler | Les build-logg via `gcloud builds log` | Søk på nett |
| Runtime-feil | Les Cloud Run-logger | Gjett på koden |
| HTTP 404 | `curl` tjenesten direkte | Endre kode uten å bekrefte |
| Auth-feil | `gcloud auth list` + `gcloud auth print-identity-token` | Anta token er ugyldig |
---
## Domain Convention
| Subdomain | Type | Purpose |