forked from openedx/credentials
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
f9a84af
commit 398eb36
Showing
11 changed files
with
604 additions
and
231 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
Collecting | ||
========== | ||
|
||
**Collecting** is a process of: | ||
|
||
- learners' `fulfillments` update subscription | ||
- badge requirements fulfillment/revocation analysis | ||
- completed badge awarding | ||
- badge revocation | ||
|
||
Fulfillments subscription | ||
------------------------- | ||
|
||
Configured `Badge Collector`_ is auto-subscribed for any updates in `Fulfillment`_ records. | ||
|
||
|
||
Badge completion analysis | ||
------------------------- | ||
|
||
- Once user's `Fulfillment`_ is updated, Collector tries to figure out if this update made related Requirement fulfilled. | ||
- (not implemented) Collector emits `BADGE_REQUIREMENT_FULFILLED` signal. | ||
- If so, Collector goes further and checks all related requirements. | ||
- If all badge's requirements are fulfilled, there are no obstacles to award the badge, so Collector emits (internal) `BADGE_REQUIREMENTS_COMPLETE` signal. | ||
|
||
|
||
Badge awarding | ||
-------------- | ||
|
||
On `BADGE_REQUIREMENTS_COMPLETE` signal: | ||
|
||
- awarding handler creates `UserCredential`_ record; | ||
- emits external event about the badge awarding fact; | ||
|
||
|
||
Badge revocation analysis | ||
------------------------- | ||
|
||
This is an alternative pipeline step for requirements analysis with `revoke` effect set. | ||
|
||
- User's `Fulfillment`_ may be updated, so related Requirement stops being fulfilled. | ||
- Related badge's requirements become not fulfilled, so Collector emits (internal) `BADGE_REQUIREMENTS_NOT_COMPLETE` signal. | ||
|
||
Badge revocation | ||
---------------- | ||
|
||
On `BADGE_REQUIREMENTS_NOT_COMPLETE` signal: | ||
|
||
- revocation handler updates `UserCredential`_ record's status to `revoked`; | ||
- emits external event about the badge revocation fact; | ||
|
||
.. _Badge Processor: details.html#badge-processor | ||
.. _Badge Collector: details.html#badge-collector | ||
.. _Fulfillment: details.html#fulfillment | ||
.. _UserCredential: details.html#usercredential |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.