Finally, this was a bug in acs-subsite/tcl/group-procs.tcl (group::remove_member) that has been introduced in OpenACS version 5.4 (dotLRN version 2.4).
I have committed a fix at oacs-5-5 branch and HEAD.
Thanks to Michael who didn't stop until he found where the bug was.