[QTI] Editing a question keeps the interaction attributes the editor doesn't set
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
❌ 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 its interaction element with only the attributes its builder sets. Any other attribute is dropped.
- Text entry:
buildTextEntryInteractionXMLwrites onlyresponse-identifierandexpected-length. - Every legacy input question converted by
convert.pycarriesplaceholder-text="Enter your answer here", which is lost. - Choice: the builder drops
class, soclass="qti-labels-upper-alpha"is lost.
Errors and logs
None.
Expected behavior
An edit keeps every attribute on the interaction element that the editor doesn't set.
User-facing consequences
Learners see a question that differs from the one uploaded, e.g. an answer field without its placeholder, or choices without their labels.
Steps to reproduce
- Open an exercise with a legacy input question that was converted to QTI.
- Click Edit and change a hint.
- Inspect the emitted
raw_data:<qti-text-entry-interaction>has noplaceholder-text.
Acceptance Criteria
- Editing a converted text entry question keeps
placeholder-text. - Editing a choice question keeps a
classon<qti-choice-interaction>. - Tests cover both cases through parse, build and assemble.
AI usage
Claude Code found this while reviewing the #6225 branch and drafted this issue. Both losses were reproduced under Jest by parsing an item, rebuilding it with its descriptor and assembling it.
- Ngôn ngữ chính
- Python
- Star
- 213
- Fork
- 314
- Merge trung bình
- 2 ngày 17 giờ
- Pull request đã merge (30 ngày)
- 68
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của learningequality/studio
-
Set unpublishable: true on PublishedChange by construction to simplify handleMaxRevs predicateĐang mởDEV: frontend P3 - low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
learningequality/studio#5868 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
TAG: tech update / debt
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
learningequality/studio#2245 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug DEV: frontend P1 - important
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 25/100
learningequality/studio#6322 · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 25/100
learningequality/studio#6319 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
TAG: tech update / debt
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
learningequality/studio#6318 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của learningequality/studio
Issue tương tự
-
Edit tool converts CRLF files to LFCó thể đã có người làm @RaphaelFakhri đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
huggingface/tau#774 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
show ignores the row limit when a column or table name contains "limit"Có thể đã có người làm @RaphaelFakhri đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Agents panel: Codex token stats always empty because Codex now writes `*.jsonl.zst` sessionsĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
Maintainer thường phản hồi trong vòng 2 ngày
-
documentation good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
eclipse-score/inc_someip_gateway#356 ·
Maintainer thường phản hồi trong vòng 2 ngày