Change feature source metadata from Map<String, Object> to MetadataMap so it's more clear what metadata is required here