Validation
Schema Definition Validation
Pure validation logic for _schema.yml / _schema.json files.
Validates syntax, structure, and semantic correctness of extension schema definition files. Returns an array of findings with severity levels.
Interfaces
Type Aliases
Functions
Schema-Derived Constants
Derives validation constants and completion metadata from the
JSON Schema meta-schema (extension-schema.json).
All derivation runs once at module load time.
Variables
Functions
allowedSetsFor
TypeScript
function allowedSetsFor(version): object;Defined in: packages/schema/src/validation/schema-derived.ts:74
Look up the allowed-property sets for a given schema version.
Parameters
| Parameter | Type |
|---|---|
version |
"v1" | "v2" |
Returns
object
fieldDescriptor
TypeScript
fieldDescriptor: ReadonlySet<string>;shortcodeEntry
TypeScript
shortcodeEntry: ReadonlySet<string>;topLevel
TypeScript
topLevel: ReadonlySet<string>;validateSchemaDefinition
TypeScript
function validateSchemaDefinition(content, format): SchemaDefinitionFinding[];Defined in: packages/schema/src/validation/schema-definition.ts:61
Validate a schema definition file and return all findings.
Parameters
| Parameter | Type | Description |
|---|---|---|
content |
string |
Raw file content (YAML or JSON string). |
format |
"json" | "yaml" |
File format: “yaml” or “json”. |
Returns
Array of validation findings.
validateSchemaDefinitionStructure
TypeScript
function validateSchemaDefinitionStructure(parsed): SchemaDefinitionFinding[];Defined in: packages/schema/src/validation/schema-definition.ts:117
Validate the structure and semantics of a parsed schema definition.
Parameters
| Parameter | Type | Description |
|---|---|---|
parsed |
unknown |
The parsed YAML/JSON object. |
Returns
Array of validation findings.
validateSchemaDefinitionSyntax
TypeScript
function validateSchemaDefinitionSyntax(content, format):
| {
error: SchemaDefinitionFinding[];
}
| {
error: null;
parsed: unknown;
};Defined in: packages/schema/src/validation/schema-definition.ts:76
Validate syntax of a schema definition file.
Parameters
| Parameter | Type | Description |
|---|---|---|
content |
string |
Raw file content. |
format |
"json" | "yaml" |
File format. |
Returns
| { error: SchemaDefinitionFinding[]; } | { error: null; parsed: unknown; }
Either an error array or the parsed object.
SchemaDefinitionFinding
Defined in: packages/schema/src/validation/schema-definition.ts:31
A single validation finding from schema definition analysis.
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
code |
string |
Machine-readable code identifying the check. | packages/schema/src/validation/schema-definition.ts:37 |
column? |
number |
Zero-based column number (when available from syntax errors). | packages/schema/src/validation/schema-definition.ts:41 |
keyPath? |
string |
Dot-separated key path to the problematic location. | packages/schema/src/validation/schema-definition.ts:43 |
line? |
number |
Zero-based line number (when available from syntax errors). | packages/schema/src/validation/schema-definition.ts:39 |
message |
string |
Human-readable description of the issue. | packages/schema/src/validation/schema-definition.ts:33 |
severity |
SchemaDefinitionSeverity |
Severity level. | packages/schema/src/validation/schema-definition.ts:35 |
SchemaDefinitionSeverity
TypeScript
type SchemaDefinitionSeverity = "error" | "warning" | "information";Defined in: packages/schema/src/validation/schema-definition.ts:26
Severity level for a schema definition finding.
ALLOWED_FIELD_PROPERTIES
TypeScript
const ALLOWED_FIELD_PROPERTIES: Set<string>;Defined in: packages/schema/src/validation/schema-derived.ts:52
Allowed properties on a v1 field descriptor (both camelCase and kebab-case).
ALLOWED_FIELD_PROPERTIES_V2
TypeScript
const ALLOWED_FIELD_PROPERTIES_V2: Set<string>;Defined in: packages/schema/src/validation/schema-derived.ts:68
Allowed properties on a v2 field descriptor (camelCase only).
ALLOWED_SHORTCODE_KEYS
TypeScript
const ALLOWED_SHORTCODE_KEYS: Set<string>;Defined in: packages/schema/src/validation/schema-derived.ts:58
Allowed top-level keys inside a v1 shortcode entry.
ALLOWED_SHORTCODE_KEYS_V2
TypeScript
const ALLOWED_SHORTCODE_KEYS_V2: Set<string>;Defined in: packages/schema/src/validation/schema-derived.ts:71
Allowed top-level keys inside a v2 shortcode entry.
ALLOWED_TOP_LEVEL_KEYS
TypeScript
const ALLOWED_TOP_LEVEL_KEYS: Set<string>;Defined in: packages/schema/src/validation/schema-derived.ts:49
Allowed top-level keys in a v1 schema definition file.
ALLOWED_TOP_LEVEL_KEYS_V2
TypeScript
const ALLOWED_TOP_LEVEL_KEYS_V2: Set<string>;Defined in: packages/schema/src/validation/schema-derived.ts:65
Allowed top-level keys in a v2 schema definition file.
ALLOWED_TYPES
TypeScript
const ALLOWED_TYPES: Set<string>;Defined in: packages/schema/src/validation/schema-derived.ts:55
Allowed type values for a field descriptor (same in v1 and v2).
fieldDescriptorMetadata
TypeScript
const fieldDescriptorMetadata: object;Defined in: packages/schema/src/validation/schema-derived.ts:156
Type Declaration
booleanProperties
TypeScript
booleanProperties: Set<string>;nestedProperties
TypeScript
nestedProperties: Set<string>;propertyDocs
TypeScript
propertyDocs: Record<string, string>;shortcodeArgumentOnly
TypeScript
shortcodeArgumentOnly: Set<string>;snippetOverrides
TypeScript
snippetOverrides: Record<string, string>;valueTriggerProperties
TypeScript
valueTriggerProperties: Set<string>;rootKeyMetadata
TypeScript
const rootKeyMetadata: object;Defined in: packages/schema/src/validation/schema-derived.ts:208
Type Declaration
propertyDocs
TypeScript
propertyDocs: Record<string, string>;SCHEMA_META_SCHEMA
TypeScript
const SCHEMA_META_SCHEMA: Record<string, unknown> = metaSchema;Defined in: packages/schema/src/validation/schema-derived.ts:41
SCHEMA_META_SCHEMA_V2
TypeScript
const SCHEMA_META_SCHEMA_V2: Record<string, unknown> = metaSchemaV2;Defined in: packages/schema/src/validation/schema-derived.ts:42
shortcodeEntryMetadata
TypeScript
const shortcodeEntryMetadata: object;Defined in: packages/schema/src/validation/schema-derived.ts:184
Type Declaration
nestedProperties
TypeScript
nestedProperties: Set<string>;propertyDocs
TypeScript
propertyDocs: Record<string, string>;snippetOverrides
TypeScript
snippetOverrides: Record<string, string>;