Priority: P1 — Foundation; all other tasks depend on this data shape
File: src/models/request_models.py
Type: Model change
OrchestrationResponse needs a new optional field:
buttons: Optional[List[Dict[str, Any]]] = Field(
default=None,
description="Optional list of choice buttons for MCQ step responses"
)
TestOrchestrationResponse needs the same field so the test endpoint does not silently drop button data.
Button dict shape matches the DMapper output:
{"title": "Button label shown to user", "payload": "#service, /POST/services/active/step_name"}
Work:
- Add buttons field to OrchestrationResponse.
- Add buttons field to TestOrchestrationResponse.
- Confirm existing tests still pass (field is Optional, defaults to None, no breaking change).