The specific reason it's done for Chromium is that Chromium upstream is a rolling release. If you want security updates, you must also accept new features. Sometimes those new features need new versions of build dependencies. This does not fit the traditional distribution (eg. deb) model, since those build dependencies can't be bumped without impacting every other dependent package too.
What has ended up happening so far is that distributions bundle all these things into the deb and ship it and hope for the best. It's very painful from a packaging perspective, and effectively turns the deb into nothing better than a bundled app (like a Snap or Flatpak or AppImage) wrapped in a .deb anyway.
I can see this happening to Firefox in the end. For example Firefox upstream added a whole Rust toolchain dependency that wasn't packaged in supported distribution releases. I don't see it happening to anything else, since the rest of the distribution upstreams don't the thing that causes so much deb packaging pain for the browsers.
If snaps are yet another Canonical technology that they want to succeed despite their users' wishes, then forcing Snap versions of most common apps will come sooner or later, regardless of an app's original release or build model.
What has ended up happening so far is that distributions bundle all these things into the deb and ship it and hope for the best. It's very painful from a packaging perspective, and effectively turns the deb into nothing better than a bundled app (like a Snap or Flatpak or AppImage) wrapped in a .deb anyway.
I can see this happening to Firefox in the end. For example Firefox upstream added a whole Rust toolchain dependency that wasn't packaged in supported distribution releases. I don't see it happening to anything else, since the rest of the distribution upstreams don't the thing that causes so much deb packaging pain for the browsers.