Hi,
you can prevent status change using condition which can defined on status transition form.
condition could be:
send_wait(0, top_object(), "call_attr", "cr_wf", "sync_fetch", "STATIC", format("cr = '%s' AND status = 'PEND'", persistent_id), -1, 0);
if (msg[1] == 0) {
set_return_data(TRUE);
else
set_return_data(FALSE);
Please notice: I haven't test env with Request Tasks, so I'm not sure how related attribute for request ticket named.
Hope this helps.