I am new to 5G but would like to share my understanding on reflective QoS. In LTE, quality of service is implemented at the bearer level while in 5G, it is implemented at IP flow level. In 5G, an IP flow can be served with different QoS on dynamic basis. Just to avoid signalling between 5G devices and Network for the QoS change, reflective QoS comes into picture. Where Service Data Adaptation Layer (SDAP) plays a major role.
SDAP sits on top of PDCP layer to map different QoS Flows to data radio bearers. Whenever there is a change in QoS Flow at network side, it informs to gNB using the SDAP header and gNB forwards the information to 5G device at it is, based on received DL packet, 5G device derives the QoS rule with new QFI.
As per my understanding, QoS flows first changes at core network and then at UE side, that's why DL packet with the updated QFI will be received. There is no chance of QFI update first for UL packet.