### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

I'm executing a state machine using the following definition:

```json
{
  "StartAt": "Parallel",
  "States": {
    "Parallel": {
      "Type": "Parallel",
      "Next": "Unreachable",
      "Branches": [
        {
          "StartAt": "Fail",
          "States": {
            "Fail": {
              "Type": "Fail"
            }
          }
        }
      ]
    },
    "Unreachable": {
      "Type": "Pass",
      "Parameters": {
        "UnreachableOutput": true
      },
      "End": true
    }
  }
}
```

The execution is a success with the following output:

```json
{
   "UnreachableOutput": true
}
```

### Expected Behavior

The execution should fail.

On AWS executing a state machine using the provided definition results in an error. The execution should fail before reaching the state named `Unreachable` because an error occurred in one of the branches of the preceding Parallel state.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

Create and execute a state machine using the provided definition.

### Environment

```markdown
- LocalStack: 3.0.3.dev20231207105008
```


### Anything else?

_No response_
def __init__(self, programs: list[Program]):
        self.programs: Final[list[Program]] = programs
    def _eval_body(self, env: Environment) -> None:
        
        latch: Final[CountDownLatch] = CountDownLatch(len(self.programs))
        
        input_val = env.stack.pop()
        worker_pool: list[ProgramWorker] = list()
        for program in self.programs:
            
            env_frame: Environment = env.open_frame()
            env_frame.inp = input_val
            
            worker = ProgramWorker()
            worker.eval(program=program, env_frame=env_frame, latch=latch)
            worker_pool.append(worker)
        latch.wait()
        result_list = list()
        for worker in worker_pool:
            env_frame = worker.env_frame
            result_list.append(env_frame.inp)
            env.close_frame(env_frame)
        env.stack.append(result_list)