Remove expired course members from group after contract end

Expired learner contracts can leave members with community access and cause billing confusion. Remove them automatically from the group so coordinators see accurate membership before billing.

Remove expired course members from group after contract end

Remove expired course members from group after contract end