This issue concerns code using Softdevice S132 v6.1.1. v5.0.0. I did not test with any other version.
From the documentation of sd_ble_gatts_hvx
in ble_gatts.h,
I expect that the return value when calling this function while notifications are disabled for the characteristic in question is NRF_ERROR_INVALID_STATE.
Instead, the function returns BLE_ERROR_NOT_ENABLED,
which suggests that the softdevice is not enabled, but this is of course not the case because the device in question is connected when the issue arises.