FWIW I’ve done lots of autodiff computation through quaternions, and it certainly can work just fine. You may run into edge cases, but that’s true with any representation, so you might as well pick the one that isn’t a minefield of singularities.
Right–that all sounds great, and would make lots of sense as one or more helpful methods for your new_clust{T} type.