For the adapters that reconcile as a SIDE EFFECT of some other save — a role being granted
entity access, say. The triggering save has already committed by then, so throwing would
report a failure for work that succeeded. The rows stay missing until the next reconciliation,
which is a visible loss of access rather than a silent loss of protection: a field with no row
on an enabled entity is denied.
Runs ReconcileFieldPermissions and swallows failures into a logged error.
For the adapters that reconcile as a SIDE EFFECT of some other save — a role being granted entity access, say. The triggering save has already committed by then, so throwing would report a failure for work that succeeded. The rows stay missing until the next reconciliation, which is a visible loss of access rather than a silent loss of protection: a field with no row on an enabled entity is denied.