Skip to main content

Helpdesk Business Rules

Summary

The verified catalog contains 22 business rules. They describe current implementation behavior, not recommended support policy.

Audience

Helpdesk administrators, product, QA, support, security and solution architecture.

Business Purpose

Provide one testable catalog for ticket, assignment, comment, attachment, lifecycle, SLA and tenant behavior.

Actors

Requesters trigger creation; agents trigger operational actions; services enforce validation; QA verifies outcomes; product owners approve policy gaps.

Business Process

Rules apply as users create/classify tickets, assign work, add evidence, change status, complete work and run SLA checks.

Responsibilities

Product owns policy decisions, engineering owns enforcement, administrators own tenant configuration and QA owns traceability from rule to source and test.

Business Rules

#RuleTriggerOutcomeValidationSource
1Tenant context is mandatoryAny tenant operationRequest is scoped or rejectedPositive tenant requiredmicroservices/src/helpdesk-service/Application/Common.cs
2Ticket number is mandatory, uppercase and at most 60 charactersTicket constructionCanonical ticket referenceValue-object validationmicroservices/src/helpdesk-service/Domain/HelpdeskEntities.cs
3Title is mandatory, trimmed and at most 240 charactersTicket creationValid title storedValue-object validationmicroservices/src/helpdesk-service/Domain/HelpdeskEntities.cs
4Category must exist in the tenantTicket creationUnknown category rejectedTenant-filtered lookupmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
5Priority must exist in the tenantTicket creationUnknown priority rejectedTenant-filtered lookupmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
6New tickets start OpenTicket creationActive ticket createdServer-assigned statusmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
7Requester identity falls back to current user contextTicket creationRequester recordedSupplied positive ID/email, else contextmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
8An active Resolution policy determines due date when matchedTicket creationPolicy due date and SLA row createdCategory/priority/global policy matchingmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
9No matching policy produces a 48-hour due dateTicket creationDue date exists without SLA rowFallback branchmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
10SLA duration must be positive and no more than 525,600 minutesPolicy creationInvalid duration rejectedValue-object boundsmicroservices/src/helpdesk-service/Domain/HelpdeskEntities.cs
11Assignment sets assignee, assigned time and Assigned statusAssign actionCurrent owner establishedExisting ticket lookupmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
12Every assignment appends historyAssign actionAssignment provenance retainedAssignment row creationmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
13Comment body is mandatoryAdd commentBlank comment rejectedRequired-value validationmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
14Comment visibility is represented by an internal flagAdd commentInternal/public marker storedRequest value acceptedmicroservices/src/helpdesk-service/Domain/HelpdeskEntities.cs
15Attachment must be nonempty and at most 25,000,000 bytesUploadInvalid file rejectedFile length checksmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
16Attachment content is delegated to Document ServiceUpload/download/deleteHelpdesk retains document referencesDependency response requiredmicroservices/src/helpdesk-service/Infrastructure/DocumentServiceClient.cs
17Resolve records resolution timeResolve actionTicket becomes ResolvedDedicated status actionmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
18Close records closure timeClose actionTicket becomes ClosedDedicated status actionmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
19Reopen clears closure time through its dedicated actionReopen actionTicket becomes ReopenedDedicated status actionmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
20Resolve and close mark outstanding SLA records metCompletion actionSLA completion recordedOpen SLA updatemicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
21Overdue active SLA checks mark breach and create at most one automatic escalation per SLASLA checkBreach/escalation evidence and events createdDue date, active state and no existing escalationmicroservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
22Tenant-owned entities and activity reads use tenant query filters, except super-administrator contextQueryCross-tenant rows filteredData-context global filtersmicroservices/src/helpdesk-service/Infrastructure/HelpdeskDbContext.cs

Integrations

Rules touch identity/tenant context, Document Service, Notification Service events and native reporting. No Workflow Service rule participation is verified.

Limitations

The generic status action accepts any defined status from any current status. Assignment identity and internal-comment privilege are not verified against a directory or role. Tenant filtering does not provide requester-level self-service isolation.

Requires Confirmation

Transition matrix, role permissions, requester scoping, SLA operating calendar, escalation levels and production policy values require confirmation.

Source References

  • microservices/src/helpdesk-service/Application/Common.cs
  • microservices/src/helpdesk-service/Domain/HelpdeskEntities.cs
  • microservices/src/helpdesk-service/Api/HelpdeskEndpoints.cs
  • microservices/src/helpdesk-service/Infrastructure/HelpdeskDbContext.cs
  • microservices/src/helpdesk-service/Infrastructure/DocumentServiceClient.cs

Reference Content

The 22-row catalog is the verified rule reference and should be used for business acceptance and test traceability.

See Also

Keywords

Helpdesk rules, ticket validation, SLA validation, tenant filter, business acceptance.

Revision Information

Draft source-backed reference reviewed 2026-07-20; next quarterly review is 2026-10-20.