As an example, the debezium postgres documentation states the following:
DEFAULT - UPDATE and DELETE events will only contain the previous values for the primary key columns of a table, in case of UPDATE only the primary columns with changed values are present
This is somewhat ambiguous in that for key-less tables, no update or delete event will be emitted. This is in-part due to a filter applied to both create, update, and delete relational messages, https://github.com/debezium/debezium/blob/master/debezium-core/src/main/java/io/debezium/relational/RelationalChangeRecordEmitter.java#L69.
I think it would be better for users that we document the expected behavior for both if a primary key exists and does not exist for each replica identity.