- Shipped
- August 10, 2026 at 7:17 PM UTC
- Author
- Kamo
- Commit
- 54956b0
AUTO_ASSIGNMENT(3) is appended to SupportAssignmentStrategyType — assign immediately to an agent who is genuinely online, preferring whoever holds the least work, rather than ROUND_ROBIN's strict presence-blind rotation. Appended, never reordered: the column is @Enumerated(ORDINAL). The column also carries a numeric range CHECK Hibernate emitted on CREATE TABLE and never revises. Because that clause contains AND it is not an enum whitelist, so SchemaCleanupRunner's generic dropStaleEnumWhitelistChecks() sweep skips it by design; widening it is a matching change in that runner, without which every insert using the new value fails. SupportTicket gains ASSIGNMENT_OPENED_AT. Assignment is announced over core NATS with no replay, so an agent who was signed out when work landed never hears about it. Null from assignment until a client actually puts the conversation on screen, it makes "assigned to me and never seen" a server-side fact that survives a logout, a crash, a redeploy or a different machine. Two repository queries to go with it: countOpenForAgent (the workload tie-break) and findUnopenedAssignmentsForAgent (the sign-in catch-up).