A week of small, visible things.
Serving multiplier
Recipes can be shown at half, double, or any multiple. The scaling is display-only: the stored recipe never changes, and the quantities are rendered through a formatter that keeps fractions sensible, so three-quarters of a cup doubled reads as one and a half cups rather than 1.5.
Serving estimate
Imported recipes often lack a servings count. A rule-based estimate (from the quantity of the main protein or starch, with a fallback on total weight) fills it in and marks it as an estimate. There is no model behind this; see the no-AI decision.
What’s new
A one-time card shows what changed since a person last opened the app, dismissed with a tap and not shown again for that version. It replaced a changelog page nobody visited.
Honest imports
The importer now retries a fetch once on a transient failure, sends its CookbookImporter/1.0 user agent, and gives a plain refusal when a page has no structured recipe data instead of a half-filled form. Site owners can tell who fetched, and users can tell why an import did not work. The reasoning behind the user agent, and what the importer says on a rate limit or a refusal, is in the entry on the importer dropping its browser disguise.