231a4e00f6
Pure move. SmartHomeConfig, its two refresh constants, the smarthome.Config mapper, and the normalise and validate arms now sit together. The provider check moves inside validateSmartHome, where the block it rejects is visible. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>