Obligation @reason is now properly guarded by mutex