You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Water chemistry: suggest salt additions automatically from source + target profile #10
User feedback (forum, v0.3, 2026-05-19) — Arwen. Reference behaviour: moneaudebrassage.fr.
Problem
Today water chemistry runs forward only: the brewer enters grams of gypsum / calcium chloride / etc. and the app shows the resulting ion profile (`computeWaterAdditions` in packages/calc/src/water-additions.ts).
What the brewer actually wants on brew day is the inverse: "my source water is this, my target profile is Burton — tell me how much of each salt to add." The current flow requires guess-and-check, or leaving Werb for another tool.
Requested behaviour
Given source + target ion profiles, compute a recommended set of additions: gypsum, calcium chloride, epsom, table salt, baking soda.
Show the residual delta per ion after applying the suggested additions, so the brewer sees how close the match actually is.
The brewer can accept the suggestion as a starting point and then tweak individual salt values manually (preserves the current forward flow).
Notes
Likely structure: a separate solver in `packages/calc/` (constrained least-squares over the salt → ion contribution matrix), contract-first with its own input/output JSON Schema per the SPEC convention.
Shipped in v0.5.0 (#39): pick a target profile and hit Suggest additions — a non-negative least-squares solver over the salt→ion matrix proposes the salts and fills the editable fields. Source auto-load (#9) stays separate.
Activity
Merge pull request #39 from werb-dev/feat/v0.5.0-feedback-remediation
ndreno commentedon Jun 9, 2026
Shipped in v0.5.0 (#39): pick a target profile and hit Suggest additions — a non-negative least-squares solver over the salt→ion matrix proposes the salts and fills the editable fields. Source auto-load (#9) stays separate.
feat: water source-profile loading (#9) + PDF brew sheet (#12) (#40)