arazzo-structure
arazzo-structure checks the workflow document against the Arazzo specification. Required fields, allowed values, correct types. The boring stuff that everything else depends on.
Why did this violation appear?
The document is missing something Arazzo requires, or contains a value Arazzo does not allow.
Bad example
arazzo: 1.0.1
info:
title: Read a pet
version: '1.0'
description: Retrieve a pet from the API.
summary: Read a pet.
sourceDescriptions:
- name: api
url: api.yaml
type: openapi
workflows:
- workflowId: readPet
description: Retrieve a pet.
summary: Read a pet.
A workflow with no steps isn’t a workflow.
Good example
arazzo: 1.0.1
info:
title: Read a pet
version: '1.0'
description: Retrieve a pet from the API.
summary: Read a pet.
sourceDescriptions:
- name: api
url: api.yaml
type: openapi
workflows:
- workflowId: readPet
description: Retrieve a pet.
summary: Read a pet.
steps:
- stepId: read
description: Call the read operation.
operationId: $sourceDescriptions.api.read
How do I fix this violation?
Go to the path vacuum reports and add the missing field, or correct the value. The message names the exact property.
When the structure is broken, vacuum can’t safely run the deeper checks. You will also see an arazzo-validation-incomplete warning. Fix the structure first and it goes away.
This rule reports findings from vacuum’s shared Arazzo validation pass, using the arazzoDocument function.
