api/principle-of-least-astonishment

principle of least astonishment Shipped

What this lens looks for

API and system behavior must match what callers expect; names must deliver exactly what they suggest; side effects must be obvious from the API signature; no surprise mutations on read endpoints, no silent state changes

What its verifier checks

No GET endpoints with side effects; endpoint names accurately describe their behavior; idempotent methods (GET/PUT/DELETE) are actually idempotent; no undocumented implicit state changes