backend
backend copied to clipboard
Refactor: Grading Jobs
Current: A grading job takes in a student's submission, and for each answer forks a task to AWS Lambda for grading. Does not return any status.
Proposed: A grading job is a forked task that takes in a student's submission, and for each answer sends a request to AWS Lambda. When status for each answer is returned, returns an overall status for the grading job.
This helps to ensure the job ran successfully.
Can I check what you mean by this? Are you suggesting we make the grading job synchronous? I think we purposely made it async via a queue to decouple the architecture to make it more resilient and salable.
I'm suggesting that the task forking should be done one level higher at the submission level as it is currently done at the answer level