You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When users log "reward" metrics, we will trigger a lookup for experiment and user condition enrollment, and proxy a call to post the reward to the Mooclet server.
If client /log's a metric that matched to a rewardMetricKey property in MoocletExperimentRef table, this will trigger a call to send the "reward" value to the Mooclet server.
The data needed for sending the reward value to the Mooclet API is:
moocletId
outcomeVariableName
versionId
value (i.e reward, will be 1 or 0)
So I think we will need to:
Find MoocletExperimentRef by rewardMetricKey
If found, get the versionId:
Find user's condition in IndividualEnrollment using user id and experiment id.
Find the version id by matching the condition id to the corresponding "version" in MoocletExperimentRef.versionConditionMaps
Determine value (reward)
The rewardMetricKey will always either give SUCCESS or FAILURE.
Success = 1, Failure = 0
Get outcomeVariableName from MoocletExperimentRef (we should add this property to the MoocletExperimentRef as a column and add it on experiment creation instead of searching in the policyParameters for it here).
POST these details to /value:
{
moocletId,
outcomeVariableName,
versionId,
value
}
The text was updated successfully, but these errors were encountered:
Dependent on #1934
When users log "reward" metrics, we will trigger a lookup for experiment and user condition enrollment, and proxy a call to post the reward to the Mooclet server.
For reference:
(https://github.com/CarnegieLearningWeb/UpGrade/tree/demo-branch).
https://carnegielearning.slack.com/archives/C08A2LSPM5J/p1738243122240099 for demo and diagrams.
Requirements:
If client
/log
's a metric that matched to arewardMetricKey
property in MoocletExperimentRef table, this will trigger a call to send the "reward" value to the Mooclet server.The data needed for sending the reward value to the Mooclet API is:
moocletId
outcomeVariableName
versionId
value
(i.e reward, will be 1 or 0)So I think we will need to:
MoocletExperimentRef
byrewardMetricKey
If found, get the versionId:
IndividualEnrollment
using user id and experiment id.MoocletExperimentRef.versionConditionMaps
Determine
value
(reward)rewardMetricKey
will always either giveSUCCESS
orFAILURE
.Get
outcomeVariableName
from MoocletExperimentRef (we should add this property to the MoocletExperimentRef as a column and add it on experiment creation instead of searching in the policyParameters for it here).POST these details to /value:
The text was updated successfully, but these errors were encountered: