Contributing
Contributions are expected to preserve numerical correctness, reproducibility, and benchmark discipline.
Engineering Standards
- Keep APIs explicit and avoid hidden mutable global state.
- Document assumptions around data ordering, timestamps, and units.
- Prefer deterministic tests over stochastic-only assertions.
Required Checks
cargo fmt -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --workspace --lib --tests --all-features -- --skip test_sadf_test
cargo test -p openquant --test structural_breaks test_sadf_test -- --ignored Performance Change Policy
- Run benchmark suites for performance-sensitive changes.
- Attach benchmark comparison summary in the PR.
- Update baseline only for intentional and justified performance shifts.
Documentation Standards
- Update docs when APIs, behavior, or release workflows change.
- Keep examples realistic for quant workflows and include assumptions.
- Avoid ambiguous terms such as "fast" without measured context.
Useful Paths
crates/openquant/src/: library sourcecrates/openquant/tests/: behavior and regression testsbenchmarks/: baseline/latest benchmark snapshotsdocs-site/: Astro docs site