Carnegie Mellon University · API Governance Rules

Carnegie Mellon University API Rules

Spectral linting rules defining API design standards and conventions for Carnegie Mellon University.

6 Rules error 4 warn 1 info 1
View Rules File View on GitHub

Rule Categories

cmu

Rules

error
cmu-schema-id
Every schema declares a resolvable $id.
$
error
cmu-schema-dialect
Every schema declares its dialect via $schema.
$
error
cmu-schema-title
Every schema carries a title.
$
warn
cmu-schema-description
Every schema carries a description explaining what it models.
$
error
cmu-schema-provenance
Every schema carries x-provenance naming its method and operator, because none of these were published by CMU.
$
info
cmu-schema-property-descriptions
Top-level properties should be described, not just typed.
$.properties[*]

Spectral Ruleset

Raw ↑
---
# authorship: API Evangelist tooling. Not published by Carnegie Mellon University.
x-generated: '2026-08-19'
x-method: derived
x-source: >-
  json-schema/carnegie-mellon-university-delphi-epidata-envelope.json,
  json-schema/carnegie-mellon-university-cert-vulnerability-note.json
# Spectral ruleset for the JSON Schema documents derived from CMU-operated surfaces.
extends: []
rules:
  cmu-schema-id:
    description: Every schema declares a resolvable $id.
    severity: error
    given: $
    then:
      field: $id
      function: truthy
  cmu-schema-dialect:
    description: Every schema declares its dialect via $schema.
    severity: error
    given: $
    then:
      field: $schema
      function: truthy
  cmu-schema-title:
    description: Every schema carries a title.
    severity: error
    given: $
    then:
      field: title
      function: truthy
  cmu-schema-description:
    description: Every schema carries a description explaining what it models.
    severity: warn
    given: $
    then:
      field: description
      function: truthy
  cmu-schema-provenance:
    description: >-
      Every schema carries x-provenance naming its method and operator, because none of these
      were published by CMU.
    severity: error
    given: $
    then:
      field: x-provenance
      function: truthy
  cmu-schema-property-descriptions:
    description: Top-level properties should be described, not just typed.
    severity: info
    given: $.properties[*]
    then:
      field: description
      function: truthy