Hi Nicholas,
Thanks for your replies and clarification. I hope my reply here isn't too long, but I'd like to address all that's related to this:
1. When I read your original question/description, I didn't realize you are interested in previous snapshots. Your original question suggested you are using LBAPI, but made it seem that you're interested in current stories.
2. You're correct WS-API is only giving you the current state. So you can use that to distinguish between stories with PlanEstimate that's unset vs. that is set to '0'.
3. I did work a quick reproduction of this. I am finding that you are correct where you say that LBAPI indeed is showing '0' as the value of PlanEstimate for both unset, never-set and also those who have been explicitly set to '0'. I can't find it says '0.0' , I can only see it always reads '0'. See an excerpt below where snapshot 14 was unset, snapshot 15 was explicitly set to '0', snapshot 16 was then set to '34', then snapshot 17 was unset again. You can see '0' in all these snapshots (other than #16).
4. Personally, when I'm coming to think of it, I'm unsure it's wrong of LBAPI to tag unset PlanEstimate as '0'. I guess this field is mainly used for calculations and stats and mostly an unset value should suggest it be calculated as '0'. I believe it's for a reason.
I guess with all that in mind, I have two questions:
a. Why do you have teams that explicitly set it to '0'. What does it mean to you that it's '0' vs. unset? What's the actual difference?
b. Considering in you last update you are suggesting you'd like to read the history of this value and not only the current (which WSAPI will help): Can you tell us more on what you're trying to accomplish, what is the type of data you're trying to collect, what is the calculation you're trying to do?
I'm asking to see if we can find an alternative for you to get it done.
While I can check with Engineering on this, my feeling is that it's set to '0' in LBAPI for a reason and I'm not too sure we'll be able to change it.
Sagi