Some of what you’re describing makes me wonder there’s something going on between Gulp and Browsersync.
I know that Gulp 4 has some pretty major changes and on at least one project I was working on, Gulp 3 was having issues with… everything
It might be worth investigating an update to gulp 4, but that might be too much effort if this is the only issue you’re facing.
You mentioned that the site that you were having issues on had ~45 plugins. That seems like a lot, but I’ve been in those kinds of projects. I wanted to get some hard numbers, so I compared a new, blank site against a site that has 60 plugins.
I basically took the first 3 pages of “block-compatible plugins” and installed them within a new site:
wp plugin install wordpress-seo jetpack wpforms-lite tinymce-advanced mailchimp-for-wp wp-smushit instagram-feed redux-framework ninja-forms seo-by-rank-math the-events-calendar shortcodes-ultimate smart-slider-3 ml-slider nextgen-gallery amp coblocks themeisle-companion formidable ultimate-addons-for-gutenberg photo-gallery contact-widgets mailpoet popup-builder caldera-forms youtube-embed-plus woo-gutenberg-products-block leadin foogallery complianz-gdpr custom-facebook-feed olympus-google-fonts forminator wp-seopress envira-gallery-lite kadence-blocks yikes-inc-easy-mailchimp-extender custom-twitter-feeds give layout-grid otter-blocks wordpress-popup form-maker luckywp-table-of-contents soliloquy-lite booking wd-instagram-feed calculated-fields-form metronet-profile-picture wp-recipe-maker feedzy-rss-feeds gutentor advanced-responsive-video-embedder robo-gallery slider-wd visualizer atomic-blocks event-tickets getwid stripe-payments --activate
After doing that, I did notice that instant reload felt sluggish, though I still was able to get the styles to reload. I think the sluggisness is likely due to there being so many CSS files that Instant Reload is watching:
Default site:
★ app/public % find wp-content -type f | wc -l
348
★ app/public % du -sh wp-content
7.4M wp-content
★ app/public % find wp-content -name '*.css' | wc -l
22
Site with lots of plugins:
★ app/public % find wp-content -type f | wc -l
38993
★ app/public % du -sh wp-content
675M wp-content
★ app/public % find wp-content -name '*.css' | wc -l
2277
After fiddling around a bit more I did get the styles to not refresh by creating a child theme:
wp scaffold child-theme irqa --parent_theme='twentytwentyone' --activate
The only caveat is that restarting the site (or maybe restarting Local?) got everything wired up again.
All that’s to say that something about this feels like a race condition or in some way a limitation on the resources that BrowserSync has available to it.