99+% of our servers are in one of the following states: Live, Build, Inactive, or Retiring. Everything else is a mixture of real states (Reserved, Retired, Pending Refresh, Available) and several make believe states (read Dirty Data). We drop Servers in Build, Reserved, Retired, and the illogical ones and flow the rest though allocations.
We don't have a maintenance status but my first instinct would be to keep them out of allocations until they move back into service. I guess that would depend on what percentage of the fleet they make up.
Our equivalent of your Pending Decommission is Retiring and we do keep them in until they are really gone.