[QTI] Saving a question drops data-catalog-idref from its prompt
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 20/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- xml
- Área
- frontend
Línea de trabajo
The issue names no files or tests; start by locating the QTI choice-item editor and the path that emits its raw_data. Trace how the prompt is opened and serialized, then add the requested test from opening the item through emitted raw_data. Done means edits preserve the prompt's data-catalog-idref, including when prompt text around the element changes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
❌ 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
- Saving a QTI choice question rewrites
<qti-prompt>without its<span data-catalog-idref="…">, even when only a hint changed. - The item still carries the referenced
<qti-catalog>(kept since #6290), now with nothing pointing at it.
User-facing consequences
- An imported item's glossary term stops being a glossary term for learners after any edit in Studio.
Steps to reproduce
- Open a QTI choice item with this prompt and catalog:
<qti-prompt>Pick the <span data-catalog-idref="g1">vowel</span>.</qti-prompt> … <qti-catalog id="g1"> <qti-card support="glossary-on-screen"><qti-html-content><p>A letter like A, E, I, O, U.</p></qti-html-content></qti-card> </qti-catalog> - Click Edit, expand Hints, click Add hint, type any text, click Close.
- The emitted
raw_datahas<qti-prompt><p>Pick the vowel.</p></qti-prompt>.
Context
- Seen on the #6290 branch (
90c5b6190) in the QTI editor dev demo page, Chromium.
Acceptance Criteria
- Editing any part of such an item keeps
data-catalog-idrefon the prompt element that carried it. - Editing the prompt text around such an element keeps the attribute.
- A test covers it from opening the item to the emitted
raw_data.
AI usage
Claude Code found this during manual QA of #6290 and drafted the issue.
- Lenguaje dominante
- Python
- Estrellas
- 192
- Forks
- 310
- Merge medio
- 2 d 6 h
- PR fusionados (30 d)
- 65
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de learningequality/studio
-
Set unpublishable: true on PublishedChange by construction to simplify handleMaxRevs predicateAbiertoDEV: frontend P3 - low
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
learningequality/studio#5868 ·
Los mantenedores suelen responder en 1 día
-
TAG: tech update / debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
learningequality/studio#2245 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 1-2 días Aptitud para principiantes 35/100
learningequality/studio#6315 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 1-2 días Aptitud para principiantes 25/100
learningequality/studio#6314 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
learningequality/studio#6313 ·
Los mantenedores suelen responder en 1 día
Todos los issues de learningequality/studio
Issues similares
-
python triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
microsoft/semantic-kernel#14590 ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
pinterest/pymemcache#662 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 Medio día Aptitud para principiantes 62/100
gnocchixyz/gnocchi#1527 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
tenstorrent/tt-model-manager#181 ·
Los mantenedores suelen responder en 1 día