Been mulling setup in general over and have come up with some basics to build on
First is two enitiies that store configuration information.
The first is a GroupEntity that specifies with in a group the componet to work on and the sequence.
The parentID ChildID would allow chaing groups together.
Also if this group is visible to the user. This is so the automated setup are not displayed.
A group would be like Business Setup, GLSetup, System Setup
under the Business Setup group would be chained to
Store Setup group which is chained to ProductStore group.
the above table links to the configuration entity.
Sequnce order for execution
UseService for atutomation
SetupURI to the controller
using the group example above
the ProductStore group
would be linked to the configuration entity for
Entity = website
Field would be WebsiteID
this is use allow the user to select options based on other entities like say Geo code. the service may call many widget forms.->
setupURI = EditWebSite
This would build the configuration web page with a link that opens a secondary window to the /content/control/EditWebSite
once the window is completed it is closed
the user then marks the task completed
this is so if the user if interupted they know where they left off.
The tricky part is to have a service go thru similar to the artifact and find all these and add them to these entities.
for now there will have to be data that builds this table for each componet.
I have this working on my systems. it does not do everthing yet.