AST JSON Schema
The formal JSON Schema for AST nodes lives in the repository at:
Current schema ID: https://signalql.org/schemas/signalql-ast-v0.2.schema.json
Language version: v0.2 (schema version tracks spec version, not npm package semver).
Examples
Valid retrieve AST (v0.2)
json
{
"kind": "retrieve",
"source": { "kind": "entity", "name": "work_item" },
"where": [{ "field": "signal(risk_score)", "op": ">", "value": 0.7 }],
"traverse": { "relationship": "depends_on", "depthLte": 2 },
"trend": null,
"return": ["entity_id", "signal(risk_score)"]
}Valid sequence AST (v0.2)
json
{
"kind": "sequence",
"steps": ["pr_opened", "no_activity", "stale"],
"within": "3d"
}Invalid example (domain-specific interpretation in core)
json
{
"kind": "retrieve",
"source": { "kind": "entity", "name": "work_item" },
"where": [{ "field": "blocked", "op": "=", "value": true }],
"traverse": null,
"trend": null,
"return": ["entity_id"]
}blocked is a business interpretation label and should not be hardcoded in SignalQL core semantics. Use external derived signals instead.