It's all about writeSkew checks and internal versioning, which have to live alongside the possibility of passing in version information. There are times where version is generated internally (writeSkew) and times when user provides the version. The two use cases are not really compatible with each other, but the logic here just makes sure that external version information is only applied if no version is already provided internally (writeSkew). Dealing with this has been a relative challenge of this task.