Ship a change on develop
Every commit is one version. Rules in CONTRIBUTING.md ("Every commit"); the short form:
- Verify.
yarn verify(typecheck, lint with zero warnings, Prettier check, tests, build with prerender). Fix the code, not the rules: a rule exception is a one-line disable with a reason after--. - Check the tree.
git status. The user may have unfinished edits: list only the files this change touched. Leave everything else unstaged. - Pick the version right before committing (read
versioninpackage.jsonand the top ofCHANGELOG.mdnow, not earlier):- major: removed or renamed pages, changed URLs, a redesign
- minor: new visible content or features
- patch: fixes, copy, images, styling, dependencies, config, tests, docs
- Changelog. Add
### X.Y.Z - YYYY-MM-DDunder the single## Unreleasedheading (after a release it is gone: add it above the newest## Release), withAdded/Changed/Fixed/Removedgroups, one plain line each, short hyphens only. - Commit the listed files by name:
git commit -- <files>with the subject<what changed, imperative> (X.Y.Z), a short body, and the co-author trailer if Claude wrote it. - Check the commit against its message:
git show --stat HEAD. Then pushdevelop.
Before committing, list every changed unit (file, function, branch) next to the test that covers it. An untested branch gets a test, or a note in the reply.