Hi,
I'm not sure if you've received any response, but I see two possible solutions:
* create a separate job in Jenkins for these merges, subscribe to the "code review approved" events from Github and work from that
* in the pipeline, create an "infinite loop" with some sensible upper limit (like 3 days) to wait for the code review to happen, check the PR state in a loop and then sleep some minutes to save computational power and when the PR is approved,
do the merge. Or if the time limit is up, exit the job with failure.
Both of them have advantages and disadvantages: the second one is more aligned with the "1 job for 1 PR" idea, but the waiting in loop wastes computational power and also keeps agents reserved. In this regard the first one is much better, but
then the testing and merging actions are done by separate jobs.
I don't know technical details about how to implement these since I don't use the Github plugin, but I hope these ideas help.
BR,
Laszlo