{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://triadicframeworks.org/media_substrate_model/analyzer/schema.json",
"title": "Media Substrate Model Analyzer Schema",
"description": "Input and output schema for the Media Substrate Model (MSM) Analyzer.",
"type": "object",
"properties": {
"input": {
"title": "Analyzer Input",
"type": "object",
"properties": {
"vector": {
"$ref": "#/$defs/MediaVector"
},
"metadata": {
"type": "object",
"description": "Optional adapter metadata used to refine analysis.",
"additionalProperties": true
}
},
"required": ["vector"],
"additionalProperties": false
},
"output": {
"title": "Analyzer Output",
"type": "object",
"properties": {
"vector": {
"$ref": "#/$defs/MediaVector"
},
"invariants": {
"$ref": "#/$defs/MediaInvariantState"
},
"basin": {
"$ref": "#/$defs/MediaBasinResult"
},
"mode": {
"$ref": "#/$defs/MediaModeState"
},
"drift": {
"$ref": "#/$defs/MediaDrift"
},
"transition": {
"$ref": "#/$defs/MediaTransition"
}
},
"required": [
"vector",
"invariants",
"basin",
"mode",
"drift",
"transition"
],
"additionalProperties": false
}
},
"required": ["input", "output"],
"additionalProperties": false,
"$defs": {
"MediaVector": {
"title": "MediaVector",
"type": "object",
"description": "Five-axis media physics vector [S, D, A, N, T].",
"properties": {
"S": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Signal Integrity"
},
"D": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Distribution Topology"
},
"A": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Attention Dynamics"
},
"N": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Narrative Coherence"
},
"T": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Temporal Cadence"
}
},
"required": ["S", "D", "A", "N", "T"],
"additionalProperties": false
},
"MediaInvariantState": {
"title": "MediaInvariantState",
"type": "object",
"description": "Strain values for MSM invariants (0.0 aligned, 1.0 broken).",
"properties": {
"signalNarrativeCoherence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"distributionAttentionFit": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"temporalSignalStability": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"attentionNarrativeFeedback": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"signalNarrativeCoherence",
"distributionAttentionFit",
"temporalSignalStability",
"attentionNarrativeFeedback"
],
"additionalProperties": false
},
"MediaBasinResult": {
"title": "MediaBasinResult",
"type": "object",
"description": "Basin classification result.",
"properties": {
"basin": {
"type": "string",
"description": "Identified basin name.",
"enum": [
"Broadcast",
"Network",
"Fragment",
"Cascade",
"Stagnation",
"Reconstruction",
"Unstable"
]
},
"distance": {
"type": "number",
"minimum": 0,
"description": "Distance to canonical basin vector."
},
"gateSatisfied": {
"type": "boolean",
"description": "Whether basin gate conditions were satisfied."
}
},
"required": ["basin", "distance", "gateSatisfied"],
"additionalProperties": false
},
"MediaModeState": {
"title": "MediaModeState",
"type": "object",
"description": "Behavioral mode inside the current basin.",
"properties": {
"mode": {
"type": "string",
"enum": [
"Stable",
"Tension",
"Drift",
"Cascade",
"Collapse",
"Reconstruction"
]
},
"driftMagnitude": {
"type": "number",
"minimum": 0
},
"dominantInvariant": {
"type": "string",
"enum": [
"signalNarrativeCoherence",
"distributionAttentionFit",
"temporalSignalStability",
"attentionNarrativeFeedback"
]
}
},
"required": ["mode", "driftMagnitude", "dominantInvariant"],
"additionalProperties": false
},
"MediaDrift": {
"title": "MediaDrift",
"type": "object",
"description": "Drift between previous and current vectors.",
"properties": {
"delta": {
"$ref": "#/$defs/MediaVector"
},
"magnitude": {
"type": "number",
"minimum": 0
},
"category": {
"type": "string",
"enum": ["micro", "meso", "macro", "regime_shift"]
}
},
"required": ["delta", "magnitude", "category"],
"additionalProperties": false
},
"MediaTransition": {
"title": "MediaTransition",
"type": "object",
"description": "Detected structural transition between states.",
"properties": {
"from": {
"type": "string",
"description": "Previous basin/mode label (implementation-defined)."
},
"to": {
"type": "string",
"description": "Current basin/mode label (implementation-defined)."
},
"trigger": {
"type": "string",
"enum": [
"invariant_break",
"attention_spike",
"cadence_acceleration",
"signal_collapse",
"narrative_collapse",
"reconstruction",
"none"
]
},
"severity": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": ["from", "to", "trigger", "severity"],
"additionalProperties": false
}
}
}