The server gate becomes cargo fmt --check && cargo clippy --all-targets -- -D warnings && cargo audit && cargo test (CLAUDE.md, server/README.md). The pre-commit hook runs cargo audit --no-fetch only when server/Cargo.lock or a server Cargo.toml is staged, and skips with a message when cargo-audit or the advisory database is missing. First run: 0 advisories, 0 warnings over 319 crates; no audit.toml needed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TQd3pEP9UeN2uifbHknQ7B
This commit is contained in:
@@ -94,14 +94,14 @@ Everything builds **locally on this MacBook**. No hosted CI, no remote build ser
|
||||
../tools/gradle-serial.sh check # THE Android gate: build, unit tests, lint, architecture rules, screenshot tests
|
||||
../tools/gradle-serial.sh installDebug # install the debug app on the attached phone
|
||||
# Server gate, from server/:
|
||||
cargo fmt --check && cargo clippy -- -D warnings && cargo test # THE server gate
|
||||
cargo fmt --check && cargo clippy --all-targets -- -D warnings && cargo audit && cargo test # THE server gate
|
||||
# Either directory:
|
||||
tools/install-git-hooks.sh # once per checkout
|
||||
tools/clean-builds.sh [--dry-run] # delete Gradle build output in every checkout and worktree (disk)
|
||||
python3 tools/dependency-report/latest.py # version drift of android/gradle/libs.versions.toml
|
||||
```
|
||||
|
||||
* **`tools/gradle-serial.sh check` (Android) and `cargo fmt --check && cargo clippy -- -D warnings && cargo test` (server) are the only gates.** Every check a plan asks for must be reachable from one of them (the OpenAPI match test and the test-vector tests included). Report gates with the real result lines (BUILD line, actionable tasks, test counts from fresh XML only). Never report a check as passing that you did not run in this session.
|
||||
* **`tools/gradle-serial.sh check` (Android) and `cargo fmt --check && cargo clippy --all-targets -- -D warnings && cargo audit && cargo test` (server) are the only gates.** Every check a plan asks for must be reachable from one of them (the OpenAPI match test and the test-vector tests included). Report gates with the real result lines (BUILD line, actionable tasks, test counts from fresh XML only). Never report a check as passing that you did not run in this session.
|
||||
* **One Gradle build at a time.** Parallel builds exhaust memory. Always `tools/gradle-serial.sh`; it waits on a lock in `/tmp` and then runs `android/gradlew` of your worktree.
|
||||
* **Disk.** Three agents plus the main checkout can fill a disk. `~/.gradle/init.d/cache-retention.gradle.kts` (user-level, outside the repo) keeps `~/.gradle/caches` at 7 days with cleanup on every build; Gradle 9 accepts build-cache retention only there. Run `tools/clean-builds.sh` after removing a worktree or when free space is under about 5 GB. Deleting `~/.gradle/caches/build-cache-1` and old `~/.gradle/caches/<version>` folders is allowed; the next build is a slow full one. An agent that hits "no space left on device" loses only uncommitted work: free space and resume it, do not respawn.
|
||||
* **Version drift:** run the dependency report at the start of every plan. A library more than one stable minor behind gets a line in the plan's report; a toolchain component more than one line behind triggers an upgrade plan first.
|
||||
|
||||
Reference in New Issue
Block a user