O que inngest-steps faz?
Use ao implementar atrasos que devem sobreviver a reinicializações de processo (ex.: abandono de carrinho por 24 horas, follow-ups agendados), espera por aprovação humana ou eventos externos com timeouts (portões de revisão, callbacks de webhook, conclusão de API assíncrona), polling de serviços externos sem perder estado em falhas, chamada de outras funções e aguardo de seus resultados, memoização de operações caras para que não sejam reexecutadas em retentativas, ou execução de trabalho assíncrono em paralelo dentro de um workflow. Abrange os métodos de etapa do Inngest: step.run, step.sleep, step.waitForEvent, step.waitForSignal, step.sendEvent, step.invoke, step.ai, além de padrões para loops e execução paralela.