detail
Root cause of 'recipe edit doesn't work' on recipes.html: _recipeData was read in toggleEdit() and saveEdit() (card._recipeData) but NEVER assigned anywhere in the file -- confirmed via full-file grep, only 2 hits, both reads. Clicking Edit populated the form from undefined.title/.notes/etc (silent failure or thrown error depending on browser), and Save posted id: undefined to update_recipe. Server-side update_recipe API itself works fine (tested directly via curl, confirmed with a read-back probe on recipe #26) -- the bug was entirely client-side. FIX: after container.innerHTML renders the cards, loop the rendered .recipe-card elements and attach card._recipeData = the matching recipe object (matched by data-recipe-id). Backed up first, byte-verified deploy, brace/paren balance held (183/183, 257/257, +1/+8 for exactly what was added).