The crm_setup widget was the 2nd widget on the CRM home, rendered to every
CRM user even when complete ("Nothing to do"), and carried a provider row
(Email delivery: sends through the email qbit). That is system/config content
on a business home.
- crm_setup now requires crm.manage (the permission guarding the CRM Settings
tables) via widget rules, plus CrmSetupVisibility, a request-time custom
permission checker (same mechanism as crm_goals) that denies once no
business step is missing. Denied widgets are omitted (DenyBehavior.HIDDEN)
from metadata and render.
- Removed the Email delivery row; the checklist is business setup only.
- Help text updated.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>