Context
Deadlines drive almost every workflow in research administration: proposals, reports, compliance renewals, subaward monitoring, invoicing, effort certification. In the UDM today, deadlines exist only as date fields scattered across individual tables (e.g. RFA.Submission_Deadline, AwardDeliverable.Due_Date, ComplianceRequirement.Expiration_Date, Invoice.Due_Date). There is no unified way to ask the model "what's coming due in the next 30 days?"
Why this matters
- Operational urgency. Missed deadlines have direct consequences: lost proposals, audit findings, expired protocols, late reports. The thing research admins look at most should be queryable in one shot.
- Cross-domain visibility. A PI might have a proposal deadline, a progress report due, and an IRB renewal pending in the same week. Each lives in a different table; there's no view that surfaces them together.
- AI and dashboards. Any assistant or dashboard built on the UDM will need to answer deadline-aware questions repeatedly. Pushing that work into the schema (rather than each consumer reimplementing it) keeps behavior consistent.
Possible designs
-
Reference view first (vw_Upcoming_Deadlines). Union every dated obligation across the model into a single typed view: deadline_date, deadline_type, source_entity_type, source_entity_id, responsible_personnel_id, status. Cheapest, no schema change.
-
Polymorphic Deadline table. A first-class table that any entity can attach deadlines to (similar to how Document works today via Related_Entity_Type + Related_Entity_ID). Adds explicit metadata: Deadline_Type, Reminder_Lead_Days, Is_Recurring, Status, etc. More expressive, more schema surface area.
-
Hybrid. Keep authoritative dates on their owning tables (RFA, AwardDeliverable, ComplianceRequirement, etc.), but add a Deadline table for additional deadlines that don't map cleanly to existing tables (institutional internal deadlines, reminder dates, escalation dates).
Open questions
- Is the goal a queryable view (option 1) or a separately-managed deadline registry (option 2/3)?
- Which existing date fields should be treated as canonical deadlines vs. just historical timestamps?
- Do we need a
Reminder or Notification concept alongside, or is that out of scope (workflow tool territory)?
- Should
Deadline_Type use AllowedValues (institution-specific) or CHECK (universal taxonomy)?
References
- Existing UDM date fields touched:
RFA.Submission_Deadline, RFA.LOI_Deadline, RFA.Pre_Proposal_Deadline, AwardDeliverable.Due_Date, ComplianceRequirement.Expiration_Date, Invoice.Due_Date, Effort.Period_End_Date, Modification.Effective_Date
- Related view:
vw_Expiring_Awards, vw_Overdue_Deliverables (both already deadline-shaped but narrow in scope)
Context
Deadlines drive almost every workflow in research administration: proposals, reports, compliance renewals, subaward monitoring, invoicing, effort certification. In the UDM today, deadlines exist only as date fields scattered across individual tables (e.g.
RFA.Submission_Deadline,AwardDeliverable.Due_Date,ComplianceRequirement.Expiration_Date,Invoice.Due_Date). There is no unified way to ask the model "what's coming due in the next 30 days?"Why this matters
Possible designs
Reference view first (
vw_Upcoming_Deadlines). Union every dated obligation across the model into a single typed view:deadline_date,deadline_type,source_entity_type,source_entity_id,responsible_personnel_id,status. Cheapest, no schema change.Polymorphic
Deadlinetable. A first-class table that any entity can attach deadlines to (similar to howDocumentworks today viaRelated_Entity_Type+Related_Entity_ID). Adds explicit metadata:Deadline_Type,Reminder_Lead_Days,Is_Recurring,Status, etc. More expressive, more schema surface area.Hybrid. Keep authoritative dates on their owning tables (RFA, AwardDeliverable, ComplianceRequirement, etc.), but add a
Deadlinetable for additional deadlines that don't map cleanly to existing tables (institutional internal deadlines, reminder dates, escalation dates).Open questions
ReminderorNotificationconcept alongside, or is that out of scope (workflow tool territory)?Deadline_Typeuse AllowedValues (institution-specific) or CHECK (universal taxonomy)?References
RFA.Submission_Deadline,RFA.LOI_Deadline,RFA.Pre_Proposal_Deadline,AwardDeliverable.Due_Date,ComplianceRequirement.Expiration_Date,Invoice.Due_Date,Effort.Period_End_Date,Modification.Effective_Datevw_Expiring_Awards,vw_Overdue_Deliverables(both already deadline-shaped but narrow in scope)