> One possibility would be to add another kind of Channel which uses event-sourcing instead of relying on message deletion

How do you see a relation between event sourcing and deletion of messages? Why should a channel keep its messages on persistent store if they have been successfully delivered? Even if it deletes messages the last used sequence number can be persisted.

> While doing so, it could also ensure that the sequence numbers are contiguous per destination

No, a channel can send to multiple destinations. This is needed because we introduced replying to senders via channels. Supporting persistent contiguous sequence numbers makes only sense if we restrict channels to have a single destination. But then, we cannot use these channels for replying to senders.