Normalise Gin colon and wildcard route segments into OpenAPI template parameters so documented paths match the framework's route syntax.
Co-Authored-By: Virgil <virgil@lethean.io>
Normalise the concatenation of BasePath() and RouteDescription paths so trailing or missing slashes do not produce malformed OpenAPI entries.
Add a regression test for mixed slash formatting.
Co-Authored-By: Virgil <virgil@lethean.io>
Adds X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset to successful responses and 429 rejections, and documents the headers in OpenAPI.
Co-Authored-By: Virgil <virgil@lethean.io>
Add X-Request-ID to the generated OpenAPI response headers so the spec matches the runtime contract for request ID propagation.
Co-Authored-By: Virgil <virgil@lethean.io>
Keep OpenAPI requestBody generation aligned with the RouteDescription contract by allowing non-GET operations, including DELETE, to declare JSON bodies.
Co-Authored-By: Virgil <virgil@lethean.io>
Add a bearerAuth security scheme to the generated OpenAPI document and mark non-public operations as secured, while keeping /health explicitly public.
Co-Authored-By: Virgil <virgil@lethean.io>