Code style#
Java#
Run the Spotless formatter before committing. CI fails the build if formatting drifts:
./mvnw spotless:apply
Rust#
Run inside native/:
cargo fmt
cargo clippy --all-targets -- -D warnings
-D warnings turns clippy warnings into build failures, matching CI.
License headers#
New source files need the Apache 2.0 license header. Apache RAT enforces
this during verify — ./mvnw verify will fail if a tracked file is
missing the header.