mchades opened a new pull request, #9928: URL: https://github.com/apache/gravitino/pull/9928
### What changes were proposed in this pull request? Add OpenAPI specification (OAS) for function/UDF operations by creating `docs/open-api/functions.yaml` and updating `docs/open-api/openapi.yaml`. The new OAS covers: - **5 REST endpoints**: list (GET with `details` query param), register (POST), get (GET), alter (PUT), drop (DELETE) - **Data model schemas**: `Function`, `FunctionDefinition`, `FunctionParam`, `FunctionColumn`, `FunctionImpl` (polymorphic with SQL/Java/Python subtypes via `language` discriminator), `FunctionResources` - **Request schemas**: `FunctionRegisterRequest`, `FunctionUpdatesRequest`, and 6 `FunctionUpdateRequest` subtypes (`updateComment`, `addDefinition`, `removeDefinition`, `addImpl`, `updateImpl`, `removeImpl`) using `@type` discriminator - **Response schemas**: `FunctionResponse`, `FunctionListResponse` - **Examples**: Scalar function and table function register/response examples with multiple implementation languages Also updates `AGENTS.md` to document the `./gradlew :docs:build` command for OpenAPI validation. ### Why are the changes needed? The function/UDF REST API is fully implemented in Java but lacks OpenAPI documentation. This OAS definition is needed for API documentation, client code generation, and API contract validation. Fix: #9540 ### Does this PR introduce _any_ user-facing change? No. This is a documentation-only change adding OpenAPI specification files. ### How was this patch tested? Validated by running `./gradlew :docs:build` which includes Redocly CLI linting — passed with no errors. -- 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]
