The behavior of setting default subtypes for a geodatabase feature class appears inconsistent. When adding codes manually in the subtypes table, it appears that the first code added automatically becomes the default, which can then be changed as new codes are added.
Initial subtype automatically becomes the default.
Default can be changed, but not removed.
However, when using the geoprocessing tools "Set Subtype Field" followed by "Add Subtype" to do the same thing, a default subtype is not automatically applied. The outcome of using the toolbox interface or ArcPy seems the same.
No default subtype automatically applied.
Then, once a default subtype is chosen, either using the "Manage Subtypes" window OR the "Set Default Subtype" tool (the GUI or ArcPy), it can't be removed without completely clearing the subtype and starting over (unless there is a "Remove Default" that I cannot find).
My question is, "why?" If a feature class can seemingly exist without a default subtype defined, why can't an existing default be removed? Why does the "Manage Subtypes" window automatically assign one, while the geoprocessing tool does not? What is the expected behavior here, and perhaps also, what is best practice?