Registers CRM role subtabs into PhoenixKit.Dashboard.Registry under the
namespace :phoenix_kit_crm_roles.
Invoked twice:
- At boot via the
PhoenixKit.Module.children/0callback as a one-shotTask(restart: :temporary). - After every
PhoenixKitCRM.RoleSettings.set_enabled/2call, throughPhoenixKitCRM.refresh_sidebar/0.
Known limitation
PhoenixKit.Dashboard.Registry.load_admin_defaults/0 wipes
runtime-registered namespaces, including :phoenix_kit_crm_roles. If the
host app ever invokes it at runtime, CRM role subtabs will disappear
until the next set_enabled/2 call or application restart. This is an
accepted trade-off for avoiding a persistent watcher GenServer.