So, I'm thinking about versioned data, and figured...
# orm-help
n
So, I'm thinking about versioned data, and figured out an easy way to do it (using an abtraction that has a 1:m relation to Version records) BUT now mutations are weird. Sending partial data to the API means I need to resolve all relations in my most recent Version, then merge that data with the data I want to save, then create a new version. All of that is really starting to feel like an antipattern in GraphQL, so I'm worried it's a bad approach. How have other people solved for versioned data? (googling mostly gets me results about versioned APIs 😐 )
Would it be more reasonable to store the data in Article itself, and (after updating it) save a copy of the data in a new ArticleVersion?
Both of these approaches also have the issue of "changing data in certain related types should create new records rather than mutating them in place, otherwise older versions of the article would reference newer versions of those types"
(Which I initially wanted to solve by taking a JSON snapshot and saving that, but then you can't do graphql stuff like shape the response when querying for it)