Thanks for your interest. These conventions keep main green and the history readable.
main is always deployable. Branch off main, open a PR, and merge — never commit directly to main.
Branch names: type/short-kebab-summary (e.g. feat/deposit-redeem, fix/nav-rounding).
Prefixes: feat, fix, refactor, chore, docs, test.
type(scope): imperative, lowercase summary
feat(vault): mint pool shares on HBAR deposit
fix(nav): clamp accretion fraction to the claim term
refactor(web): remove orphaned components
chore(ci): pin the pnpm version
Scopes in use: vault, web, scripts, contracts, docs, ci. Keep commits small and focused —
don't mix a rename with a feature.
- Push your branch and open a PR against
main(gh pr create). - Fill the PR template (what changed, how to test).
- CI must be green —
compile·typecheck· the 78 pure-logic tests · web build. - Squash- or merge-commit, then delete the branch.
- Never commit secrets —
.envis gitignored; only.env.exampleis tracked. git pull --rebasebefore you start; never force-pushmain.- Update
SPEC.md/README.mdwhen on-chain behaviour changes.