Older-Kolibri Perseus export of a QTI Text entry item answered `1_000` or `٥` has no answers
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 30/100
Direzione di ricerca
Start with perseus_derive._accepted_values, extract_value, and PerseusExerciseGenerator._process_input_answers, then reproduce the issue using derive_perseus_item as described. Check the rendered perseus/input_question.json output and add coverage showing that non-xsd:double forms such as 1_000 and ٥ are handled as expected without producing an incorrect answer set.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
❌ This issue is not open for contribution. Visit Contributing guidelines to learn about the contributing process and how to find suitable issues.
Target branch: unstable
Observed behavior
perseus_derive._accepted_values keeps any answer Python float() reads as finite. float() also reads forms that are not xsd:double:
- digit separators:
1_000,1_0E3 - non-ASCII digits:
٥,5
extract_value rejects these, so PerseusExerciseGenerator._process_input_answers drops them. The derived Perseus item ships "answers": [].
Errors and logs
None. No warning is logged.
Expected behavior
_accepted_values accepts only xsd:double values (ASCII digits, no _), so an item whose only answers are these forms is answerless and publishes in neither archive.
User-facing consequences
Learners on older Kolibri get an input question that marks every answer wrong.
Steps to reproduce
derive_perseus_item(_Item(_text_item("single", ["1_000"])))— answers["1_000"].- Pass them through
_process_input_answers, then renderperseus/input_question.json. - The
numeric-input 1widget has no answers.
Same for ["٥"].
Context
- The editor rejects these forms; ricecooker-imported QTI items do not.
- Related: #6222, #6224
AI usage
Drafted by Claude Code during review of #6224. Reproduced on unstable with a script calling derive_perseus_item, _process_input_answers and the template.
- Lingua principale
- Python
- Stelle
- 211
- Fork
- 317
- Merge medio
- 4g 10h
- PR unite (30g)
- 25
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di learningequality/studio
-
Set unpublishable: true on PublishedChange by construction to simplify handleMaxRevs predicateApertaDEV: frontend P3 - low
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
learningequality/studio#5868 ·
I maintainer di solito rispondono entro 1 giorno
-
TAG: tech update / debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
learningequality/studio#2245 ·
I maintainer di solito rispondono entro 1 giorno
-
bug DEV: frontend
Difficoltà 2/5 1-3 ore Idoneità per principianti 20/100
learningequality/studio#6378 ·
I maintainer di solito rispondono entro 1 giorno
-
dependencies DEV: backend python
Difficoltà 4/5 1-2 giorni Idoneità per principianti 25/100
learningequality/studio#6376 ·
I maintainer di solito rispondono entro 1 giorno
-
Upgrade Babel to 8Apertadependencies DEV: frontend
Difficoltà 4/5 3-5 giorni Idoneità per principianti 8/100
learningequality/studio#6375 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di learningequality/studio
Issue simili
-
Server mode OAuth2: 'NoneType' object is not subscriptable on every request after re-submitting the OAuth2 login while already logged inForse già presa @Rarasinhoo l’ha presa oggi. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
pgadmin-org/pgadmin4#10733 ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
aws-samples/sample-per-model-bedrock#752 ·
I maintainer di solito rispondono entro 1 giorno
-
lesson-submission pending-review
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
Ikalus1988/MisakaNet#4452 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
OCHA-DAP/topo-tools#250 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
I maintainer di solito rispondono entro 1 giorno