Temporal has an amazing replay functionality, which has the ability to detect non-determinism.
I am wondering if someone has experimented with building some sort of a wrapper/service on to fetch the histories and run a comprehensive Regression testing using pre-production histories? i.e Get a set of workflows from the history, run the new code against it (including any changes to activities) and make sure things still pass. For this use case, we can assume the purpose is to introduce a new workflow version.
You can leverage visibility api (list executions) using visibility query of your choice to select all execs on your pre-prod cluster that you want to run against workflow replayer. Thats typically what I have seen many users do.
One issue that have seen reported with this is that executions you select for this may not cover all possible workflow paths, in that case one thing have seen users do is run their workflows using the current workflow and activity definitions in their tests, where you can explicitly set some inputs that would trigger all possible scenarios (paths through your workflow code). Then you can get these workflow exec event histories from the test environment and run them against your new workflow types in replayer tests.
(including any changes to activities)
note activities are not re-executed during replay tests. changes to your activity code would not affect workflow determinism. if you do however change your activity inputs and/or return types I would write tests to see how existing workflow code (before your changes) reacts to that, as well as your new activity code reacts to having the old workflow code inputs passed to it (to make sure you eliminate any intermittent failures that would cause activity retries).