- it is a hardcoded template for role
- it tells what role is intended to be used for
- it is used during upgrades when adding defaults for new capabilities - no archetype == no new capability during upgrade
- it is used during reset reset to determine the defaults - no archetype == reset removes all capabilities
No archetype used:
- custom roles used for overrides
- admin wants to specify new capabilities after upgrade manually
default registered user role - the only archetype that makes sense is the 'user' archetype, this is intended for site level tweaks. There should be only one 'user' archetype role in all systems. This archetype is used during upgrades, we add new caps to it in access.php during upgrades. Systems that want to control everything 100% without our upgrades can remove the archetype completely. Some upgraded sites may not have this role at all, some might be still using archetype. There is absolutely no way teacher, manager, student, editing teacher or course creator could be used in this settings because it would not simply work.
guest role - you do not ever want all guests to be managers or teachers, right? If you really do create a custom role without archetype for this hack.
creator role - no sense to add creator role here, or guest or user because this is intended to allow creators to modify newly created courses.
frontpage role - again only the frontpage role archetype tells us what are the expected capabilities for this role