Yes, let's keep it simple for now. So, here in this situation the server just report
the conflict, right ? He does not take action on the conflict itself. Do we state here
that the client will always be responsible in resolving the conflict ?
+1 for keeping it simple, right the server will report a conflict and the user will in the
most simple scenario decide which change to keep. That is why I introduced this
ConflictHandler so the developer can present these conflicts to the user.
In your first message, you define a ConflictHandler interface, do we
also want to provide some implementations of the ConflictHandler that covers most of the
use cases ?
Sure we could have a default implementation that just takes the newest as the new version,
but we should keep other version as well.