[Fix] Discord prompts omit buttons for multi-question input#743
[Fix] Discord prompts omit buttons for multi-question input#743roomote-roomote[bot] wants to merge 8 commits into
Conversation
|
No new code issues found. See task
Reviewed 66dba05 |
|
Resolved the review finding: the reported Cancel-button loss does not occur because options are capped at 20, reserving the fifth Discord row for Cancel. Added a 21-option regression test to lock that behavior down in 1da97f2. |
ReviewOverviewMulti-question What's solid (verified in the code)
Issues1. Unguarded 2. Dead end when 3. No handler-level tests for the new flow. Minor notes
VerdictThe core design is right — atomic per-question claims, correct answer accumulation, proper stale-interaction guards. I'd ask for issue 1 (try/catch around the advance-path |
|
Addressed the requested robustness gaps in 7c49ee9: prompt advancement is centralized, failed or missing prompt edits return the next question, and handler tests cover advance, final submission, lost claims, and edit failures. Follow-up in 19ef5eb: fallback replies include the next question's buttons. Cross-provider correction in 9a0248d: Telegram and Teams retain their full multi-question text prompts and no callback buttons; 792956d adds publisher-level regression coverage. |
What changed
Discord multi-question input prompts now show one current question with its option buttons, rather than rendering the entire form as text-only. Telegram and Teams retain their complete multi-question text prompts until their handlers gain the same wizard flow. Telegram single-question prompts retain their option and Cancel buttons.
Why this change was made
The shared publishing path must preserve each provider's existing interaction contract while Discord adopts its button-driven wizard.
Impact
Discord users receive the wizard flow. Telegram and Teams continue to show all questions for one structured text reply, while Telegram single-question prompts remain button-driven. Publisher regression coverage verifies each provider path.