The checks a pull request has to pass
- make check
- Clippy
- cargo build-sbf
- LiteSVM
- pnpm test
- Apache-2.0
Decisions first
A pull request does not invent an instruction, a fee or a job type. If the decision is not in an ADR, the change does not belong in the programs.
make check passes
One command runs formatting, Clippy, cargo build-sbf for the three programs and the test callback consumer, the Rust tests and the JavaScript SDK tests.
Do not invent capabilities
The documentation contributing guide asks you not to document an instruction, fee or job the protocol has not implemented. The website follows the same rule.
No invented numbers
Fees, rewards and basis points stay unset until ADR 0005 names them. A pull request that fills those in is inventing economics.
Keys stay separate
Node identity, operator authority, treasury and the security fund stay on separate keys. Development program keypairs stay gitignored.
Nothing deploys itself
scripts/deploy-mainnet.sh must keep refusing to run. A change that makes it send a transaction is a defect.