Take an example of a following skeleton of a pipeline.
# Example
definitions:
step:
- step: &RunFlake
name: Run Flake
runs-on:
- self.hosted
- windows
script:
- git config --global core.autocrlf input
- git config --global --add safe.directory '*'
- git lfs pull
- step: &GenerateExe
name: Generate Exe
runs-on:
- self.hosted
- windows
script:
# Run your commands inside the Docker container
- git config --global core.autocrlf input
- git config --global --add safe.directory '*'
- git lfs pull
- step: &BumpRevision
name: Bump Revision
runs-on:
- self.hosted
- windows
script:
# Run your commands inside the Docker container
- git config --global core.autocrlf input
- git config --global --add safe.directory '*'
- git lfs pull
pipelines:
default:
parallel:
- step: *GenerateExe
- step: *RunFlake
branches:
develop:
- step: *GenerateExe
- step: *BumpRevision
When i put this into the Bitbucket Pipelines - Validator
It shows it as valid.

This pipeline is not valid. As when we run it the bitbucket runner throws the error as below:

The correct syntax for the parallel is as follows:
pipelines:
default:
- parallel:
- step: *GenerateExe
- step: *RunFlake
branches:
develop:
- step: *GenerateExe
- step: *BumpRevision
Notice the hypen at the front of the parallel. So is it that the validator for the pipeline cannot be trusted??