There's a minor problem that can become annoying when we migrate the top level nodes such as conf mode "protocols" or op mode "show" to the new style.
Since we want to be able to keep definitions in separate files, a file for say BGP will be like:
<interfaceDefinition> <node name="protocols"> <children> <tagNode name="bgp" ...
The convertors will cheerfully overwrite existing node.def's, so if the BGP file is processed after the file that defines the "protocols" node, its original node.def with correct help strings will be overwritten with an empty one, killing the top level completion help.
Not overwriting files if they exist seem to be the simplest solution to this.