fix: classify dev edge DB blockers

This commit is contained in:
HWLAB Code Queue
2026-05-22 13:46:32 +00:00
parent c7de4745f4
commit 01c4e1b533
5 changed files with 701 additions and 72 deletions
+21 -4
View File
@@ -42,7 +42,15 @@ names so gate reports can identify `cloud-api-db-health-gate`. When the env is
present but no live DB probe is attempted, the gate remains blocked with
`connectionResult: "not_attempted"`. When a probe is attempted but
`liveConnected` is false, the gate remains blocked/degraded with the redacted
connection classifier. Env presence alone is not live DB evidence.
connection classifier. `connectionResult: "dns_error"` with
`classification: "dns_resolution_failed"` means DB endpoint DNS failed from the
cloud-api runtime. Env presence alone is not live DB evidence.
The Code Agent provider Secret for #143 is a separate blocker. The edge-health
report may record only key-presence evidence for
`hwlab-code-agent-provider/openai-api-key` and runtime error classification such
as `provider_secret_missing`; it must not read or print provider Secret values.
Do not collapse this #143 provider Secret gap into the DB live blocker.
## Route Classification
@@ -75,9 +83,18 @@ Blocked `frp_blocker` and `edge_proxy_blocker` reports now include a
The committed report at `reports/dev-gate/dev-edge-health.json` records a
read-only live run where public `http://74.48.78.17:16667/health/live` returned
HWLAB DEV health from `hwlab-cloud-api`, DB config was present, but runtime
health still reported no live DB connection attempt/result from the deployed
image. Classification: `app_health_blocker` with likely layer `cloud-api-db`.
HWLAB DEV health from `hwlab-cloud-api`, DB config was present, and runtime
health attempted a redacted TCP DB probe. The probe was not connected:
`connected=false`, `liveConnected=false`, `liveDbEvidence=false`,
`connectionResult="dns_error"`, and
`classification="dns_resolution_failed"`. This is a DB live readiness blocker
for #49, not proof that DB is connected.
The same report records the #143 Code Agent provider Secret gap separately as
`provider_secret_missing` when key-presence evidence for
`hwlab-code-agent-provider/openai-api-key` is absent. DB live readiness,
provider-backed Code Agent chat, M3 hardware trusted-loop proof, M4 live agent
loop, and M5 DEV-LIVE acceptance remain separate evidence layers.
## DEV FRP Contract
+5 -4
View File
@@ -50,7 +50,8 @@ without promoting the full gate:
| --- | --- |
| `Frontend DEV revision` | Latest accepted Cloud Workbench frontend revision on the active `http://74.48.78.17:16666/` browser endpoint. Frontend revision evidence is browser-only and cannot green DB, M3, M4, or M5. |
| `EDGE/ROUTE live` | `16666` browser and `16667` health route evidence from read-only probes. |
| `DB live/degraded` | Cloud API DB readiness from redacted health evidence; route success does not imply DB live. |
| `DB live/degraded` | Cloud API DB readiness from redacted health evidence; route success and env presence do not imply DB live. A `dns_error`/`dns_resolution_failed` DB probe is a DB live blocker. |
| `Code Agent provider Secret` | #143 provider-backed chat readiness from redacted runtime error and Secret key-presence evidence only; missing provider Secret is independent from DB live. |
| `M3 hardware trusted loop` | Real DEV `res_boxsimu_1:DO1 -> hwlab-patch-panel -> res_boxsimu_2:DI1` plus operation, trace, audit, and evidence identifiers. |
| `M4 agent loop` | Agent loop live preflight and scheduling/evidence closure, gated by DB and runtime readiness. |
| `artifact/desired-state source` | Artifact source coverage for the current target ref plus desired-state dry-run/apply status. |
@@ -100,9 +101,9 @@ The v2 report reads committed report fixtures only:
The report remains blocked until real DEV-LIVE evidence is attached for the
required downstream HWLAB runtime services. Public route evidence on
`16666/16667` is necessary but not sufficient: DB live readiness, M3 trusted
loop evidence, M4 agent-loop evidence, and artifact/desired-state source
coverage stay separate.
`16666/16667` is necessary but not sufficient: DB live readiness, #143 Code
Agent provider Secret readiness, M3 trusted loop evidence, M4 agent-loop
evidence, and artifact/desired-state source coverage stay separate.
The legacy base-image blocker is not current when the committed reports show an
approved Node 20 builder base. Artifact/current remains stricter: a target ref