have migration helpers use adapters for adapter-specific behavior