Such a change would make it impossible to insert a row with user-specified primary key (e.g. natural primary keys, pre-fetched from a sequence). It can't assume the table already contains the row, just based on the fact that the array contains the primary key.
You can write a new function, similar to createRow
, that constructs the row instance with 'stored' => true
.