detail
Root cause of 'you're not adding the directions' finally confirmed: renderSourdoughBasics() had only 2 branches -- (usingStarter && !usingYeast) for pure sourdough, and (usingStarter && usingYeast) for sourdough+added-yeast. ANY recipe using commercial yeast with NO starter at all (like the White Sandwich Bread, or this new soft-crust Large Loaf) fell through to the final 'else { basics.style.display="none"; return; }' -- which not only hid the Basic Steps display but ALSO skipped the Save-as-Recipe Title/Directions auto-prefill code entirely, since that code lives AFTER the if/else chain and the early return never reached it. This was never a bug in the save button's fetch/POST logic (which I'd already probe-tested and confirmed working) -- it was that the Directions textarea was silently staying empty for any non-sourdough recipe, so whatever got saved had empty directions regardless of what the save button did with them. FIX: added a third branch (usingYeast && !usingStarter) with its own commercial-yeast step text (mix, knead to windowpane, first rise, shape+second rise, bake), so this class of recipe now generates Basic Steps AND reaches the prefill code like the other two branches. Marked the orphaned diagnostic-probe recipe (id 31) as needs-review with an explanatory note since there's no delete_recipe action to actually remove it. Backed up DoughCalc first, node --check passed, byte-verified deploy.