Изредка подключаемая система CQRS

Проблема:

Два сотрудника (A & B) выходят в автономный режим одновременно, редактируя клиента № 123, скажем, версию № 20, и в то время как автономный режим продолжают вносить изменения ...

Сценарии:

1 - Два сотрудника редактируют клиента № 123 и вносят изменения в один или несколько идентичных атрибутов.

2 - Два сотрудника редактируют клиента № 123, но НЕ вносят одинаковые изменения (они пересекаются, не касаясь друг друга).

... они оба возвращаются в оперативный режим, первый сотрудник A добавляет, тем самым изменяя клиента на версию # 21, затем сотрудник B, все еще на версии # 20

Вопросы:

Какие изменения мы оставляем в сценарии 1?

Можем ли мы сделать слияние в сценарии 2, как?

Контекст:

1 - CQRS + система стилей источников событий

2 - Использование Event Sourcing Db в качестве очереди

3 - Возможная последовательность на модели чтения

4 - RESTful API

РЕДАКТИРОВАТЬ-1: Разъяснения, основанные на ответах до сих пор:

Чтобы выполнить мелкозернистое объединение, мне нужно иметь одну команду для каждого поля в форме, например?

Выше, мелкозернистые команды для ChangeName, ChangeSupplier, ChangeDescription и т. Д., Каждая из которых имеет свою собственную временную метку, позволит автоматически объединить в событии A & B оба измененных ChangedName?

Редактирование-2: Отслеживание на основе использования определенного хранилища событий:

Кажется, что я буду использовать @GetEventStore для сохранения своих потоков событий.

Они используют оптимистический параллелизм следующим образом:

Каждое событие в потоке увеличивает версию потока на 1

Операторы записи могут указывать ожидаемую версию, используя заголовок ES-ExpectedVersion на устройствах записи.

-1 указывает, что поток не должен существовать

0 и выше указывает версию потока

Запись не будет выполнена, если поток не соответствует версии, либо вы повторите попытку с новым ожидаемым номером версии, либо повторно обработали поведение и решили, что все в порядке, если вы того пожелаете.

Если не указана ожидаемая версия ES, оптимистическое управление параллелизмом отключено

В этом контексте оптимистический параллелизм основан не только на идентификаторе сообщения, но и на событии #