Changelog
Unreleased
Section titled “Unreleased”- Configurable completion modes: on submit, on view after a delay, and manual
completion through
window.markComplete(). - Optional AI content generation and refinement in Studio through an OpenAI-compatible endpoint or custom provider callable.
Security
Section titled “Security”- AI generation now checks Studio write permission and fails closed outside a supported Studio runtime.
- The Test Grading panel escapes feedback, constructs multi-field controls with DOM APIs, and accepts preview messages only from its own sandboxed iframe.
- Generation prompt and refinement content sizes are capped.
- Staff detection now uses the Open edX
edx-platform.user_is_staffattribute, restoring the staff-only debug panel. - Generated activities enable grade publication.
- Refinement preserves the display name and grading configuration when the generated result does not replace them.
- AI response parsing handles code containing triple backticks more safely and validates multi-field grading metadata.
- The default non-streaming model timeout is 120 seconds, with clearer handling for non-JSON responses.
- The test suite uses supported XBlock request and fragment APIs.
1.0.0 — 2026-04-03
Section titled “1.0.0 — 2026-04-03”- Added HTML, CSS, and JavaScript activity rendering.
- Added the
submitInteraction(data)browser API and per-learner interaction state. - Added JavaScript-controlled grading, single-answer matching, and multi-field partial credit.
- Added Studio grading controls and Test Grading.
- Added completion tracking, configurable feedback, previous responses, a staff-only debug panel, and masquerade support.
- Added support for Django 4.2 and 5.2 and Python 3.11 or later.
0.1.0 — 2025-08-05
Section titled “0.1.0 — 2025-08-05”- Published the first release to PyPI.
For commit-level history, see the GitHub repository.