LNURLw attempts to pay the invoices synchronously, waits for the payment to compete and only after that returns HTTP response. See api_lnurl_callback().
What results in a bad UX if a payment takes longer than http request timeout: the http calls times out, but then the payment arrives.
Such behavior does not conform LUD-03:
LN SERVICE sends a [...] JSON response and then attempts to pay the invoices asynchronously.