È perché \b corrisponde solo se è presente un carattere parola su entrambi i lati. Nel tuo caso, il \b è racchiuso da un carattere spazio e da una parentesi aperta/chiusa, nessuno dei quali è un carattere "parola". Pertanto il \b corrispondenza non riuscita.
Potresti fare
\\b0aef4666-3627-4c24-8e50-b0cf9a723823\\b
che corrisponderà a \b perché ora è su un confine di parole.
In alternativa, puoi confrontare uno spazio OPPURE inizio/fine riga:
db.test.find({"text": /(^|\s)\(0aef4666-3627-4c24-8e50-b0cf9a723823\)($|\s)/i} )