Interactive OpenAPI docs went live at /docs, generated from the same Zod schemas that validate every incoming request.
Not "docs we remember to update" — docs that are the same object as the validation. If the API accepts it, the docs describe it, because there is only one definition. Documentation rot is a synchronisation problem, and the fix is to have nothing to synchronise.