You declare that $\sigma$ and $\mu$ are both unknow in "real world". Ok, I don't want to refer to any "real" case where the $\sigma$ is known. But in any case where I run t-test, I can set many assumption (not the "hypothesis" in hypothesis testing, the "assumption" used by me is prior on it ) $\sigma_1,\sigma_2,...$ and run z-test. Since the different $\sigma_i$ get different z-test result. I can say that in this $\sigma_i$ assumption, I reject (or not reject) the null hypothesis.
Then I run the z-test on whole $R$, and get partition $R = R_1 \cup R_2, R_1 \cap R_2 = \emptyset$, where $R_1$ include $\sigma_i$ such that cause rejecting null hypothesis and $R_2$ include $\sigma_i$ such that cause not rejecting null hypothesis. I think of that it make sense to obtain the partition. It summary all "If ... then ..." result from any "real" $\sigma_i$. And it are not effected by $\sigma$ estimation error.