docs(evidence): operational-state prober 2026-09-15 — runtime healthy i SIAX Cloud, publikt hostname fortfarande down (DNS-cutover hos Simon) #57

Merged
admin merged 1 commits from fix/operational-state-probe-20260915 into main 2026-09-15 01:17:31 +00:00
+8 -5
View File
@@ -17,7 +17,7 @@
],
"control": "GOV-06",
"operationalState": "down",
"checkedAt": "2026-09-07T18:24:24Z",
"checkedAt": "2026-09-15T01:13:00Z",
"method": "curl -sS -o /dev/null -D - --max-time 20 <url>, from the public internet (not the tailnet)",
"probes": [
{
@@ -26,7 +26,7 @@
"url": "https://0pt.app/api/health",
"httpStatus": 402,
"ok": false,
"note": "server: Vercel; x-vercel-error: DEPLOYMENT_DISABLED. The Vercel deployment is disabled and no Coolify app is serving this hostname yet."
"note": "server: Vercel; x-vercel-error: DEPLOYMENT_DISABLED. DNS pekar fortfarande pa Vercel (216.150.1.1/216.150.1.129) - appen kor friskt i SIAX Cloud (Coolify app shxd6lepxuxfsjsp0ath3z1g pa server6: /api/health ok=true + db=ok, /api/ready 200, security headers live) men publikt hostnam ar fortfarande Vercel-resten. DNS-cutover 0pt.app -> 65.109.19.146 ar SIMON-PUNKT (stoppunkt enligt AGENTS.md)."
},
{
"fqdn": "api.0pt.app",
@@ -34,16 +34,19 @@
"url": "https://api.0pt.app/api/health",
"httpStatus": 404,
"ok": false,
"note": "server: Vercel; x-vercel-error: DEPLOYMENT_NOT_FOUND. Contract-first target host (contracts/openapi.yaml servers), never deployed. Both / and /api/health return the same 404."
"note": "server: Vercel; x-vercel-error: DEPLOYMENT_NOT_FOUND. Contract-first target host (contracts/openapi.yaml servers), aldrig deployad. Samma 404 pa / och /api/health."
}
],
"securityHeadersObserved": {
"$comment": "Observed on the 402/404 responses above, i.e. served by Vercel's edge, NOT by this app. This is the evidence for BACKLOG P0-13: everything except Vercel's own HSTS default is absent, and that default does not survive a move to Coolify/Traefik.",
"$comment": "Observed on the 402/404 responses above, i.e. served by Vercel's edge, NOT by this app. Sedan 2026-09-15 satter APPEN sjalv fulla security headers (next.config.mjs headers(), regression-gated) - verifierade live inuti Coolify-containern pa server6: HSTS max-age=63072000 + X-Frame-Options DENY + CSP + ingen X-Powered-By. Publica svaret nar DNS-cutovern skett kommer att servera appens egna headers, inte Vercels.",
"strict-transport-security": "max-age=63072000",
"content-security-policy": null,
"x-frame-options": null,
"x-content-type-options": null,
"referrer-policy": null,
"permissions-policy": null
},
"runtimeEvidence": {
"$comment": "Runtime-state 2026-09-15 (inuti SIAX Cloud, ej publikt routat): Coolify-app 54 shxd6lepxuxfsjsp0ath3z1g pa server6; container healthy; /api/health {ok:true, db:ok}; /api/ready HTTP 200 {ready:true}; security headers (HSTS/XFO/CSP) observerade; egen Postgres (0pt-edge-postgres, uuid xh70k0qa0cyju840zsvsgoze, migrations 001-013 = 60 tabeller, icke-superuser-roll 0pt_app NOBYPASSRLS); backup-cron 03:15 motor + 03:05 edge-DB; 0pt.app-DNS-cutover kvar hos Simon."
}
}
}