kayx23 opened a new pull request, #14147: URL: https://github.com/apache/apisix/pull/14147
## Why The Admin API OpenAPI contract is maintained as one large bundled JSON document. Even when it is formatted, a focused schema correction requires editing and reviewing a file of about 20,000 lines. The repository also lacks a reproducible source-to-bundle workflow, so contributors cannot tell whether the committed bundle is current with a smaller authoritative source. Modular source files make path and component ownership explicit, reduce merge conflicts, and let pull requests show the specific contract being changed while preserving the existing self-contained JSON artifact. ## What changed - add `docs/openapi/admin-api/openapi.json` as the modular OpenAPI entry point - split all 47 Path Items into individual files under `paths/` - split schemas, parameters, request bodies, responses, and security schemes into individual component files - add `make bundle-admin-api-spec`, backed by the pinned `@redocly/[email protected]` - continue publishing the self-contained bundle at `docs/en/latest/admin-api.json` - mark the bundle as generated so reviewers can focus on the modular source - add contributor guidance for editing references and regenerating the bundle - add CI that regenerates the bundle and fails when the committed output is stale This migration changes source organization only. It does not intentionally change the Admin API contract. ## Validation - bundled all 184 OpenAPI source files with no unresolved external references - parsed and normalized the pre-migration and generated documents, then compared their complete JSON structures: identical - generated the bundle twice and confirmed byte-identical SHA-256 output - validated the workflow YAML - checked the bundle script with `bash -n` - passed Markdownlint on the new contributor guide - `git diff --check` Closes #14145. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
