This is an automated email from the ASF dual-hosted git repository.

PragmaTwice pushed a commit to branch unstable
in repository https://gitbox.apache.org/repos/asf/kvrocks.git


The following commit(s) were added to refs/heads/unstable by this push:
     new 8d0212583 docs(agents): clarify agent workflow guidance (#3455)
8d0212583 is described below

commit 8d021258308790627524f2cae594c75f22be2c31
Author: Twice <[email protected]>
AuthorDate: Fri Apr 24 13:18:31 2026 +0800

    docs(agents): clarify agent workflow guidance (#3455)
    
    This updates AGENTS.md to make repository-specific workflows clearer so
    agents can work more reliably and efficiently.
    
    Assisted-by: Codex
---
 AGENTS.md | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/AGENTS.md b/AGENTS.md
index 3face00e0..a5b6784ff 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -8,12 +8,17 @@ While working on Apache Kvrocks, please remember:
 - Only add meaningful comments when the code's behavior is difficult to 
understand.
 - Add or update tests to cover externally observable behavior and regressions 
when you change or add functionality.
 - Always run the formatter before submitting changes.
+- For non-trivial behavior, storage format, replication, or cluster changes, 
first look for an existing issue, discussion, or mailing list context before 
implementing.
 
 ## Build and Development Commands
 
 ### Building
 
 ```bash
+# Configure with Ninja when you want faster incremental builds.
+# The default generator is Makefiles unless --ninja is specified.
+./x.py build --ninja
+
 # Build kvrocks and utilities
 ./x.py build                    # Build to ./build directory
 ./x.py build -j N               # Build with N parallel jobs
@@ -30,6 +35,8 @@ While working on Apache Kvrocks, please remember:
 ./x.py fetch-deps               # Fetch dependency archives
 ```
 
+If the build directory was configured with Ninja, prefer incremental rebuilds 
like `cd build && ninja -j16 kvrocks` instead of re-running CMake.
+
 ### Testing
 
 ```bash
@@ -40,8 +47,9 @@ While working on Apache Kvrocks, please remember:
 # Run Go integration tests
 ./x.py test go
 
-# Run specific Go test by path
-./x.py test go tests/gocase/unit/...
+# Re-run a specific Go test name.
+# x.py test go currently forwards extra flags to "go test" but still runs 
"./...".
+./x.py test go build -run TestKMetadata
 ```
 
 ### Lint
@@ -159,7 +167,10 @@ Common scopes: `server`, `storage`, `commands`, `cluster`, 
`search`, `types`, `r
 ## Important Notes
 
 - Kvrocks aims for Redis protocol compatibility; always verify behavior 
against Redis when implementing or fixing commands.
-- All changes must pass `./x.py check format` and `./x.py check tidy`.
+- All changes must pass `./x.py check format`, and you should run `./x.py 
check tidy`, `./x.py check golangci-lint`, and the relevant tests when the 
touched code requires them.
 - Don't change public command behavior unless requested.
 - RocksDB is the core storage dependency; be cautious with storage-layer 
changes.
 - Adding a new column family breaks forward compatibility; avoid this if 
possible and prefer using existing column families.
+- Prefer focused patches over broad refactors when contributing.
+- Some website or documentation tasks may belong in the separate website 
repository rather than this repository.
+- If AI assistance is used, keep the generated changes reviewable and be able 
to explain and defend the final patch.

Reply via email to