I think the where clause should be cumulative, i.e. the library could use an array internally ($_where = []) in the case we need to add a new where clause after another, say, according to a user permission or group. There are several other clauses that can stack…
$crud->where(['user_id' => $id]);
if (auth()->user()->inGroup('admin')) {
$crud->where(['user_group' => 'admin']);
}
IMHO the mixed usage of Laminas\Db\Sql\Where in filtering and author’s own managed where clause should be normalized