It only makes sense to branch off production for hotfixes IMO.
In your example feature-B shouldn't have made it to dev.
In your example feature-B shouldn't have made it to dev.
For some projects though this is a bit overkill and if you don't think this is important chances are you can get away with something more akin to the branching model rorykoehein posted.