Devi usare questa query (apparentemente equivalente):
db.mycollection.update({"sessions.0.issues": {$elemMatch: {id: <yourValue>}}}, {$set: {"sessions.0.issues.$.text": "newText"}})
Nota che la tua espressione di aggiornamento era corretta.
Maggiori informazioni su $elemMatch
.
A proposito, il riferimento MongoDB esplicita che l'operatore $ non funziona "con query che attraversano array nidificati".
Importante :$elemMatch
funziona solo con la versione 4 o successiva.