Component Asyncapi Message Require Title
component-asyncapi-message-require-title
info
experience: documentation
spec: components
Message should declare a title.
Messages should declare a human-readable title.
Rule definition
The full Spotlight rule — drop it into a ruleset (.spotlight.yaml / .spectral.yaml) and run it with any Spotlight tool.
component-asyncapi-message-require-title:
title: Component Asyncapi Message Require Title
reference: https://spotlight-rules.com/spec/rules/asyncapi/component-asyncapi-message-require-title/
description: Messages should declare a human-readable title.
message: Message should declare a title.
given: $.components.messages[*]
severity: info
then:
field: title
function: truthy
tags:
- format:asyncapi
- spec:components
- experience:documentation
prompt: "You are editing an AsyncAPI document to satisfy the Spotlight API
governance rule 'component-asyncapi-message-require-title' (Component
Asyncapi Message Require Title). Requirement: Messages should declare a
human-readable title. To fix: Ensure `title` is present and non-empty at
each matching location. This rule is evaluated at the JSONPath
`$.components.messages[*]` — inspect every location it matches and correct
only what violates the rule. Make the smallest change that satisfies the
rule, leave all unrelated content, key order, comments, and formatting
unchanged, and keep the document valid AsyncAPI. Return only the complete
corrected document, with no commentary."
AI fix prompt — send this to Claude, Gemini, or ChatGPT with your artifact to auto-fix this rule
You are editing an AsyncAPI document to satisfy the Spotlight API governance rule 'component-asyncapi-message-require-title' (Component Asyncapi Message Require Title). Requirement: Messages should declare a human-readable title. To fix: Ensure `title` is present and non-empty at each matching location. This rule is evaluated at the JSONPath `$.components.messages[*]` — inspect every location it matches and correct only what violates the rule. Make the smallest change that satisfies the rule, leave all unrelated content, key order, comments, and formatting unchanged, and keep the document valid AsyncAPI. Return only the complete corrected document, with no commentary.
| Artifact | AsyncAPI |
|---|---|
| Applies at (given) | $.components.messages[*] |
| Severity | info — educational by default; raise to warn/error to enforce |
| Reference | https://spotlight-rules.com/spec/rules/asyncapi/component-asyncapi-message-require-title/ |