I **personally** prefer more descriptive generic type names vs single letter (eg `T`) generic names. Specifically, I found renaming the generic names in `action-utils` helped me make sense of what was going on.
I realize this is an "opinionated" change and using single letters for generic type names is common... so very open to abandoning this diff if others disagree.