./gradlew spotlessApply to format.public and protected classes, methods, and fields must have Javadoc. Missing Javadoc fails the checkstyle CI step (runs with -Werror).import statements instead of Fully Qualified Class Names (FQN) in Java code whenever possible.org.apache.gravitino.rel.Table table = ...;Table table = ...; (with import org.apache.gravitino.rel.Table;)java.nio.file.Paths or org.apache.xxx.Table unless there is a real class name conflict that cannot be resolved cleanly.@Nullable annotations. Handle resources with try-with-resources.System.out.println.TestXxx naming pattern (e.g., TestCatalogService)../gradlew test -PskipITs.@Tag("gravitino-docker-test"); run them with -PskipDockerTests=false.static constants (e.g., LOG).static fields.private methods at the end).[IMPORTANT] Before creating an issue or PR using the gh command or the GitHub MCP server, please show a preview of the PR/issue first. Submit it only after I confirm. The issue/PR format should follow the reference and keep the content concise and clear.
.github/ISSUE_TEMPLATE/.github/PULL_REQUEST_TEMPLATEapi/: Public interfaces.common/: Shared utilities/DTOs.core/: Main server logic.server/: REST API implementation.catalogs/: Catalog implementations (Hive, Iceberg, MySQL, etc.).clients/: Java/Python clients../gradlew build -PskipDockerTests=false./gradlew spotlessApply./gradlew test -PskipITs -PskipDockerTests=false./gradlew test -PskipTests -PskipDockerTests=false./gradlew :docs:build — Run this after any changes to docs/open-api/*.yaml to validate OpenAPI specification correctness.