Looks good but is this really NFC ?
I.e. replacePayloadOp used to implicitly also replacePayloadValues and now we fail hard.
Is this a standalone applicable first step or does it need to land at the same time as dependent changes to avoid breaking downstream?
nit: less -> fewer
Removed the NFC. This requires downstream changes if replacePayloadOp is used. In the case of IREE, it should be integrated together with D147039, then the integration fix is simply deleting the IREE TrackingListener.