Issue with supportedAttributes - returns different results under simulator and for OAuth

I would like to run some sanity checks here.

I am noticing that supportedAttributes returns different results when executed under Simulator vs Oauth App initialization.

For example when I run :

log.debug “d01.supportedAttributes: ${d01.supportedAttributes}”
(where d01 is my SINGLE device variable)

I get :
OAUTH : d01.supportedAttributes: [[switch, power, checkInterval]]
SIMULATOR: d01.supportedAttributes: [switch, power, checkInterval]

Notice that under SIMULATOR the result is a single list of attributes and under OAUTH app it is a double list (list of list of attributes)

The documentation states that supportedAttributes should return a list of attributes

Is it something that I am doing wrong or it is a “feature/bug” of the platform that I need to take into consideration.


going down the rabbit hole I am discovering that the issue is cause by a difference between “simulator” and production SmartThings code base running groovy.

A simple
log.debug “${d01}” produces different results
under SIMULATOR it produces : Outlet
Production OAuth app produces: [Outlet]

Can someone confirm the bug before I report it to the support team ?

You’ll save yourself a lot of headaches if you test by installing the SmartApp and using virtual devices instead of using the Simulator.

Even ST employees acknowledge that the simulator doesn’t work correctly.

Many thanks for the tip!