Keeping OpenAPI specs, runtime validators, and TypeScript types in sync is hard. Many teams end up maintaining the same api models in different formats: ...