Dagster · API Governance Rules

Dagster API Rules

Spectral linting rules defining API design standards and conventions for Dagster.

5 Rules error 2 warn 3
View Rules File View on GitHub

Rule Categories

dagster

Rules

warn
dagster-info-contact
API info should provide a contact for the Dagster project.
$.info
error
dagster-asset-key-required
Materialization, check, and observation request bodies must require asset_key.
$.components.schemas[?(@property == 'AssetMaterialization' || @property == 'AssetCheck' || @property == 'AssetObservation')]
error
dagster-check-severity-enum
Asset check severity must be limited to WARN or ERROR.
$.components.schemas.AssetCheck.properties.severity
warn
dagster-operation-tags
Every operation should be tagged with Materializations, Checks, or Observations.
$.paths[*][*]
warn
dagster-cloud-token-scheme
API should declare a Dagster-Cloud-Api-Token security scheme.
$.components.securitySchemes

Spectral Ruleset

Raw ↑
extends:
  - spectral:oas
rules:
  dagster-info-contact:
    description: API info should provide a contact for the Dagster project.
    given: $.info
    severity: warn
    then:
      field: contact
      function: truthy
  dagster-asset-key-required:
    description: Materialization, check, and observation request bodies must require asset_key.
    given: $.components.schemas[?(@property == 'AssetMaterialization' || @property == 'AssetCheck' || @property == 'AssetObservation')]
    severity: error
    then:
      field: required
      function: truthy
  dagster-check-severity-enum:
    description: Asset check severity must be limited to WARN or ERROR.
    given: $.components.schemas.AssetCheck.properties.severity
    severity: error
    then:
      field: enum
      function: truthy
  dagster-operation-tags:
    description: Every operation should be tagged with Materializations, Checks, or Observations.
    given: $.paths[*][*]
    severity: warn
    then:
      field: tags
      function: truthy
  dagster-cloud-token-scheme:
    description: API should declare a Dagster-Cloud-Api-Token security scheme.
    given: $.components.securitySchemes
    severity: warn
    then:
      field: DagsterCloudToken
      function: truthy