questions: Annotated[list[ValidatedQuestion], AfterValidator(_validate_questions)]Questions to present to the user.
ValidatedQuestion rather than Question, and carrying
_validate_questions, so every rule the tool applies also applies where
tui.textual_adapter re-validates this payload. A choice question with no
choices would otherwise reach the client and degrade to a text box, and
an empty list would render a prompt with no questions in it.