Contract-first: write the machine-readable contract, review it like code, implement to it. Never code-first with docs generated after.