docs: add Gradle 9 developer skill for monorepo builds - #16083
Conversation
There was a problem hiding this comment.
Pull request overview
Adds repository-specific Gradle 9 build guidance as an agent “skill”, and wires it into AGENTS.md so contributors/agents are prompted to load the Gradle guidance before touching build logic. This helps keep Gradle changes aligned with established 8.0.x monorepo conventions (composite builds, BOM/platform usage, wrapper sync, and Gradle 9 configuration-time pitfalls).
Changes:
- Introduces
.agents/skills/gradle-developer/SKILL.mdwith monorepo-first Gradle 9.6.x guidance (topology, BOM rules, wrapper sync, and configuration hygiene). - Updates
AGENTS.mdto explicitly include Gradle build changes in the “mandatory skill” list and adds the new skill to the skills table.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
AGENTS.md |
Adds Gradle-specific skill guidance to the mandatory skills list and table so build changes are routed to the new skill. |
.agents/skills/gradle-developer/SKILL.md |
New Gradle 9 monorepo build skill documenting established repo patterns (composite builds, BOM/platform rules, wrapper sync, and Gradle 9 configuration hygiene). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## 8.0.x #16083 +/- ##
==================================================
+ Coverage 51.8811% 52.3462% +0.4651%
- Complexity 18118 18298 +180
==================================================
Files 2046 2036 -10
Lines 96274 96347 +73
Branches 16727 16829 +102
==================================================
+ Hits 49948 50434 +486
+ Misses 38954 38489 -465
- Partials 7372 7424 +52 🚀 New features to boost your workflow:
|
This comment has been minimized.
This comment has been minimized.
Capture 8.0.x Gradle conventions so agents write build scripts the way this repository already does: composite builds, BOM platforms, wrapper sync via gradle-bootstrap, end-to-end TestCaseMavenRepo flow, and Gradle 9 configuration hygiene from recent PRs. Assisted-by: Sisyphus:xai/grok-4.5
Make the Gradle 9 monorepo skill mandatory for build-script work and list it alongside the other agent skills. Assisted-by: Sisyphus:xai/grok-4.5
…ssons Encode durable Gradle lessons from merged 8.0.x/7.x PRs so agents write acceptable monorepo build changes on the first try. - Build cacheability rules from #15483, #15532, #15537 (portable test props, no overlapping outputs, SBOM classpath normalization, upToDateWhen traps) - base.dir dual rule: required @internal compile provider, forbidden absolute Test.systemProperties - Fact fixes: Spring DM regression fixture exception, bootstrap wrapper scope, grails-publish plugin id, skipDependencyValidation presence semantics - Agent quality bar, change workflow, expanded shared scripts and PR lessons - AGENTS.md: Boot BOM pin 4.1.x, mono-repo-integration table entry, build-logic local wrapper command Assisted-by: Sisyphus:xai/grok-4.5
3caaa7a to
e4d26c5
Compare
Summary
Adds a Gradle 9 developer skill so agents write Gradle the way this monorepo already does on
8.0.x, instead of inventing generic Gradle patterns that burn review cycles.The skill is intentionally repo-first: when official Gradle docs and this monorepo disagree, this repo wins (configuration cache off, no version catalogs, native
platform()instead of Spring DM for real apps, heavyprojectDirremapping, presence-based-Pflags, custom BOM validator).Changes
.agents/skills/gradle-developer/SKILL.md- monorepo Gradle guide covering:build-logic,grails-gradle,grails-forge,end-to-end,gradle-bootstrap)platform()dependency management andvalidateDependencyVersions(direction-aware fixes; AGENTS.md rule 14)grails-publishprovenance notegradle-bootstrap(copies to forge/grails-gradle/end-to-end, moves into root) + remaining manual locationsbuild/local-maven/ TestCaseMavenRepo; noincludeBuildof root)upToDateWhentraps, DevelocityFROM-CACHEverificationbase.dirdual rule: required@Internalcompile provider (daemon isolation / grails.factories) vs forbidden absolute Test system propertiesgrails-test-examples/spring-dependency-managementAGENTS.mdgradle-developermono-repo-integrationtable entrybuild-logicuses its own wrapper (cd build-logic && ./gradlew build)Research basis
Polished against:
base.dirin Test props; SBOM normalization;doFirstvs cache eligibilityupToDateWhenblocks cache load; per-task pathsSbomPluginnormalization,BaseDirArgumentProviderAlso skimmed recent merged 8.0.x and 7.0.x Gradle/build/agent PRs so the skill encodes durable patterns, not one-off version bumps.
Notes
8.0.xGradle 9.6.0 layout.Test plan
settings.gradle,dependencies.gradle,end-to-end/README.md,gradle-bootstrap/build.gradle,SbomPlugin,BaseDirArgumentProvider, convention pluginsgit diff --check