-
Notifications
You must be signed in to change notification settings - Fork 23
Fix/critical stability, security, and logic fixes #7
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
Open
Kalebtes2031
wants to merge
22
commits into
JavaScript-Mastery-Pro:main
Choose a base branch
from
Kalebtes2031:fix/bughunt-kaleb
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
7a6787a
fix: validate student input by checking safeParse result before datab…
Kalebtes2031 093f27d
fix: add missing await on Grade.findOneAndUpdate in POST handler
Kalebtes2031 d05041e
fix: default maxMarks to 100 when not provided to prevent NaN grade c…
Kalebtes2031 367f2dd
fix: prevent error stack trace leakage in grades API responses
Kalebtes2031 05ad368
fix: prevent error stack trace leakage in assignments API response
Kalebtes2031 684354c
fix: add teacherId filter to students update/delete to prevent unauth…
Kalebtes2031 fbfa136
fix: add teacherId filter to announcements update/delete to prevent u…
Kalebtes2031 f4e0311
fix: add teacherId filter to assignments update/delete to prevent una…
Kalebtes2031 4efd6ce
fix: add teacherId filter and ObjectId validation to grades update/de…
Kalebtes2031 84dc180
fix: use total count from API instead of capped array length for dash…
Kalebtes2031 7a181d2
fix: correct grade boundary for A+ to use >= 90 instead of > 90
Kalebtes2031 b6014c0
fix: Grade findOneAndUpdate hook now validates marks inside operator
Kalebtes2031 4961a8b
fix: remove userId query param bypass in profile GET to prevent unaut…
Kalebtes2031 ac3daff
fix: correct grade point for D from 4 to 5 in dashboard CGPA calculation
Kalebtes2031 f5558d9
fix: Grade updateOne hook now validates marks inside operator
Kalebtes2031 52182a7
fix: check API response status before processing dashboard data to pr…
Kalebtes2031 d8a4c3b
fix: handle negative and zero values in timeAgo to prevent displaying…
Kalebtes2031 484c7af
fix: guard against division by zero in grade percentage calculation
Kalebtes2031 91c0486
fix: guard against division by zero in API calcGrade function
Kalebtes2031 ef31c4b
fix: validate studentId format in attendance GET to prevent 500 errors
Kalebtes2031 c024e02
fix: validate studentId format in grades GET to prevent 500 errors
Kalebtes2031 801f414
fix: validate studentId format in attendance POST (single and bulk) t…
Kalebtes2031 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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 contains hidden or 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
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
🧩 Analysis chain
🏁 Script executed:
Repository: JavaScript-Mastery-Pro/discord-challenge
Length of output: 5767
Apply the same totalAssignments fix as used for totalStudents.
The
/api/assignmentsendpoint returns a paginated response shape{ assignments, total, page, pages }(confirmed inapp/api/assignments/route.ts). Usingassignments.totalinstead of derivingtotalAssignmentsfrom the (possibly truncated)assignmentsarray will prevent under-reporting, matching the fix applied tototalStudents.🤖 Prompt for AI Agents