Skip to content

Commit

Permalink
fix: make content_libraries ADR headers match doc guidelines
Browse files Browse the repository at this point in the history
  • Loading branch information
ormsbee authored and kdmccormick committed Feb 1, 2024
1 parent 9d36257 commit a9bd61d
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 10 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
1. Index libraries in elasticsearch
-----------------------------------
###################################

Status
------
******

**Revoked**

Expand Down Expand Up @@ -30,7 +30,7 @@ code.


Context
-------
*******

The new content libraries reside in blockstore instead of edx-platform's models,
which means that we are no longer able to query databases to get complete
Expand All @@ -46,7 +46,7 @@ This is a very inefficient way to fetch metadata for a list of
libraries/xblocks, and makes it even harder to filter/query them.

Decision
--------
********

Index the libraries and xblocks in elasticsearch to make them queryable. These
indexes are updated whenever a library or XBlock is updated through the studio.
Expand All @@ -58,7 +58,7 @@ fallbacks have been implemented in case elastic is down or hasn't been enabled
yet.

Consequences
------------
************

List APIs are significantly faster and are able to support filtering and
searching now that the metadata can be queried using elasticsearch. This also
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
Allow content libraries to be used by LTI consumers
---------------------------------------------------
###################################################

Status
------
******

Pending

Context
-------
*******

Currently, there's no way for xblocks in blockstore-based content libraries to be served to other LTI consumers. This ADR explores ways in which this can be achieved, without overly complicating the codebase. The platform currently does have an :code:`lms.lti_provider` app which implements the LTI 1.1 spec, but it only works for modulestore-based courses, and the LTI 1.1 spec itself is also deprecated and deemed insecure.

Decision
--------
********

We will use the latest LTI spec (`LTI 1.3`_) to serve the xblocks. This would be independent of the existing LTI 1.1 implementation, and will not require any changes in that app.

Expand All @@ -33,7 +33,7 @@ The rest of the functionality would be similar to how the current LTI 1.1 provid


Consequences
------------
************

Once implemented, content from blockstore-based libraries can be easily embedded into other LMS platforms. This is made easier by the fact that these libraries are designed to be embeddable, and can be easily rendered inside iframes. The library content can be used independently of courseware, are independent from course enrollments, and supports grading outside courses. Including the ability to forward learner scoring via LTI.

Expand Down

0 comments on commit a9bd61d

Please sign in to comment.