An hour with a specification, against a week of inferring behaviour from a library’s source. A client library encodes one interpretation of a specification and the parts it…
One label added in 2025, still the thing that surfaces problems no aggregate shows. A consumer at four times the aggregate is a signal that no absolute threshold…
A supplier endpoint answering successfully with an empty body, for eleven weeks, after the supplier was acquired. A successful response with no content is indistinguishable from a successful…
Version 1, deprecated in March 2025 with a sunset date of December, switched off in January. Nine months of overlap and the date still moved by a fortnight,…
A with method whose return value was discarded, which is the one mistake PSR-7 makes easy. An immutable interface with fluent setters produces exactly this, and the discarded…
A specification for giving a model access to tools and data, read for what it standardises rather than for what it enables. The protocol is small and the…
Four decorators around an HTTP client, composed in an order that is obvious once and unrecoverable afterwards. Signing inside retry is mandatory — a retried request needs a…
Tests describing what a consumer reads, written by them, run by us. Owning the tests ourselves means asserting what we intended, and the risk is the gap between…