steps.step
utvärderas till en array av strängar i det här fallet ["s1", "s2"]
. Den vanliga $lookup
stöder sådan jämförelse och gör $in
bakom kulisserna.
I ditt andra exempel använder du $expr
så du måste använda uttrycksspråk och därför måste du använda $in operatör:
$expr: { $in: ['$_id', '$$stepId'] }