If I'm working on a changelist and decide to shelve and revert the files so that I can work on something else, I may go back to that changelist later and decide to submit. Before the submit dialog, I am asked if I want to delete the shelved files. If I'm not thinking, I'll click Yes, then realize that all my changes were, in fact, only shelved and not checked out. So my changes disappear.
I would write a shelve-delete trigger to resolve this, but based on correspondence with Tech support, there is a bug in which shelve-delete trigger will not work if there are no checked-out files in the changelist.