This theorem states that, if $(M_n)_{n\geq0}$ is a supermartingale with $\sup_n E[M_n^-]<\infty$, then, almost surely, there exists $M_{\infty}:=\lim_n M_n$ and $|M_{\infty}|<\infty$.
My question is how we know that $M_{\infty}$ is a random variable, that is, measurable. Do we need the underlying probability space $(\Omega,\mathcal{F},P)$ to be complete?
For instance, if I define $Y:\Omega\rightarrow\overline{\mathbb{R}}$ with $Y=\limsup_n M_n$, then $Y$ is indeed measurable and $Y=M_{\infty}$ almost surely. So we have a measurable "version" of $M_{\infty}$, right?
You're correct. More precisely, defining the random variable $Y$ as you have, it is then true that $Y(\omega)=\lim_nM_n(\omega)$ for almost every $\omega\in\Omega$. $M_\infty$ is not unambiguously defined, because the convergence of $M_n$ is only almost sure.