Skip to main content

Validation

Audience

Developers, QA engineers, support engineers, security engineers, solution architects, and implementation partners.

Reference Content

This page records source-verified technical behavior and boundaries for the workforce-scheduling capability.

Summary

Validation is distributed across parsing helpers, application orchestration, aggregates, and selected database constraints.

LayerExamples
Mapping helpersCulture-independent shift-time parsing; named or numeric weekday parsing
ApplicationRequired tenant, positive employee, active referenced shift, unique name, no overlap
DomainTime bounds, hours and grace ranges, assignment interval order
PersistenceUnique weekly-off day per tenant, one default policy, unique policy rule key

Error shaping

Parsing and application failures return field-oriented validation messages. Missing resources and overlaps use distinct result categories. Domain argument exceptions are converted to validation results by command handlers.

Gaps

Case-insensitive shift-name uniqueness and assignment overlap are not protected by database constraints. Frontend shift editing validates little beyond a name, so server validation is authoritative. Compatibility parsing accepts legacy textual overtime rules and necessarily loses semantics outside the supported mapping.

Source References

  • microservices/src/attendance-service/Domain/TimeOffice/Shift.cs
  • microservices/src/attendance-service/Domain/TimeOffice/EmployeeShiftAssignment.cs
  • microservices/src/attendance-service/Application/Services/ShiftPolicyCommands.cs
  • microservices/src/attendance-service/Application/TimeOffice/ShiftPolicyMappings.cs

See Also

Keywords

  • Workforce scheduling
  • Shift policy
  • Attendance integration

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-20
  • Next review: 2026-10-20