[QTI] Editing a question keeps the item-level content the editor doesn't write
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
- 55/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- javascript, python
- Ambito
- frontend
Direzione di ricerca
Start with contentcuration/frontend/shared/views/QTIEditor/serialization/assembleItem.js, especially assembleItemXml, and trace how useQtiItem opens and emits the item. Add or locate tests that open an item containing each listed stylesheet, modal-feedback element, or root attribute, then inspect emitted raw_data. Done means all three are preserved after editing, with tests covering each case.
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
The first edit to a QTI question rewrites <qti-assessment-item> with only what assembleItemXml writes: the root's identifier, title, language and fixed flags, response and outcome declarations, the body, the hint catalog and response processing. Anything else outside <qti-item-body> is dropped:
<qti-stylesheet><qti-modal-feedback>- root attributes such as
xsi:schemaLocation
Errors and logs
None. The content is lost without a warning.
Expected behavior
An edit keeps every element and attribute of <qti-assessment-item> outside <qti-item-body> that the editor doesn't write, or the item shows unsupportedItemMessage$() read-only, as #6225 does for bodies the editor can't reproduce.
User-facing consequences
An item uploaded with ricecooker that carries a stylesheet or modal feedback loses it the first time an author changes anything, such as a hint. Learners then see the question unstyled, or get no feedback after answering.
Steps to reproduce
- Open an exercise containing a QTI choice item with
<qti-stylesheet href="style.css" type="text/css"/>before<qti-item-body>and a<qti-modal-feedback>after it. - Click Edit and remove a hint.
- Inspect the emitted
raw_data: it has no<qti-stylesheet>and no<qti-modal-feedback>.
Acceptance Criteria
- Editing an item with a
<qti-stylesheet>doesn't lose it. - Editing an item with a
<qti-modal-feedback>doesn't lose it. - Editing an item whose root carries
xsi:schemaLocationdoesn't lose it. - Tests cover each case above, from opening the item to the emitted
raw_data.
AI usage
Claude Code found this while reviewing the #6225 branch and drafted this issue. The loss was reproduced under Jest on unstable by opening such an item through useQtiItem, removing a hint and reading the assembled XML.
- Lingua principale
- Python
- Stelle
- 191
- Fork
- 308
- Merge medio
- 2g 3h
- PR unite (30g)
- 54
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: backend
Difficoltà 3/5 Mezza giornata Idoneità per principianti 35/100
learningequality/studio#6294 ·
I maintainer di solito rispondono entro 1 giorno
-
DEV: frontend
Difficoltà 2/5 1-3 ore Idoneità per principianti 28/100
learningequality/studio#6292 ·
I maintainer di solito rispondono entro 1 giorno
-
[QTI] Editing a question keeps the interaction attributes the editor doesn't setForse già presa @rtibblesbot l’ha presa 1 giorno fa. Apertabug
learningequality/studio#6287 · 1 reazione · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di learningequality/studio
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 3 giorni
-
Negation with "not" and "no" is ignored during sentiment analysisForse già presa @vivek-3728 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
techcsispit/mess-mood#11 · 1 commento ·
-
changelog investigate
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
ramnes/notion-sdk-py#408 ·
-
good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
btclib-org/btclib-wallet#267 ·
I maintainer di solito rispondono entro 1 giorno
-
good first issue tech-debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
knnmelprop/YAADO#111 ·