I just went through a lot of trouble debugging this in one of our own applications and made a YouTube video about it, but TL;DR; .NET Aspire 9.4 will front-run the OTEL_EXPORTER_OTLP_ENDPOINT and overwrite it with its own dashboard OTLP ingestion endpoint at the last minute, even though it looks like it's set correctly inside the .NET Aspire resources view in the first place.
Tested that issue with this repo (which inspired ours) and with ours here: https://github.com/petabridge/Petabridge.Phobos.Web
https://www.youtube.com/watch?v=dCKyNCdtaVc