Asp.NET MVC AjaxOptions OnSuccess é acionado ... muito cedo?

Eu gostaria de usar a opção OnSuccess de AjaxOptions passado como argumento Ajax.BeginForm para "fazer algo" uma vez que a resposta é completamente recebida e DOM atualizado. Tanto quanto eu posso entender do MSDN, isso é o que esta opção faz.

No meu aplicativo, o script OnSuccess é acionado cedo demais, imediatamente após o envio da solicitação. Eu ponho para dormir o fio por um tempo, para ver melhor o resultado. Eu deveria ver o script OnSuccess (um alerta) disparado após o tempo de sono, digamos, 2 segundos. Eu uso o Firebug para ver o que está acontecendo sob o capô, e tudo que vejo é: clico no botão (enviar dentro do formulário ajax), alerta é mostrado (2 segundos antes do esperado), após 2 segundos o firebug mostra o pedido-resposta e nada mais acontece.

Onde eu estou errado?

Agradecemos antecipadamente, mt

Algum exemplo de código, como corretamente solicitado (eu comecei uma nova solução em branco usando o modelo Asp.NET MVC no VS):

Home / Visualização de índice:

<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">
<div id="divPlaceholder">
<% 
    using (Ajax.BeginForm("DoLongTask", "Home", 
    new AjaxOptions() {
        UpdateTargetId = "divPlaceholder", 
        InsertionMode = InsertionMode.Replace,
        OnSuccess = "alert('onsuccess fired')"
    })) 
{
%>
<input type="submit" value="button" />
<% } %>
</div>
</asp:Content>

HomeController

public ActionResult DoLongTask()
{
    if (Request.IsAjaxRequest())
    {
        System.Threading.Thread.Sleep(2000);
        return View();
    }
    else
    {
        throw new NotSupportedException();
    }
}

Eu acho que isso é suficiente para reproduzir o comportamento. Uma vista parcial vazia pode ser usada como vista DoLongTask.

questionAnswers(5)

yourAnswerToTheQuestion