How to Contribute
This guide is the short route for contributors who want to add or change a VOI method, plotting helper, contract, or docs page.
Start here
Section titled “Start here”- Read
AGENTS.md,roadmap.md, andtodo.md - Pick a single task from the active backlog
- Read the surrounding implementation, tests, and contract files before editing
- Keep the change small enough to review in one pass
Working style
Section titled “Working style”- Use
toxas the main verification gate - Use
uv run noxfor the uv-backed local session runner - Keep new code type-hinted
- Add regression tests for behavior changes
- Keep prose aligned with Vale and the docs build
Conductor workflow
Section titled “Conductor workflow”The repository uses Conductor to keep spec, implementation, and review in sync. For a track-based change: read the track spec, implement one task at a time, run relevant tests before widening scope, and update the track plan and project docs when complete.
Branching and PRs
Section titled “Branching and PRs”- Create a feature branch for larger changes
- Keep commits conventional, focused, and easy to revert
- Include the docs and tests that explain the behavior change
- Do not bundle unrelated cleanup with contract changes
Testing and coverage
Section titled “Testing and coverage”- Run the full suite with
toxbefore finishing a substantive change - Keep coverage at or above the project threshold
- Use property-based tests or fuzzing where invariants matter