Thanks for contributing. Arco is an Apache-2.0 project that values clear proposals, reproducible verification, and respectful review.
- Follow the Code of Conduct.
- Keep changes scoped and reviewable.
- Add or update tests for behavior changes.
- Update documentation when public behavior or interfaces change.
- Sign commits with DCO:
git commit -s.
- Rust 1.85+
protocmdbook(for docs)
git clone https://github.com/daxis-io/arco.git
cd arco
cargo check --workspace --all-features- Open an issue or discussion for non-trivial changes.
- Create a branch from
main. - Implement changes with tests.
- Run local verification:
cargo fmt --check cargo clippy --workspace --all-features -- -D warnings cargo xtask adr-check cargo xtask parity-matrix-check cargo check --workspace --all-features cargo test --workspace --all-features --exclude arco-flow --exclude arco-api - Build docs:
cd docs/guide && mdbook build
- Open a pull request with summary, motivation, risk, and verification notes.
- CI must pass before merge.
- API, schema, or contract changes must include migration notes.
- Architectural changes should reference an ADR in
docs/adr/. - Keep PRs focused; split unrelated work.
Use conventional commits where practical:
feat(scope): short summary
fix(scope): short summary
docs(scope): short summary
docs/guide/is the canonical user documentation surface.- ADRs in
docs/adr/are canonical for architecture decisions. - Do not treat transient local artifacts as normative references.
Do not open public issues for suspected vulnerabilities. Follow SECURITY.md.
- Usage and design questions: COMMUNITY.md
- Support channels: SUPPORT.md