La siguiente función de paso se ejecuta en aws y cuando falta un parámetro requerido, cancela el flujo y arroja States.Runtime Error. Está en la fase de captura de la función de paso, pero no detecta el error como se indica.
La función de paso definida es la siguiente,
{ "StartAt": "Log Start Step Function", "Comment": "Executed with inputs", "States": { "Log Start Step Function": { "Type": "Task", "Resource": "arn:aws:lambda:eu-west-1:0000000:function:update", "Parameters": { "body": { "itemID.$": "$.itemID", "functionName.$": "$.stepFunctionName ", "executionARN.$": "$$.Execution.Id", "complete": false, "inprogress": true, "error": false } }, "Catch": [ { "ErrorEquals": [ "States.Runtime" ], "ResultPath": "$.taskresult", "Next": "Log Failed Module" }, { "ErrorEquals": [ "States.ALL" ], "ResultPath": "$.taskresult", "Next": "Log Failed Module" } ], "ResultPath": "$.taskresult", "Next": "Evaluate Module PA1" } } } A continuación se muestra la función de paso, 
Y el error arrojado es el siguiente, 
El error de tiempo de ejecución no está ejecutando el módulo de registro fallido.
{ "ErrorEquals": [ "States.Runtime" ], "ResultPath": "$.taskresult", "Next": "Log Failed Module" },¿Es este un error de AWS o hay algún problema con la configuración que se realiza aquí o hay alguna otra forma de validar los parámetros en AWS Step Functions?
De https://docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html
Un error de States.Runtime no se puede recuperar y siempre hará que la ejecución falle . Un reintento o captura en States.ALL no detectará los errores de States.Runtime .
Su máquina de estado espera lo siguiente como entrada:
"Parameters": { "body": { "itemID.$": "$.itemID", "functionName.$": "$.stepFunctionName ", "executionARN.$": "$$.Execution.Id", "complete": false, "inprogress": true, "error": false } },Debe pasarlos cuando comience una nueva ejecución en lugar de:
{ "Comment": "Insert your JSON here" }Que está pasando actualmente porque viene de forma predeterminada como el cuerpo de entrada de una nueva ejecución en la consola de AWS.
Lea más sobre InputPath y parámetros aquí: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html
Tengo el mismo problema.
Estoy empezando a pensar que el error de tiempo de ejecución ocurre cuando se procesa la ruta de entrada y antes de que se pueda inicializar el receptor. Esto significa que no es posible probar / capturar para probar los parámetros presentes en la entrada. También probé ChoiceState, pero fue en vano.
Así que creo que no hay otra solución que proporcionar todos los parámetros a los que se refiere en la definición de la máquina de estado. Pero la documentación no es clara al respecto.