Reactions & Triggers
When this happens, do that — the page's only rule primitive, plus the per-clip triggers in the timeline.
When, then, delay.
A reaction is three fields: a when, a then, and a delay in milliseconds. That is the whole primitive — there is deliberately no scripting layer between the event and the action.
{
"id": "r_goal_home",
"when": { "kind": "onCompare", "path": "score.home", "op": "gt", "value": 0 },
"then": { "do": "playClip", "clipId": "c_goalbug", "targetId": "g_lowerthird" },
"delay": 0
}