-
Notifications
You must be signed in to change notification settings - Fork 14
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
fix(packages/graphql): ensure that live quiz evaluation for free text questions without sample solution does not break #4415
Conversation
… questions without sample solution does not break
Current Aviator status
This PR was merged manually (without Aviator). Merging manually can negatively impact the performance of the queue. Consider using Aviator next time.
See the real-time status of this PR on the
Aviator webapp.
Use the Aviator Chrome Extension
to see the status of your PR within GitHub.
|
Warning Rate limit exceeded@sjschlapbach has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 14 minutes and 5 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThis pull request encompasses changes across multiple files in the frontend, function response processor, and grading packages. The modifications include updating the CSV filename generation in the Changes
Possibly related PRs
Suggested reviewers
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (2)
apps/frontend-manage/src/components/common/Header.tsx (2)
80-87
: Refine active item styling for improved user clarity.Wrapping the label in a
div
and conditionally applying the underline class is a clear and maintainable way to highlight active navigation items.
96-96
: Remove repeated styling logic.The direct assignment of a base class in
label
is simpler, but ensure consistency across all navigation items. Consider whether you need conditional styling here as well.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (6)
apps/frontend-manage/src/components/analytics/performance/StudentActivityPerformance.tsx
(1 hunks)apps/frontend-manage/src/components/common/Header.tsx
(2 hunks)apps/func-response-processor/src/index.ts
(1 hunks)packages/grading/src/index.ts
(1 hunks)packages/grading/test/index.test.ts
(1 hunks)packages/graphql/src/services/liveQuizzes.ts
(1 hunks)
✅ Files skipped from review due to trivial changes (2)
- apps/frontend-manage/src/components/analytics/performance/StudentActivityPerformance.tsx
- apps/func-response-processor/src/index.ts
🔇 Additional comments (6)
packages/grading/src/index.ts (1)
111-111
: Allowing solutions
to be undefined or null is beneficial for edge cases.
This change makes the GradeQuestionFreeTextArgs
interface more flexible. It prevents potential runtime errors for free text questions that do not have sample solutions.
packages/grading/test/index.test.ts (3)
186-192
: Edge case coverage for empty solutions array.
Awarding full points (1
) when solutions
is an empty array is consistent with the new requirement. This test ensures no solution scenario is handled without crashing.
193-198
: Edge case coverage for undefined
solutions.
Testing undefined solutions validates that the grading logic handles missing data gracefully. Great addition for completeness.
199-203
: Edge case coverage for null
solutions.
Same reasoning as with undefined
; ensures no unexpected error occurs even if solutions
is explicitly set to null.
packages/graphql/src/services/liveQuizzes.ts (2)
141-153
: Add robust solution parsing with fallback on empty array.
Using a try/catch block to parse JSON prevents runtime errors when sample solutions are unavailable or malformed. Logging the error and defaulting to an empty array is a solid recovery strategy.
155-155
: Check solutions
length only if it exists.
The new solutions && solutions.length > 0
check aligns with the updated interface, preventing null/undefined from breaking the grading logic.
klicker-uzh
|
Project |
klicker-uzh
|
Branch Review |
ft-live-quiz-fix
|
Run status |
|
Run duration | 12m 10s |
Commit |
|
Committer | Julius Schlapbach |
View all properties for this run ↗︎ |
Test results | |
---|---|
|
0
|
|
0
|
|
0
|
|
0
|
|
148
|
View all changes introduced in this branch ↗︎ |
|
klicker-uzh
|
Project |
klicker-uzh
|
Branch Review |
v3
|
Run status |
|
Run duration | 12m 04s |
Commit |
|
Committer | Julius Schlapbach |
View all properties for this run ↗︎ |
Test results | |
---|---|
|
0
|
|
0
|
|
0
|
|
0
|
|
148
|
View all changes introduced in this branch ↗︎ |
Summary by CodeRabbit
New Features
Bug Fixes
Tests
Chores