gulp.task('default', ['browser-sync', 'watch']);
Тут вероятно последовательное выполнение.
Но ни browser-sync не watch ни возвращают stream, и не выполняют функцию done.
На мой взгляд, вам надо либо параллельно выполнить browser-sync и watch, либо переделать:
gulp.task('browser-sync', ['styles', 'scripts'], function(done) {
browserSync.init({
server: {
baseDir: "./app"
},
notify: false
});
done();
});
gulp.task('watch', function (done) {
gulp.watch('sass/*.sass', ['styles']);
gulp.watch('app/libs/**/*.js', ['scripts']);
gulp.watch('app/js/*.js').on("change", browserSync.reload);
gulp.watch('app/*.html').on('change', browserSync.reload);
done();
});