bug(question): begrens antwoordrecords op acht zonder brondata te verliezen #1058

Closed
opened 2026-08-01 08:26:54 +00:00 by brenno · 2 comments
Owner

Context
QuestionSpec accepteert en materialiseert onbeperkt veel answers; de editor bouwt voor ieder antwoord een rij en preview/export meten en bouwen ieder antwoord als widget. De USER_GUIDE belooft expliciet no limit. Dat maakt één handmatig gemaakt deck met bijvoorbeeld 10000 antwoorden voldoende om editor, preview of export langdurig te blokkeren.

Productrichting
Hanteer maximaal acht antwoordrecords per vraag. Dat sluit aan op questionMaxOptionCount = 8 en houdt één vraagdia begrijpelijk. Niet pagineren en niet stil afkappen: bron, presentatie en export moeten hetzelfde blijven betekenen.

Relevante code

  • lib/models/question.dart:61 en 143
  • lib/widgets/editors/question_editor.dart:335
  • lib/widgets/slides/previews/question_preview.dart:179
  • docs/USER_GUIDE.md:900

Acceptatie

  • De editor kan niet meer dan acht antwoorden toevoegen.
  • Precies acht werkt in editor, preview, presentatie en export.
  • Een deck met meer dan acht records wordt vóór tekstmeting/widgetbouw duidelijk als ongeldige vraag gemeld; nooit stil afgekapt.
  • De oorspronkelijke Markdown blijft behouden zodat openen geen gegevens vernietigt.
  • De gebruikersgids vervangt no limit door de expliciete grens.
  • Een regressiefixture met 10000 antwoorden veroorzaakt geen onbegrensde widgetbouw of langdurige blokkade.
Context QuestionSpec accepteert en materialiseert onbeperkt veel answers; de editor bouwt voor ieder antwoord een rij en preview/export meten en bouwen ieder antwoord als widget. De USER_GUIDE belooft expliciet no limit. Dat maakt één handmatig gemaakt deck met bijvoorbeeld 10000 antwoorden voldoende om editor, preview of export langdurig te blokkeren. Productrichting Hanteer maximaal acht antwoordrecords per vraag. Dat sluit aan op questionMaxOptionCount = 8 en houdt één vraagdia begrijpelijk. Niet pagineren en niet stil afkappen: bron, presentatie en export moeten hetzelfde blijven betekenen. Relevante code - lib/models/question.dart:61 en 143 - lib/widgets/editors/question_editor.dart:335 - lib/widgets/slides/previews/question_preview.dart:179 - docs/USER_GUIDE.md:900 Acceptatie - De editor kan niet meer dan acht antwoorden toevoegen. - Precies acht werkt in editor, preview, presentatie en export. - Een deck met meer dan acht records wordt vóór tekstmeting/widgetbouw duidelijk als ongeldige vraag gemeld; nooit stil afgekapt. - De oorspronkelijke Markdown blijft behouden zodat openen geen gegevens vernietigt. - De gebruikersgids vervangt no limit door de expliciete grens. - Een regressiefixture met 10000 antwoorden veroorzaakt geen onbegrensde widgetbouw of langdurige blokkade.
Author
Owner

Opgepakt. Tak: codex/fix-question-answer-limit-1058. Verwachte reikwijdte: question-model en validatie, editor/preview, vraagtests en USER_GUIDE.

Opgepakt. Tak: codex/fix-question-answer-limit-1058. Verwachte reikwijdte: question-model en validatie, editor/preview, vraagtests en USER_GUIDE.
Author
Owner

Afgerond en op main geverifieerd in mergecommit b60d0ea536 (PR #1077). De grens is acht; grotere bronrecords worden fail-closed gemeld vóór widgetbouw, terwijl records, onbekende velden en assets behouden blijven. Editor en slidestrook zijn in de echte macOS-app licht visueel gecontroleerd; interactieve presentatie, donker thema, PDF en gerenderde HTML zijn door gerichte regressietests afgedekt maar konden in deze sessie niet handmatig worden bediend.

Afgerond en op main geverifieerd in mergecommit b60d0ea5363c2b55920e0fc5f327474fe456db71 (PR #1077). De grens is acht; grotere bronrecords worden fail-closed gemeld vóór widgetbouw, terwijl records, onbekende velden en assets behouden blijven. Editor en slidestrook zijn in de echte macOS-app licht visueel gecontroleerd; interactieve presentatie, donker thema, PDF en gerenderde HTML zijn door gerichte regressietests afgedekt maar konden in deze sessie niet handmatig worden bediend.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#1058
No description provided.