detail
Root cause of 'I have a sour sour dough recipe, I don't know why it couldn't find it': 'Save it to your recipes' matched against recipeName.textContent (whatever DoughCalc preset/mode is currently loaded, e.g. 'Bread -- default ratios') instead of the actual saved recipe's title. 'Sour Sour Sourdough Bread' was only ever created directly in the Recipes table (via add_recipe), never set up as a loadable DoughCalc preset -- so recipeName.textContent could never equal that string, and the match always failed, no matter what the user typed as a bake note. FIX: both buttons ('Save as recipe' and 'Save it to your recipes') now share the SAME explicit Title input field as the single source of truth for 'which recipe this is' -- removed the implicit dependency on the loaded preset name entirely. If the Title field is empty when 'Save it to your recipes' is clicked, it now says so clearly and points at the Title field instead of silently using the wrong string. ALSO addressed USR369's 'make it simple to add a new recipe' ask: changed the Save-as-Recipe card to be visible/expanded by default (was collapsed like Basic Steps/Bake Notes) since it's now a primary, actively-used feature, not an occasional one. Confirmed the fix with a direct simulation: title='Sour Sour Sourdough Bread' now correctly matches recipe id 26 via the same case-insensitive exact-match logic the button uses. Backed up DoughCalc first, node --check clean, byte-verified deploy.