These are all valid points. IMO the tension stems from the fact that you cannot have ‘JIT preconfs’ and traditional JIT block building at the same time. That is, either:
- We choose a world where, as you point out, proposers can issue execution preconfs based on the most recent state, and as a consequence they’ll have to build an entire block, and everything you say happens, or
- We choose a world where traditional JIT blockbuilding is preserved, and preconfs will just serve as inclusion guarantees of sorts. In this latter scenario I think many of your conclusions would not hold.
Personally, I think that preconfs as in point 2 would be enough for a lot of use cases. I also find it way less invasive with respect to changing the current situation.