Extracting this topic from #17977 as during its review general cleanups of the script interpreter clean have been advocated.
Given that taproot implementation review is already far advanced, I think no one is proposing to address them now ? This issue is more to track interesting points raised.
I guess there is at least two different axis which have been under discussion (but they may overlap a bit):
- @theuni has a branch splitting consensus from policy : https://github.com/theuni/bitcoin/commits/policy-split2. As of today, it sounds like the distribution of consensus and policy checks is fairly arbitrary and may lead to confusion on expected behaviors (see #17977 (review))
- @JeremyRubin was proposing to split further interpreters (see #17977 (comment)). Taproot is complexifying the script rules matrix thus making it hard to reason on in the prevision of future script softforks
If you have more comments worthy to be pinned please add them.