That would be very simplistic. It means that all resources you need must be inlined in the initial download. This makes it hard to balance reasonable update time and log caching, especially if you have a slowly-updating ffmpeg.wasm and a more frequently updated UI.
Maybe it could add the CSP at some point after everything is loaded and then the badge appears? Of course you still want updates, how do you ensure that updates can occur without sneaking out information? Wiping all site data before downloading the new version would work but having local persistent data would be useful. Maybe all local data would be unavailable from the start of the new version fetch to until the no-network policy is applied?
Maybe it could add the CSP at some point after everything is loaded and then the badge appears? Of course you still want updates, how do you ensure that updates can occur without sneaking out information? Wiping all site data before downloading the new version would work but having local persistent data would be useful. Maybe all local data would be unavailable from the start of the new version fetch to until the no-network policy is applied?