trace.transaction is absolutely necessary for dynamic sampling and needs to be set.
- it (and the dsc by extension) needs to follow the freezing rule:
- if a trace is propagated, the dsc needs to be frozen
- if we send a first batch of spans, the dsc cannot change anymore
- this also means that we might send "bad" quality transaction names, and even if we get the better name later, we cannot change it in the dsc