why is final state of Readunique not fixed to UD?

as far as I understand, ReadUnique results from store instruction execution, which gets cacheline missed in local cache from peer core's cache or memory. After ReadUnique finishes, the write data is stored into new cacheline and its state transitions to UD. But as per CHI SPEC shown as below,  the final state is UC if not PASS DIRTY or UD if PASS DIRTY. it seems like the data store is not taken into account.

why?