How about using the respond option from driver. Like you can start the sequenceItem from your sequence, and wait for driver respond transaction.
When DUT write_enable become high, driver will create a respond ans send it to corrsponding sequence. After that the sequence will randomize the transaction and send to driver.
Thanks
Hayk