Update: using print statements instead of the debugger finally got my bug fixed
I kept stepping through my little to-do app in the debugger last Tuesday and just could not see why the list kept wiping itself on refresh. So I gave up on that and dropped about 15 print statements after every save step, and the third one showed the array was getting reset inside the loop. Is there a way to spot that kind of thing faster, or do you just sprinkle prints everywhere like me?