Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[QTI] Editing a question keeps the interaction attributes the editor doesn't set

Đã đóng
#6,287 0 bình luận 1 reaction 0 người được giao Xem trên GitHub

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ả

bug

❌ 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: buildTextEntryInteractionXML writes only response-identifier and expected-length.
  • Every legacy input question converted by convert.py carries placeholder-text="Enter your answer here", which is lost.
  • Choice: the builder drops class, so class="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

  1. Open an exercise with a legacy input question that was converted to QTI.
  2. Click Edit and change a hint.
  3. Inspect the emitted raw_data: <qti-text-entry-interaction> has no placeholder-text.

Acceptance Criteria

  • Editing a converted text entry question keeps placeholder-text.
  • Editing a choice question keeps a class on <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

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của learningequality/studio

Tất cả issue của learningequality/studio

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.