Thanks for your inquiry. ~ We appreciate your patience :-)
Regarding this EOT/deletion type: auto-eot-cancellation-expiration-demotion
This occurs whenever s2Member’s Auto EOT System (powered by WP Cron) finds a User/Member with an EOT Time that is less than or equal to the current time (e.g. the time at which the CRON job is running). In other words, this event occurs whenever an EOT or deletion occurs, as a result of a customer having been associated with an Auto-EOT Time. s2Member expires the account at the specified Auto-EOT Time.
See: WordPress® -› Users -› Edit any User account and find this section.

It is possible for a User to be demoted (or even deleted) when an EOT occurs (based on your EOT Behavior configuration in s2Member). If they are simply demoted (the default behavior), in the future they might upgrade and/or purchase something new, causing the account to be re-instated. I think this is what you’re describing.
There is no way for s2Member to predict what the customer will do in the future, so all you can do is listen for EOT/Deletion events and react based on what is happening at the present time.
Is it possible if they’re renewing a subscription this would get triggered?
It’s possible. I’m not aware of this occurring, but it IS possible. It just depends on what (if any) notifications that your payment gateway is sending back to your server for s2Member® to process during an account upgrade/downgrade. You can use s2Member’s API Notification for EOTs/Deletions, to listen for events like this.
See: Dashboard -› s2Member® -› API / Notifications -› EOT/Deletion Notifications
If you would like us to review your s2Member log files, we might be able to tell you more about any EOT events that are occuring on your installation, immediately followed by a renewal. If you’d like us to review your log files, please submit those privately. See: s2Member® » Private Contact Form
Please let us know if problems persist :-)