Skip to content

[OA][Fullstack] - Due Date Functionality for OAs#312

Open
LOTaher wants to merge 14 commits into
mainfrom
310/due-dates-for-oa
Open

[OA][Fullstack] - Due Date Functionality for OAs#312
LOTaher wants to merge 14 commits into
mainfrom
310/due-dates-for-oa

Conversation

@LOTaher

@LOTaher LOTaher commented Jun 16, 2026

Copy link
Copy Markdown
Collaborator

[OA][Fullstack] - Due Date Functionality for OAs

Changes

  • Added the luxon dependency to easily use date time operations.
  • Updated deadline which now is inputtable via the SendAssessmentModal which provides a Date picker to choose from before sending assessments to candidates.
    • As noted in the modal, this date will auto transform to 11:59 PM Eastern of that day.
    • A future TODO would be to incorporate dynamic timezone due dates with something like UTC. This is functional for now.
  • To handle overdue OAs, I created scheduler which is another new service in our compose stack. This is simply a setTimeout and a setInterval that calls a new internal/ API route which checks for overdue OAs and marks them as expired. This is a solution specifically tailored to the self hosted sarge instances.
  • Cleaned up Button usage across the Modals so they are consistent.
  • Created an AssessmentExpired screen (see screenshot below)
  • Now handling the case where a user's assessment that is in progress cannot be refreshed and started over. This means that restarting your browser during an OA will auto submit your OA. To note, this is only when the assessment is IN_PROGRESS (they've pressed begin). If they're only in the intro, then they may restart freely.

Notes

TODO before merge:

  • make sure disconnected snapshots are being sent
  • make sure scheduler works in installer and on dev

--

Screenshots

image image

Checklist

Please go through all items before requesting reviewers:

  • All commits are tagged with the ticket number
  • No linting errors / newline warnings
  • All code follows repository-configured formatting
  • No merge conflicts
  • All checks passing
  • Screenshots included for UI changes
  • Remove non-applicable sections of this template
  • PR assigned to yourself
  • Reviewers requested & Slack ping sent
  • PR linked to the issue (fill in 'Closes #')
  • If design-related, notify the designer in Slack

Closes

Closes #310

@LOTaher LOTaher self-assigned this Jun 16, 2026
@vercel

vercel Bot commented Jun 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
sarge Ready Ready Preview, Comment Jun 19, 2026 3:34pm

Request Review

@LOTaher LOTaher marked this pull request as ready for review June 19, 2026 16:00
@bderbs30

bderbs30 commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator
image The date picker design could be aligned with the rest of the ui - (design wise)

@bderbs30

Copy link
Copy Markdown
Collaborator

One general thing I noticed about the scheduler is that there will be a one-day lag with marking OAs as expired. This has to do with the conversions to UST from EST. I'll comment further in the areas where I traced this .

Though this isn't really a big issue (the assessments themselves from the candidate side would still be blocked since we check against the deadline date and not the status)

@bderbs30 bderbs30 self-requested a review June 25, 2026 01:05
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.

[OA][Fullstack] - Due Date Functionality for OAs

2 participants