В принципе вы не можете обновлять документ CouchDB вслепую, вы можете только пытаться обновить конкретную версию документа.
Для одного документа вы можете использовать Обработчик обновления CouchDB чтобы скрыть это от клиента, в качестве обработчика обновления будет передан существующий документ (если он существует), включая его ревизию.
Для коллекции документов при использовании _bulk_docs
вы можете добавить "new_edits": false
который будет принудительно вставлять конфликты вместо отклонения (хотя вам все равно нужно будет передать _rev , он просто не должен быть текущим).
Все, что сказано, этобыло бы лучше следовать правилам.Возьмите текущую версию документа, который вы хотите обновить, попробуйте обновить его, если вы получите 409, получите новую версию, объедините ее соответствующим образом и обновите снова.