Stabilize control surface and external bridge v1

This commit is contained in:
jan
2026-04-20 01:13:27 +02:00
parent a56cecb23d
commit 07c52db5fb
29 changed files with 8818 additions and 1510 deletions

View File

@@ -0,0 +1,96 @@
{
"name": "staged pattern plus transition commit",
"steps": [
{
"request": {
"request_id": "style",
"session_id": "desk-a",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_transition_style",
"payload": {
"style": "chase",
"duration_ms": 480
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "transition style staged",
"session": {
"parameter_keys": [],
"transition_style": "chase",
"transition_duration_ms": 480
}
}
},
{
"request": {
"request_id": "pattern",
"session_id": "desk-a",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_pattern",
"payload": {
"pattern_id": "noise"
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "pattern staged: noise",
"session": {
"pattern_id": "noise",
"parameter_keys": [],
"transition_style": "chase",
"transition_duration_ms": 480
}
}
},
{
"request": {
"request_id": "trigger",
"session_id": "desk-a",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "trigger_transition"
}
}
}
},
"expect": {
"result_type": "command_accepted",
"summary_contains": "transition triggered: noise",
"session": {
"parameter_keys": []
}
}
},
{
"request": {
"request_id": "state",
"command": {
"type": "get_state"
}
},
"expect": {
"result_type": "state",
"state": {
"active_pattern_id": "noise",
"transition_style": "chase",
"transition_duration_ms": 480
}
}
}
]
}

View File

@@ -0,0 +1,160 @@
{
"name": "group update plus parameter change plus commit",
"steps": [
{
"request": {
"request_id": "group",
"session_id": "desk-b",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "upsert_group",
"payload": {
"group_id": "focus_pair",
"tags": ["runtime", "focus"],
"members": [
{ "node_id": "node-01", "panel_position": "top" },
{ "node_id": "node-01", "panel_position": "middle" }
],
"overwrite": true
}
}
}
}
},
"expect": {
"result_type": "command_accepted",
"summary_contains": "group updated: focus_pair"
}
},
{
"request": {
"request_id": "param",
"session_id": "desk-b",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_group_parameter",
"payload": {
"group_id": "focus_pair",
"key": "grain",
"value": { "kind": "scalar", "value": 0.81 }
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "group parameter staged: grain",
"session": {
"has_group_target": true,
"group_id": "focus_pair",
"parameter_keys": ["grain"]
}
}
},
{
"request": {
"request_id": "style",
"session_id": "desk-b",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_transition_style",
"payload": {
"style": "chase",
"duration_ms": 420
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "transition style staged",
"session": {
"has_group_target": true,
"group_id": "focus_pair",
"parameter_keys": ["grain"],
"transition_style": "chase",
"transition_duration_ms": 420
}
}
},
{
"request": {
"request_id": "pattern",
"session_id": "desk-b",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_pattern",
"payload": {
"pattern_id": "noise"
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "pattern staged: noise",
"session": {
"pattern_id": "noise",
"has_group_target": true,
"group_id": "focus_pair",
"parameter_keys": ["grain"],
"transition_style": "chase",
"transition_duration_ms": 420
}
}
},
{
"request": {
"request_id": "trigger",
"session_id": "desk-b",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "trigger_transition"
}
}
}
},
"expect": {
"result_type": "command_accepted",
"summary_contains": "transition triggered: noise on focus_pair",
"session": {
"parameter_keys": []
}
}
},
{
"request": {
"request_id": "state",
"command": {
"type": "get_state"
}
},
"expect": {
"result_type": "state",
"state": {
"selected_group": "focus_pair",
"active_pattern_id": "noise",
"active_scene_group": "focus_pair",
"transition_style": "chase",
"transition_duration_ms": 420,
"scalar_parameters": [
{ "key": "grain", "value": 0.81 }
]
}
}
}
]
}

View File

@@ -0,0 +1,103 @@
{
"name": "preset recall during running transition",
"steps": [
{
"request": {
"request_id": "style",
"session_id": "desk-c",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_transition_style",
"payload": {
"style": "crossfade",
"duration_ms": 1600
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "transition style staged"
}
},
{
"request": {
"request_id": "pattern",
"session_id": "desk-c",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_pattern",
"payload": {
"pattern_id": "noise"
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "pattern staged: noise"
}
},
{
"request": {
"request_id": "trigger",
"session_id": "desk-c",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "trigger_transition"
}
}
}
},
"expect": {
"result_type": "command_accepted",
"summary_contains": "transition triggered: noise"
}
},
{
"request": {
"request_id": "recall",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "recall_preset",
"payload": {
"preset_id": "ocean_gradient"
}
}
}
}
},
"expect": {
"result_type": "command_accepted",
"summary_contains": "preset recalled: ocean_gradient"
}
},
{
"request": {
"request_id": "state",
"command": {
"type": "get_state"
}
},
"expect": {
"result_type": "state",
"state": {
"preset_id": "ocean_gradient",
"active_pattern_id": "gradient",
"active_transition_present": true,
"event_message_contains": "preset recalled: ocean_gradient"
}
}
}
]
}

View File

@@ -0,0 +1,123 @@
{
"name": "blackout during staged session",
"steps": [
{
"request": {
"request_id": "pattern",
"session_id": "desk-d",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_pattern",
"payload": {
"pattern_id": "noise"
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "pattern staged: noise",
"session": {
"pattern_id": "noise",
"parameter_keys": []
}
}
},
{
"request": {
"request_id": "param",
"session_id": "desk-d",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_group_parameter",
"payload": {
"group_id": "bottom_panels",
"key": "grain",
"value": { "kind": "scalar", "value": 0.74 }
}
}
}
}
},
"expect": {
"result_type": "primitive_buffered",
"summary_contains": "group parameter staged: grain",
"session": {
"pattern_id": "noise",
"has_group_target": true,
"group_id": "bottom_panels",
"parameter_keys": ["grain"]
}
}
},
{
"request": {
"request_id": "blackout",
"session_id": "desk-d",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "blackout",
"payload": {
"enabled": true
}
}
}
}
},
"expect": {
"result_type": "command_accepted",
"summary_contains": "blackout enabled",
"session": {
"pattern_id": "noise",
"has_group_target": true,
"group_id": "bottom_panels",
"parameter_keys": ["grain"]
}
}
},
{
"request": {
"request_id": "trigger",
"session_id": "desk-d",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "trigger_transition"
}
}
}
},
"expect": {
"result_type": "command_accepted",
"summary_contains": "transition triggered: noise on bottom_panels"
}
},
{
"request": {
"request_id": "state",
"command": {
"type": "get_state"
}
},
"expect": {
"result_type": "state",
"state": {
"blackout": true,
"active_pattern_id": "noise",
"active_scene_group": "bottom_panels",
"scalar_parameters": [
{ "key": "grain", "value": 0.74 }
]
}
}
}
]
}

View File

@@ -0,0 +1,25 @@
{
"name": "stateless bridge path rejects staged primitive",
"steps": [
{
"request": {
"request_id": "reject",
"command": {
"type": "execute_primitive",
"payload": {
"primitive": {
"primitive": "set_pattern",
"payload": {
"pattern_id": "noise"
}
}
}
}
},
"expect": {
"result_type": "error",
"error_code": "show_control_session_required"
}
}
]
}