I want all speculation to fly in a transient layer above the existing stable codebase.
These live systems are closest to the speculative execution described above. But there is still too much hand-holding required to inspect the interesting values, to save and restore state, and replay some execution from stable states.
And of course, none of these do tracing with partial information.