-
Notifications
You must be signed in to change notification settings - Fork 12
[AI] Add Agent Readiness Configuration #296
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: trunk
Are you sure you want to change the base?
Changes from all commits
e81325c
982b782
0f1a585
c3735cb
2341400
f2d69b6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| .gradle/ | ||
| build/ | ||
| !build/reports/ | ||
| */build/ | ||
| !*/build/reports/ | ||
| !*/build/outputs/ | ||
| !*/build/test-results/ | ||
| local.properties | ||
| gradle.properties | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -31,12 +31,6 @@ proguard/ | |
| # Log Files | ||
| *.log | ||
|
|
||
| # Intellij project files | ||
| *.iml | ||
| *.ipr | ||
| *.iws | ||
| .idea/ | ||
|
|
||
| # private config file | ||
| gradle.properties | ||
| !/benchmark/gradle.properties | ||
|
|
@@ -47,3 +41,13 @@ gradle.properties | |
| # OS X generated file | ||
| .DS_Store | ||
|
|
||
| # Agent config local files (Claude, Codex, Gemini, Cursor, Windsurf, etc.) | ||
| # Keep main config files under version control, ignore user-local overrides | ||
| **/AGENTS.local.md | ||
| **/CLAUDE.local.md | ||
|
Comment on lines
+46
to
+47
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I didn't know these were a thing. The docs don't mention supporting a However, it seems to be working
Not sure if it's a compatibility thing that they'll phase out, as it's not documented, or just a standard pattern that will be maintained.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yea, same @mokagio and thanks for taking a closer look at it, plus testing it! 🥇 I too just found it myself as I was writing those |
||
| **/.claude/**/*.local.* | ||
| **/.codex/**/*.local.* | ||
| **/.gemini/**/*.local.* | ||
| **/.cursor/**/*.local.* | ||
| **/.windsurf/**/*.local.* | ||
|
|
||
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,70 @@ | ||||||||||
| # AGENTS.md | ||||||||||
|
|
||||||||||
| This file provides guidance to coding agents when working with code in this repository. | ||||||||||
|
|
||||||||||
| ## Project Overview | ||||||||||
|
|
||||||||||
| Android client library for tracking user events (Nosara/Tracks), A/B testing (ExPlat), and crash logging (Sentry). Published to Automattic's S3 Maven repository. Used internally by Automattic mobile apps. Includes a `sampletracksapp` app module that can be used for manual testing. | ||||||||||
|
|
||||||||||
| ## Build Commands | ||||||||||
|
|
||||||||||
| ```bash | ||||||||||
| ./gradlew assembleDebug # Build all modules | ||||||||||
| ./gradlew testDebugUnitTest # Run all unit tests | ||||||||||
| ./gradlew lintDebug # Run lint checks | ||||||||||
|
Comment on lines
+13
to
+14
|
||||||||||
| ./gradlew testDebugUnitTest # Run all unit tests | |
| ./gradlew lintDebug # Run lint checks | |
| ./gradlew testDebugUnitTest # Run unit tests for the debug variant (CI runs `./gradlew test`) | |
| ./gradlew lintDebug # Run lint checks for the debug variant (CI runs `./gradlew lint`) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The first and last seem like stuff the model would notice when reading the code, without needing to be explicit
| - Build files use **Groovy** (`build.gradle`, `settings.gradle`), not Kotlin DSL — except `benchmark/build.gradle.kts` which uses Kotlin DSL | |
| - Dependency versions are defined as `ext` properties in root `build.gradle`, not a version catalog | |
| - Lint treats warnings as errors (`warningsAsErrors true`). `AutomatticTracks` uses a lint baseline file | |
| - Dependency versions are defined as `ext` properties in root `build.gradle`, not a version catalog |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good comment @mokagio ! 💯
I was thinking about that too, in the end chose to keep it in there because this version catalog is indeed the standard nowadays (years now), and I think AI would try to enforce this standard, maybe creating such a version catalog pattern, that is, instead of using the existing legacy ext properties pattern this repo uses. What I wanted here, is for AI to avoid doing that, thinking in version catalog terms, thus me being explicit giving it instructions on how dependency versions are and should be defined on this repo, being (somehow) explicit that we DON'T WANT version catalog. Does that make any sense to you? 💭 (I probably over-complicating this 😊 for sure)
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| @AGENTS.md |

There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If
.aiexcludeuses gitignore-style semantics (the patterns/negation syntax suggest it does),!build/reports/(and the similar module rules) won’t take effect because the parentbuild/directory is excluded. To ensure reports/outputs/test-results are actually included, un-exclude the parent directories and then re-exclude everything else (e.g., unignorebuild/+ selectively allow subpaths), or restructure the patterns accordingly.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TIL about
.aiexclude. Neat. Hopefully it takes hold as a wider standard.Regarding the syntax, Copilot's suggestion is good. From the docs:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤞 x 🤞 ^ 🤞