Failure class guides
Most production errors belong to a small number of failure classes. Each guide explains one class from the mechanism up — what actually breaks, how to tell look-alikes apart, and how to debug it — then links every documented occurrence across the analyzed libraries.
- Connection failures: ECONNREFUSED, ECONNRESET, and friends
What ECONNREFUSED, ECONNRESET, EPIPE, and 'socket hang up' actually mean, how to tell them apart, and how to debug each one. (12 documented occurrences) - DNS resolution errors: ENOTFOUND and getaddrinfo failures
Why getaddrinfo ENOTFOUND and EAI_AGAIN happen, the difference between a wrong name and a broken resolver, and how to isolate each case. (4 documented occurrences) - SSL/TLS and certificate errors
Expired certificates, self-signed chains, hostname mismatches, and handshake failures: what each TLS error means and the safe way to fix it. (162 documented occurrences) - Timeouts: ETIMEDOUT, deadlines, and hung requests
Connect timeouts vs read timeouts vs deadlines, why each one fires, and how to pick budgets that fail fast without flaking. (138 documented occurrences) - HTTP status errors: handling 4xx and 5xx responses
Which HTTP status codes are your bug, which are the server's, which are retryable, and how libraries surface them as errors. (10 documented occurrences) - Authentication and authorization failures
401 vs 403, expired and malformed tokens, clock skew, and missing scopes: how auth failures surface as errors and how to debug them. (106 documented occurrences) - Parsing and encoding errors: unexpected token, malformed input
Unexpected token, unexpected end of input, invalid UTF-8, malformed JSON: what parsers are really complaining about and how to locate the bad byte. (201 documented occurrences)