Contributing
Thanks for helping build rolter.
Workflow
- Branch from
master:feat/<scope>-<short>orfix/<scope>-<short>. - Make focused changes; add unit tests next to the code.
- Run
cargo fmt --all,cargo clippy --workspace --all-targets -- -D warnings, and the tests (just test, orcargo nextest run --workspace+cargo test --doc --workspace). - Use Conventional Commits for messages and the PR title.
- Link issues with
Closes #N/Refs #N. - Open a PR; fill in the template; CI must be green.
Code standards
- Rust 2021;
rustfmtdefaults; clippy clean with-D warnings. thiserrorfor library errors,anyhowin binaries.- Keep the data-plane hot path allocation-light; never block on locks (use
arc-swap). - Code comments start lowercase, no trailing punctuation;
///doc comments use normal prose. - New balancing strategy → implement
rolter_balancer::LoadBalancer+ wire intobuild(). - New storage backend → implement
rolter_storetraits behind a cargo feature.
Agent commits
Automated contributions include the trailer:
Co-Authored-By: Oz <oz-agent@warp.dev>
Don’t
- Don’t commit secrets (use env / the encrypted store).
- Don’t force-push
master; force-push is fine on your own feature branches. - Don’t
--amendafter pushing shared history.