How about not having the info about what is available at each stage in each entity, but using a list of what is available that is changed for each stage?
Having fully scriptable entities would be awesome, but it should be intuitive and easy to edit too. For example instead of having something obscure like 'out_link=true' for repeater, instead have all the requirements listed for each buildable, and just have rep require NOT being in power range. If possible avoid creating new commands/variables/whatever, and make it as generic as possible, like a way to check if there is a specific buildable (which could be RC or even armoury) with same team as the player trying to build. And perhaps have team for a buildable taken from the player who built it, not set in the script

IMO modelindex should point to the .md3. Grouping related info together would also help, like mins & maxs -> bbox {-50, -50, -50} {50, 50, 50}, and having that and modelindex right after name & info.
Possibly have different states for entities, especially buildables, like when placed, it spawns with 10 hp and starts regenerating, has different shader etc; after a delay changes state to finished, has regen set to 0, plays spawn animation, becomes usable. If hp goes to 0, changes state to dying and after x sec blows up and is removed from the game.
Having some way to copy/import variables/state from another script would help group together common stuff.