battle-tested-engineer
Engineering judgment for code write/refactor/test and frontend UI. Trigger on code review, legacy cleanup, tests, UI with data,…
Checklist for validating Go HTTP server reliability, covering application goroutines, server configuration, request lifecycle, resource management, graceful shutdown, logging, and reliability tests. Use when building, modifying, or reviewing Go HTTP servers using net/http, Echo,
Claude Code
$ npx -y skills add sayeed1999/agent-skills --skill go-http-server-reliability --agent claude-code
Codex
$ npx skills add sayeed1999/agent-skills --skill go-http-server-reliability -a codex -y
Cursor
$ npx skills add sayeed1999/agent-skills --skill go-http-server-reliability -a cursor -y
Gemini CLI
$ npx skills add sayeed1999/agent-skills --skill go-http-server-reliability -a gemini-cli -y
GitHub Copilot
$ npx skills add sayeed1999/agent-skills --skill go-http-server-reliability -a github-copilot -y
OpenCode
$ npx skills add sayeed1999/agent-skills --skill go-http-server-reliability -a opencode -y
Windsurf
$ npx skills add sayeed1999/agent-skills --skill go-http-server-reliability -a windsurf -y
name: go-http-server-reliability description: Checklist for validating Go HTTP server reliability, covering application goroutines, server configuration, request lifecycle, resource management, graceful shutdown, logging, and reliability tests. Use when building, modifying, or reviewing Go HTTP servers using net/http, Echo, or Gin.
Validate application-level HTTP server infrastructure against every item below.
**Scope:** Server configuration, application-managed goroutines, request lifecycle, resource management, graceful shutdown, and reliability tests.
Do not audit TCP connection handling, HTTP parsing, framing, or other functionality already handled by Go's `net/http`.
1. Read the whole HTTP server package before answering (server initialization, middleware, handlers, background workers, and shutdown code). 2. Answer every item. Do not skip or merge items. 3. Mark each item `PASS`, `FAIL`, or `N/A`. 4. `PASS` needs evidence: the function, type, middleware, or config field name that satisfies it. No note. 5. `N/A` needs a reason. `FAIL` needs what is missing and where it should be fixed. 6. If evidence cannot be found, mark `FAIL`. Do not assume. 7. When building or modifying code, treat this checklist as the definition of done.
ID | Result | Checklist Item | Evidence / Note GS-1 | PASS | Do application goroutines have managed lifecycles? | worker: context cancellation SV-1 | FAIL | Are HTTP server timeouts configured appropriately? | Missing ReadHeaderTimeout
End with a summary: counts of PASS / FAIL / N/A, and the list of FAIL IDs. Any FAIL means the review fails.
Check that tests exist and are meaningful. Search test files by name or behavior.
Go's `net/http` already handles:
Do not report these as missing application functionality.
Focus on configuring and correctly integrating these capabilities with application-owned resources and goroutines.
Important exceptions:
Engineering judgment for code write/refactor/test and frontend UI. Trigger on code review, legacy cleanup, tests, UI with data,…
Checklist for validating Go TCP server infrastructure for reliability - goroutine safety, panic recovery, connection lifecycle,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.