After some interesting discussion over blogger I shifted focus to Gmail. To my knowledge one of the longest Beta product is Gmail. One strong feature I like is labels, which is far more superior than historic folder. Today surprisingly noticed a unexpected behavior in the labels, I call it a bug.
The steps are simple to reproduce:
1) select any mail conversation in your Inbox thats labeled, Open it.
2) Expand the conversation and delete the first message of it. (Yes Gmail allows to delete a single message from a conversation)
3) Return back to Inbox.
4) Now look at the conversation, Err! the label is deleted. :)
You need to relabel the conversation. The engineer has optimized the logic of associating the label with the first mail of the conversation. So when thats gone, the label vanishes. Instead, it should associated with a conversation or all mails in the conversation. Or add a condition
if(message.isFirst() && labeled == true && conversation.isNextAvail())
conversation.getNext Message().label = message.label;
You can follow any progress on this from here.