While splitting the commits, my intention was that while it looks a bit odd, it still always produces valid SPIR-V, which is not hard to arrange because different CF instructions don't really interact with each other. It works in SotTR, but the best test would be to run Gio's shadowCI on the two intermediate commits, if that can be done without too much trouble.
The easy way would be to create a draft MR with that commit. However I tried those commits directly on my computer and there doesn't seem to be any additional failure. Of course that doesn't check that the generated code is correct, or the same as before the changes. Like Conor, though, I am pretty optimistic on the fact that intermediate version should be pretty equivalent to the original (and final) code.