go
Go services: concurrency, HTTP, and shipping a single binary.
-
A Rules File for Health Evaluation, Validated at Load Time
Go rules file with gopkg.in/yaml.v3: yaml.Unmarshal accepts operator: greter. Validate operators and metric names at load time so startup fails.
-
Merging Concurrent Polls Without Ever Serving a Half-Built Graph
atomic.Pointer swap of a fully merged snapshot so concurrent polls never serve a torn read, a bug go test -race cannot see. errgroup with timeouts.
-
An Entity Graph as the Data Model for a Heterogeneous Estate
Go entity graph data model: one Entity struct with Kind and Attrs, typed contains, dependsOn and runsOn edges, health rollup and cycle detection.
-
Designing a Docker Image Build API: Job Model and Streamed Logs
Docker SDK ImageBuild returns a nil error when RUN fails: read the error field in the JSON build stream. A Go job model with POST /builds and live logs.
-
Embedding a Built Frontend Into a Go Binary with go:embed
//go:embed dist with http.FileServer returns 404 on SPA client routes after a refresh: an index.html fallback, serving the API from the same Go binary.
-
A Minimal Go HTTP Service with chi, Timeouts and Graceful Shutdown
Go http.Server ReadHeaderTimeout and srv.Shutdown with signal.NotifyContext: draining in-flight requests on SIGTERM in a chi service, with a test.