> the move from a persistent background.js script to a sevice-worker will just make a number of use-cases impossible or very hacky
Yep.
Chrome is even crippling some of their own APIs, like chrome.tabCapture (not available in service workers, and in mv3 will be "foreground only")
AKA, if you want to use chrome.tabCapture in mv3, you have to run it in a tab. And because that tab can be closed at any time, you need to serialize megabytes of data to the chrome.storage api every few seconds.