Revocation should be immediate and never get refused
It seems there is a conflict between rule BR_G107 and the fact we should always be able to revoke immediately our identity:
####### BR_G107 - ENTRY.unchainables
If
HEAD.number > 0
:ENTRY.unchainables = COUNT(GLOBAL_MINDEX[issuer=ENTRY.issuer, chainable_on > HEAD~1.medianTime]))
Indeed, when we revoke our identity, we try to update the MINDEX and thus we enter in this rule BR_G107. We might fall into the case where we updated our membership less than msPeriod
time, so our revocation gets refused.
To fix this problem, let's change the rule to:
If
HEAD.number > 0 AND ENTRY.revocation == null
: