The specification states that without a stepId or workflowId specified the current step will be retried.
retry - The current step will be retried. The retry will be constrained by the retryAfter and retryLimit fields. If a stepId or workflowId are specified, then the reference is executed and the context is returned, after which the current step is retried.
Note the If a stepId or workflowId.
The JSON Schema is specified as follows which is too restrictive:
allOf:
- if:
properties:
type:
enum:
- goto
- retry
then:
oneOf:
- required:
- workflowId
- required:
- stepId
Issue was raised via slack: https://open-api.slack.com/archives/C022K8VD7AP/p1744295143465579