Skip to content

Changelog

  • 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.
  • 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_staff attribute, 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.
  • 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.
  • Published the first release to PyPI.

For commit-level history, see the GitHub repository.