- Extract placeWidgetAsync into a standalone function with a
PlaceWidgetContext parameter for clearer state management.
- Fix widget skip logic: use config?.skip instead of !config || config.skip
so integration-specific widgets without an explicit defaultWidgetConfigs
entry are still placed with default 2x2 sizes.
- Add createIntegration mutation for onboarding (no app linking or
search engine creation needed during init).
- Fix nextOnboardingStepAsync call: pass undefined instead of "start"
to advance naturally without resetting to the beginning.
- Add early return when no board is found in setupIntegrations.