I don't know if it is a bug or not, but it seems that anope does not enforce channel modes correctly if certain modes are MLOCK with the inspircd 20 module. I am not sure what is the problem yet, so I have not reported it yet.
The bug causes an empty channel to not set modes (or not all of them), or will allow mode changes (aka add modes that are locked at "-" or remove modes that are locked at "+").
However if services are restarted and someone is present in the channel, the enforce will trigger. I will dig more into it and come back on this. Thanks for the read
EDIT: The cause is not related to the +O or +A channel modes when they are locked (as previously thought) and not related to the unreal to inspircd module switch (I've created new channels and they seem to have the same problem).