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]

Reply via email to