Parameter type must not include a type variable or wildcard: java.util.Map<java.lang.String, ?>
https://github.com/square/retrofit/issues/3275#issuecomment-571335466
Would like a solution that does not involve adding the ignore rule. Can we consider a proper fix.
This is a limitation of Kotlin, or you can use HashMap<String, Any> instead.
@DavidCorrado you could use a library like qs-kotlin to pre-serialize your data.
For example, you could take your Map<String, Any> (with ints, strings, etc.) and let qs-kotlin turn it into a URL-encoded query string. It handles mixed-type maps and nested structures gracefully.
You’d then supply that encoded string to the request (e.g., as an @Url for a GET, or as the body for a form POST). This way, you avoid the wildcard type issue  because Retrofit itself no longer sees a generic Map or complex List – you’re only passing a simple string that qs-kotlin produced.