Thanks for your interest in contributing.
git clone https://github.com/mxthematic/openproof.git
cd openproof
cd lean && lake update && cd ..
cargo build --workspace- Maximum 500 lines per file. Split by responsibility when approaching this limit.
- Follow Rust idioms: iterators over indexing, Result/Option over panicking.
- Run
cargo fmtbefore committing. - Run
cargo clippy -p <crate> -- -D warningsand fix all warnings.
- Create a branch:
git checkout -b feat/my-change - Make your changes
- Run
cargo fmt, build, and test:cargo fmt cargo build --workspace cargo test --workspace - Commit with a conventional message:
feat(core): add new event type - Push and open a pull request with a clear description
- Ensure CI passes -- PRs require all checks green before merge
Use conventional commits:
<type>(<scope>): <description>
Types: feat, fix, refactor, chore, docs, test
Scope is the crate name when relevant (e.g., search, cli, protocol).
Open an issue on GitHub with:
- What you expected to happen
- What actually happened
- Steps to reproduce
- Your environment (OS, Lean version, Rust version)