Эти баги появились благодаря предложенному вами методу, якобы "упрощающему" написание программ.
>казалось бы, причём тут нода и js вообще? Эта ошибка сродни if(a = 1), такая же глупаяПриехали. Эта вообще не ошибка. Это коренная отличительная особенность js вообще и node.js в частности.
Поэтому сначала ознакомьтесь с нодой, а уже потом давайте советы как "улучшить" чужой код.
Кстати, я говорил, что преждевременная оптимизация корень всех бед?
Рекомендованным способом уйти от "спагетти" callback-ов является использование EventEmitter -ов. См видеогайд от одного из разработчиков node Tom Hughes-Croucher
"Рow to stop writing spaghetti code"
www.youtube.com/watch?v=YRJGEc2kkDY
а не то что вы там выдумали.