Thank you for the explanation. I get what set_caching_enabled does, but it does not disable fingerprinting of .map arguments.
Regarding the provision of hashes in advance, this is probably the easiest option, I’ve tested a quick workaround where the update_fingerprint receives another argument precalculated_hashes - dictionary[name, hash] that I’ve provided to the .map function. In my case, I’ve provided a hash for the whole function (ie do_nothing from the example).  Does this seem right?
Irrelevant of this, would be still great if set_caching_enabled also killed fingerprinting - unless it is also used for something else.