Commit Graph

462 Commits

Author SHA1 Message Date
Shaun Hamilton
a33bc0b4b5 chore(api): rename ExamEnvironmentTempExam -> ExamCreatorExam (#61868) 2025-08-19 12:46:02 +02:00
Shaun Hamilton
db9b7d2358 chore(api): prevent non-staff exam authz token gen on staging (#61786)
Co-authored-by: Huyen Nguyen <25715018+huyenltnguyen@users.noreply.github.com>
2025-08-13 21:03:14 +05:30
Shaun Hamilton
6adc98a426 feat(api): add version to exam collections (#61644)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-08-12 02:39:07 -07:00
Shaun Hamilton
8405f24a40 chore(api): add collections related to exam creator (#61773) 2025-08-12 08:36:39 +02:00
Shaun Hamilton
143565ce63 feat(api): add attempt id and exam id to response (#61637) 2025-08-04 11:12:46 -05:00
Shaun Hamilton
76c9fa9d48 feat(api): add attempts routes to user (#61362)
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
2025-07-31 14:54:29 +00:00
Oliver Eyton-Williams
55fbe40152 fix(api): more informative auth errors (#61607) 2025-07-31 09:13:39 -05:00
Shaun Hamilton
500342b24f fix(api): shuffle generated exam answers each time (#61352)
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
2025-07-31 15:50:59 +02:00
Oliver Eyton-Williams
4448bcbd92 Revert "fix(api): use lowercase email address (#61490)" (#61608) 2025-07-30 20:39:36 +05:30
Shaun Hamilton
ad7b0748d9 fix(api): return usernameDisplay (#61567)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-07-29 08:04:31 -07:00
Shaun Hamilton
f662b64a37 fix(api): use lowercase email address (#61490)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-07-29 09:46:50 +02:00
Shaun Hamilton
10c8733641 fix(api): check attempts and moderations records for available exams (#61302)
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
2025-07-28 12:05:28 +02:00
Shaun Hamilton
d88691bc8a breaking(api): remove screenshot api (#61300) 2025-07-22 08:28:13 -07:00
Tom
29cd2d227d feat(api): daily challenge api (#61346)
Co-authored-by: Huyen Nguyen <25715018+huyenltnguyen@users.noreply.github.com>
2025-07-17 02:34:46 -07:00
Shaun Hamilton
92b6ca5343 feat(api): add exam env attempts endpoints and fields (#59634)
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
2025-07-16 11:35:12 -05:00
Tom
5ae2e3eca7 chore(deps,api): update date-fns and add date-fns-tz (#61048) 2025-06-25 18:49:04 +02:00
Mrugesh Mohapatra
6848da8320 Merge commit from fork
httpOnly (invisible to JS) and secure (https only) are now used. In
order to update existing users without requiring them to
re-authenticate, each request sets those properties on the cookie.

Finally, the maxAge is now 30 days and is also updated on each request.
i.e. it's a rolling 30 days.

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-06-25 19:43:44 +05:30
Oliver Eyton-Williams
87c274a9ef feat(api): allow HOME_LOCATION origin in development (#61003) 2025-06-25 12:00:24 +05:30
Oliver Eyton-Williams
722131407b fix(api): duplicate reply on error in /daily-coding-challenge-completed (#60999) 2025-06-23 08:15:26 -05:00
Clarence Bakosi
ec764ef7cb chore(curriculum): change to US spelling (#60852) 2025-06-17 09:32:03 -07:00
Mrugesh Mohapatra
44e734398f fix(env): remove unused keys (#60878) 2025-06-15 19:16:30 +05:30
Oliver Eyton-Williams
a9dc3bdeef chore(api): add user's id to errors sent to Sentry (#60725) 2025-06-09 22:21:02 +02:00
Oliver Eyton-Williams
89402caa9d chore(api): migrate to fastify v5 (#57576) 2025-06-02 08:07:57 +05:30
Oliver Eyton-Williams
85bda9c63d fix: handle when userinfo has no email address (#60557) 2025-05-30 22:32:55 +05:30
Oliver Eyton-Williams
22724d5dda test: inform devs when db connection not established (#60539) 2025-05-28 10:52:11 -05:00
Oliver Eyton-Williams
3cde3e17d6 refactor: remove unused format rules from response schema (#60538) 2025-05-27 09:16:32 -07:00
Oliver Eyton-Williams
50c0194ee4 test(api): stop reporting request logs during testing (#60546) 2025-05-27 21:35:25 +05:30
Mrugesh Mohapatra
16e461385e chore(api-server): bye-bye you served us well (#60520)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-05-27 09:56:46 +05:30
Shaun Hamilton
a90e2757ac chore(api): add exam-env test script (#60445) 2025-05-27 09:53:51 +05:30
Oliver Eyton-Williams
0b1db2b9c6 fix(api): handle expected Auth0 errors (#60499) 2025-05-27 09:51:03 +05:30
Oliver Eyton-Williams
8138f086aa fix(api): handle string challengeType (#60491) 2025-05-23 18:26:18 +05:30
Oliver Eyton-Williams
848ae3aacf fix(api): handle users without email addresses (#60467) 2025-05-22 11:28:56 +02:00
Oliver Eyton-Williams
8f6a8d0401 fix(api): handle null picture (#60468) 2025-05-21 09:50:29 -07:00
Shaun Hamilton
5e836cbdb4 dev(api): track sentry releases (#60444) 2025-05-21 17:28:03 +05:30
Oliver Eyton-Williams
7003362fef fix(api): handle concurrent deletion requests (#60430) 2025-05-19 19:55:22 +05:30
Oliver Eyton-Williams
a5ec9e1ee7 fix(api): handle when emailVerified is null (#60429) 2025-05-19 11:18:10 +00:00
Shaun Hamilton
00264908e8 fix(api): remove authn requirement for coderoad challenges (#60425)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-05-19 16:23:43 +05:30
Shaun Hamilton
8558d0b1f1 fix(api): catch invalid ms-username url (#60402)
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
2025-05-19 16:23:24 +05:30
Shaun Hamilton
990b862d41 chore(api): log duplicate account ids (#60405) 2025-05-17 09:11:41 +05:30
Oliver Eyton-Williams
27b1a21384 fix(api): log error correctly and differentiate logs (#60404) 2025-05-16 10:15:52 -05:00
Oliver Eyton-Williams
f5b0071a68 fix(api): handle Date values for completedChallenge.completedDate (#60400) 2025-05-16 17:29:06 +05:30
Shaun Hamilton
3a146ec946 chore(api): add more auth0 plugin logs (#60398)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-05-16 12:47:47 +02:00
Oliver Eyton-Williams
7d420d9214 fix(api): change csrf logLevel (#60371) 2025-05-15 09:12:29 -05:00
Mrugesh Mohapatra
7e76946a07 fix(api): sending incorrect object in log (#60372) 2025-05-15 09:02:25 -05:00
Mrugesh Mohapatra
eeeeb034ec fix(api): deduplicating objects in logs (#60319) 2025-05-13 20:40:49 +05:30
Tom
f908548246 feat(api): add endpoint for submitting daily coding challenges (#59465)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2025-05-12 17:26:32 +02:00
Oliver Eyton-Williams
a169c2a7b1 chore(api): remove oldschema.prisma (#60227) 2025-05-08 15:27:47 +05:30
Mrugesh Mohapatra
8a6fcd70db fix(api): update logging (#60210) 2025-05-07 15:30:32 +05:30
Mrugesh Mohapatra
ff43f3aeca fix(api): whitespace in default values (#60199) 2025-05-07 01:52:42 +05:30
Mrugesh Mohapatra
dc5c7893b5 fix(api): update logs in user.ts (#60193) 2025-05-06 23:49:24 +05:30