Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proctoring Exam using Koditsu #7580

Merged
merged 11 commits into from
Oct 4, 2024
Merged

Conversation

bivanalhar
Copy link
Contributor

@bivanalhar bivanalhar commented Sep 29, 2024

No description provided.

@bivanalhar bivanalhar force-pushed the bivan/proctor-with-koditsu branch 28 times, most recently from 4543a2f to 1eb42ac Compare October 2, 2024 16:16
@bivanalhar bivanalhar changed the title Proctoring Exam using Koditsu (still in testing) Proctoring Exam using Koditsu Oct 2, 2024
@bivanalhar bivanalhar force-pushed the bivan/proctor-with-koditsu branch 2 times, most recently from 83f14dd to 6a17297 Compare October 3, 2024 18:28

return unless is_course_koditsu_enabled && is_assessment_koditsu_enabled

return if Time.zone.now > @assessment.start_at - 12.hours
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This behaviour of creating invitations to Koditsu only if it's at least 12 hours before the assessment.start_at is not documented anywhere. What's the rationale of only inviting 12 hours before?
If I create the Koditsu PE <12 hours before the start, user has to manually sync? But user will not intuitively understand that they need to do this, or why they need to do this (sometimes).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed.. if the current time is after 12 hrs before start of assessment, this function will call invite API directly

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Invites still being sent even after assessment.end_at if assessment is updated?


if is_course_koditsu_enabled && @assessment.is_koditsu_enabled
@assessment.update!(is_synced_with_koditsu: false)
remove_question_from_assessment_in_koditsu(koditsu_question_id)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any issue if Koditsu is not responding? i.e. no status code returned, instead, there was a timeout.

app/models/course/assessment/question/programming.rb Outdated Show resolved Hide resolved
@bivanalhar
Copy link
Contributor Author

bivanalhar commented Oct 3, 2024

Any issue if Koditsu is not responding? i.e. no status code returned, instead, there was a timeout.

Once I got the issue (although quite rarely), it will raise an error and the operation is marked as failed (will do refactoring regarding this after PE, since need to think carefully on the spec should this happen)

@bivanalhar bivanalhar force-pushed the bivan/proctor-with-koditsu branch 2 times, most recently from eaa6ab8 to e4d5936 Compare October 3, 2024 19:29
- add option to proctor assessment with koditsu
- disable when koditsu is disabled within course
- also when the existing questions are not all compatible with Koditsu
@bivanalhar bivanalhar force-pushed the bivan/proctor-with-koditsu branch 5 times, most recently from 952f2b2 to 8551a6b Compare October 4, 2024 04:43
- provide Koditsu chip beside assessment title
- limit only able to create programming question
- currently, we disable duplicating to Koditsu assessment
- later after we properly implement duplication for koditsu question, we will enable it
- note is that only question compatible to Koditsu will be able to be duplicated to Koditsu assessment
- in Assessment Show, indicate if assessment and questions are all synced
- differentiate with Koditsu chip in other places
- for example, Aseessment Index and Duplication Page
- whenever we toggle in Koditsu Exam, we call Koditsu API for creating workspace, if it didn't exist yet
- for now, we put placeholder there, until the API is ready
- button in Assessment Show to invite all users for Koditsu exam
- scheduled at 12 hours before startAt, or now, whichever is later
- set scheduling towards end of assessment to fetch
- provide button to fetch all submissions from Koditsu
- if Koditsu, instead of Force Submit, provide fetch from Koditsu button
@bivanalhar
Copy link
Contributor Author

This validation likely belongs in Course::QuestionAssessment instead of here. Responsibility not in question itself. Which is also why the spec file had to awkwardly introduce the [qa] relationship.

Done.. moved the validation to QuestionAssessment

@cysjonathan cysjonathan merged commit 648bd0a into master Oct 4, 2024
10 of 13 checks passed
@cysjonathan cysjonathan deleted the bivan/proctor-with-koditsu branch October 4, 2024 15:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants