Help with Groovy Maps - Changing class types - "Bug" or "Feature (not)"

I have a groovy question / issue that I'd appreciate some help on.

I've been working with some map objects and am finding an odd code behavior. At least odd to me!

Consider the simple device code example below. All it does is set up two maps. One called "FIRST_MAP" defined using @Field Map, and a second "mapTest" that gets defined within the configure() function.

If I execute the configure function, the results show that both the key and value for each entry have a class type of Integer:

If I later execute the initialize() function, the class type of the key in mapTest changes to string, though the value class type stays as Integer. Why the change to the class type of the key? That makes no sense to me! Note that the class type of keys/values in FIRST_MAP don't change (which is what I expected).

/*
*	Testing a Map function
*/

import groovy.transform.Field

metadata {
    definition (name: "Map Function Tester", namespace: "jvm", author:"jvm") 
	{
        capability "Configuration"
		capability "Initialize"	
    }
}

@Field  Map FIRST_MAP =[ 10:101, 11:102 ]

void  configure()
{
    state.remove("mapTest")
	state.mapTest = [0:0]
	state.mapTest[1] = 1
    
    FIRST_MAP.each{key, value -> 
        log.debug "FIRST_MAP  values in Configuration key: key ${key}, key class ${key.class}, value ${value}, value class ${value.class}"
    }
	
	state.mapTest.each{key, value -> 
        log.debug "mapTest values in Configuration key: key ${key}, key class ${key.class}, value ${value}, value class ${value.class}"
    }
    
}

void  initialize()
{
    FIRST_MAP.each{key, value -> 
        log.debug "FIRST_MAP  values in initialize key: key ${key}, key class ${key.class}, value ${value}, value class ${value.class}"
    }
	
	state.mapTest.each{key, value -> 
        log.debug "mapTest values in initialize key: key ${key}, key class ${key.class}, value ${value}, value class ${value.class}"
    }
}