Ok, my modial had a lot in the last year, but there was always a small hestiation between 2800 and 3000 rpm. I checked/replaced almost everyting on ignition and fueling, a lot of parts from pump, filter, injectors, plugs, extenders, wires, rotos, fuel distributor nivelation, and WUR and AAV cleaning. Most of the changes where 100% necesary (eg.: fuel pump stopped working, so the new one was not an option) and a lot of orings presented leaks in the FD.... etc. etc... Every change made an improvement easy to feel, but the 2800-3000rpm hestiation was minimized, but still there. At some point, I realized that idle was dead smoth, and WOT produced a very nice, clean and linear punch that indicated it was not a ignition or fuelling issue.... So I decided to understand what the TPS do... TPS shorts 2 terminals at idle and WOT... both working perfeclty but when the O2 Sensor is not used.... Checked the TPS and was working good: the only thing left: the o2 sensor. Replaced it... and MAGIC! now the car has even more "low end" torque (in fact, when you just request 20-50% of the throttle you get a much more solid acceleration) Hesitation is gone! Looks the O2 Sensor with 36 years was not working as expected hahaha
Depending on the age of your engine management system you find that at WOT the O2 sensor gets ignored, taking the fueling system into open-loop. With no lambda measurement leaning it out. This is to protect your engine. This may explain that a malfunctioning O2 sensor has no impact on WOT. Note: Open loop at WOT is a given for many engine managements, but I can't recall which sensor(s) get overruled. You get close to 13:1 A/F ratio instead of 14.7:1 (Lambda 1) Got catch that you eliminated the source.
Yes the debug process when you have a faulty sensor is messy, because you depend (as the ECU) on good sensors readings. I could take the route to measure Frequency Valve, Reading more fuel pressures, checking all injectors again (they are new) and do a lot of more work, asuming the O2 Sensor was good, loosing a lot of time.... And AFAIK, there is no way to measure a O2 Sensor to confirm if its reading good or bad: other than taking a 2nd O2 Sensor and compare them... but if you have a 2nd one, its just a very fast test to switch them and confirm if the issue goes away (as It did on my case).