> Module script executes in 'use strict' mode
Arguably, a good change all around, in line with MV3 secure-by-default theme. I guess some extensions were unknowingly relying on quirks of the ancient sloppy mode so switching to the strict mode might help them improve the code.
> Module script has its own scope
A global variable `foo` won't be automatically available as `self.foo` or `globalThis.foo` or `this.foo` (when `this` is global). This will be a breaking change for some extensions but fixing it should be trivial.
> Module script can import other modules
This is what modules are about. Both the static and dynamic imports are more flexible and arguably work faster than the importScripts() as the latter needs internal "hacks" to pause the entire JS environment, AFAIK.
> Module script has top-level `this` as `undefined`
This may be a breaking change for some extensions or libraries, but it was probably wrong to rely on it in the first place.