On this page
Local development (required gates)#
cargo build --workspace
cargo fmt --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace
cargo deny checkInstall cargo-deny. CI runs the same gates plus license/advisory/source policy.
Pull requests#
- One task per PR; preserve roadmap dependency order.
- Tests for behavior changes; storage/WAL/recovery/MVCC/txn changes need correctness + failure-path coverage.
- Public API/architecture changes need docs; material design decisions need an ADR (
docs/adr/convention perCONTRIBUTING.md). - State validation, limitations, follow-ups. No secrets or forbidden engine foundations. Review via
CODEOWNERS.
Adding SQL functionality#
Parser (crates/sql/src/parser/* + ast.rs) → executor (query/*, join/*, scalar.rs, dml.rs) → tests in tests/*.sql + crates/*/tests. Update Compatibility status and add cookbook examples. See Repo structure.
Adding storage functionality#
crates/storage (layout/manager/row/btree/buffer/checksum/catalog) + crates/wal (format/recovery) + crates/txn/mvcc → lifecycle mount/demount coverage (crates/lifecycle/tests) + corruption/replay tests. Document as Internal unless promoted to a developer contract.
Structure: Repo structure