これも「ハンドリングしてないreject」としてのレス
例外ではなくrejectの話ということがより明確になるようにコードを修正した

rejectをハンドリングしている

Promise.resolve(true).then(function(v) {
 return Promise.reject(new Error('then'));
}).catch(function(e) {
 console.log(e);
});

はブレークしないが、rejectをハンドリングしていない

Promise.resolve(true).then(function(v) {
 return Promise.reject(new Error('then'));
});

はブレークするのか?

ちなみにQを使う場合はQ.getUnhandledReasons()で
「ハンドリングしてないreject」の一覧を取得できる
nodeではsetInterval()で定期的にログ出力すればデバッガの必要性は低い