Passing session.props.auth as runScript parameter doesn't seem to work

Unless I'm missing something, these two bindings should be virtually identical, and yet they are returning different results--is there some reason session properties can't be passed as parameters?

Yup. Those should be identical. Looks like a bug to report.

Unless you are somehow inverting the logic in your script

I'm apparently caffeine depleted. You're obviously calling the same function.

Can you show your script, there may perhaps be a way to handle either case.

Log the type() you're getting inside your script. I bet the transform is doing something to the internal map.

Yep, the script transform version shows it as

<type 'com.inductiveautomation.perspective.gateway.script.DotReferenceJythonMap'>

...while the expression version shows:

<type 'java.util.HashMap'>