Ah, yes, we could add a flag to disable the caching of pre-hook parameters explicitly? It prevents more headache when it's on by default, but an opt-out sounds useful for union params like the variant_t you're describing. Would you mind creating an issue for this on github?