2.0 KiB
HWLAB DEV Edge Health
This check is DEV-only and targets the frozen endpoint:
node scripts/dev-edge-health-smoke.mjs --live --write-report
The smoke is read-only. It does not touch PROD, restart services, read secrets, or substitute UniDesk backend/provider-gateway/microservice-proxy for HWLAB runtime.
Health Evidence
GET http://74.48.78.17:6667/health must return HWLAB DEV JSON with:
serviceIdfor the HWLAB service answering the request;environment: "dev";commitevidence;imageevidence;serviceevidence.
hwlab-cloud-api also serves GET /health/live for k3s probes and edge
forwarding checks.
Route Classification
The smoke classifies failures into these blockers:
frp_blocker: public:6667is unavailable and frps control or tunnel health ports also refuse connections.edge_proxy_blocker: frps is reachable, but public:6667refuses.k3s_service_blocker: k3s is observable but HWLAB DEV services/endpoints are missing.dns_port_firewall_blocker: public endpoint times out or cannot be resolved as a port/network path.app_health_blocker: public HTTP reaches an app but health JSON is wrong, missing evidence, or returns an HTTP error.
Current Blocker
The committed report at reports/dev-gate/dev-edge-health.json records a
read-only live run where:
- public
74.48.78.17:6667returnedECONNREFUSED; - frps control
74.48.78.17:7000returnedECONNREFUSED; - tunnel health
74.48.78.17:7402returnedECONNREFUSED; kubectlwas not installed in this runner, so D601 k3s service state was not observable from here.
Classification: frp_blocker. The master frps endpoint is not reachable from
the runner, so the edge proxy and downstream app health cannot be proven through
the public DEV route yet.
DEV FRP Contract
deploy/frp/frps.dev.toml reserves public 6667 as a TCP remotePort for
hwlab-dev-edge-proxy. Do not bind vhostHTTPPort = 6667 in the same frps
config; that collides with the TCP proxy and can keep the DEV route from
registering cleanly.