Note: Flavormancer is currently built by a fixed internal team and is not accepting external contributions at this stage. Unsolicited pull requests will be closed (no reflection on the work). This guide is for the project's own team.
Thanks for contributing. This guide covers how we branch, commit, and review so the history stays clean and the work stays legible.
Trunk-based with short-lived branches. main is protected β no direct pushes.
Branch β keep it small β open a PR β get it reviewed β squash-merge β delete
the branch.
type/scope-desc, e.g. feat/api-predict-endpoint, feat/ui-taste-meters,
chore/infra-compose.
Conventional Commits, scope = module:
feat(api): add /predict endpoint backed by ONNX Runtime
fix(training): correct InChIKey dedup collision
docs(data): document ChemTastesDB column names
- Types:
feat fix docs chore refactor test perf - Scopes:
training aroma api serving ui infra data docs - Commits must be signed (GPG or SSH). PRs with unsigned commits won't merge.
- Commits must also be signed off (
git commit -s) β theSigned-off-by:line certifies the DCO and your agreement to the project's Contributor License Agreement, which lets Flavormancer be offered both open-source and as proprietary on-premise builds. SeeCLA.md.
- Small β one logical change, readable as a sequence of decisions.
- Link the issue:
Closes #42. - CI green before merge.
- One approval required, routed by
CODEOWNERS. - Squash-merge; the branch is deleted on merge. Full commit-by-commit detail and the review thread stay preserved in the PR.
- For genuine pair work, add
Co-authored-by:trailers so everyone gets credit.
CI green Β· reviewed and approved Β· issue linked Β· docs updated if behavior changed.
Backlog β Ready β In progress β In review β Done
area:training area:aroma area:api area:serving area:ui area:infra
area:data, plus good-first-issue, bug, enhancement.
Datasets and trained models are never committed β the training scripts
download their sources and .gitignore keeps artifacts out of the repo. See
docs/ for environment and run steps.