This is not an direct answer to your question but you can set a default behaviour in the database.
cfg = rs.conf()
cfg.settings = {}
cfg.settings.getLastErrorDefaults = {w: "majority", j: true}
rs.reconfig(cfg)
And in Lithium you should be able to do this with a filter:
Connections::get('default')->applyFilter(array('create', 'update', 'delete'), function($self, $params, $chain){
$params['options']['safe'] = true;
return $chain->next($self, $params, $chain);
});
Or directly in the query:
if (MyModel::update($query, $conditions, array(‘safe’ => true))) {
// success
}