lhotari opened a new pull request, #25871:
URL: https://github.com/apache/pulsar/pull/25871
### Motivation
The repository has GitHub Copilot review instructions
(`.github/copilot-instructions.md`), but no top-level guide for general AI
coding agents (Claude Code and others), nor a single concise contributor
reference for the build/test/contribution workflow after the Maven→Gradle
migration (PIP-463).
This PR adds an `AGENTS.md` that consolidates that guidance in one place,
and refreshes the related convention docs so they stay consistent.
### Modifications
- **Add `AGENTS.md`** — an agent-/contributor-facing guide covering:
- the Gradle build (JDK 21/25, `build-logic` convention plugins, version
catalog), the requirement that commonly-used tasks stay configuration-cache /
configure-on-demand compatible per [Gradle best
practices](https://docs.gradle.org/current/userguide/best_practices_index.html),
and the project-name-vs-directory gotcha (e.g. `:pulsar-client-original`);
- common commands, scoping test runs with `--tests`, TestNG groups,
integration tests (Testcontainers), and the Personal CI workflow;
- architecture overview and a pointer to `pip/` for Pulsar Improvement
Proposals;
- coding / concurrency / async conventions, logging conventions, and
testing conventions (including thread / Netty `ByteBuf` leak cleanup in tests);
- PR conventions and how to report / check exposure to security
vulnerabilities.
- **Add `CLAUDE.md`** — a one-line pointer that imports `AGENTS.md` so
Claude Code picks up the same guidance.
- **Update `.github/copilot-instructions.md`** — logging guidance now
prefers the [`slog`](https://github.com/merlimat/slog) library
(`io.github.merlimat.slog`, already wired via the version catalog and the
`@CustomLog` Lombok declaration in `lombok.config`), treats SLF4J as deprecated
for new code, recommends structured attributes with lazy/deferred evaluation
instead of `isDebugEnabled()` guards, defaults new logs to `TRACE`/`DEBUG`, and
adds a "resource cleanup in tests" note (thread / `ByteBuf` leak detectors).
- **Update `README.md`** — add a short note on how to check Pulsar's
exposure to an already-public CVE.
### Verifying this change
- [x] Make sure that the change passes the CI checks.
This change is a trivial rework / code cleanup without any test coverage. It
is documentation-only and touches no production or test code (all changed files
are Markdown, excluded from RAT/Checkstyle/Spotless).
### Does this pull request potentially affect one of the following parts:
*If the box was checked, please highlight the changes*
- [ ] Dependencies (add or upgrade a dependency)
- [ ] The public API
- [ ] The schema
- [ ] The default values of configurations
- [ ] The threading model
- [ ] The binary protocol
- [ ] The REST endpoints
- [ ] The admin CLI options
- [ ] The metrics
- [ ] Anything that affects deployment
--
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]