Replace `deep_dup` with the deep_cloneable gem
There are a number of instances of deep_dup within the code. These methods are very brittle, as changes to associated models will requiring the parent model code to also be updated.
A better solution might be to use the deep_cloneable gem. This offers us the same behaviour, but is maintained separately and well-tested.
sounds like a more desirable solution. @xsrust do you remember why we rolled our own deep clone methods? I think the original code had its own but don't recall if we explored any pluggable gem options
This issue is quite old, but I will explore it. DMP Assistant still seems to receive rollbar errors related to the deep_copy (same as deep_dup?) so this may be worth integrating.