8a059e3027
The live AskDialog trusted question.question while its render helpers (replaceTabs, renderQuestionTitle, questionTabLabel) assume a string. A question reaching AskDialogComponent without a string question field threw an uncaught TypeError that escaped the TUI render loop and killed the session. The transcript renderer already normalizes the same malformed data via normalizeRenderQuestions; the live path did not. Normalize the questions array at dialog entry (new normalizeDialogQuestions), coercing question/id/label to strings and options to a well-formed array, matching the transcript path. Fixes #7211