Technical Limitations
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
The following limitations are source-backed. Items framed as confirmation gaps were not established by the reviewed repository.
Architecture
- Scheduling is a slice of Attendance Service, not an independent bounded service.
- Layer boundaries share one project and are not compilation-enforced.
- Application projections reference infrastructure diagnostic entities.
- No roster, rotation, demand, availability, swap, publication, or team-schedule model exists.
- Multi-save command workflows lack a verified explicit transaction boundary.
- Scheduling changes do not map to integration events.
Scheduling
- Only named daily shifts and tenant-wide weekday rules are modeled.
- There is no calendar exception or holiday model in this slice.
- Overnight windows are supported, but split shifts and breaks are not modeled.
- Retroactive recalculation after configuration change is not automatic in verified code.
- Shift name uniqueness is application-enforced and race-prone.
Assignment
- Assignment creation and listing are exposed; edit, end, deactivate, reactivate, swap, and bulk workflows are absent.
- Overlap prevention is application-checked with no database exclusion constraint.
- Overlapping legacy data is resolved by latest start date rather than rejected.
- Assignments link employees and shifts by identifier without referential navigation.
- Group, department, location, and rotation assignment were not found.
Integration
- Leave does not consume effective shift assignments.
- Weekly-off ownership can diverge between service boundaries during transition.
- Payroll integration is indirect through approved attendance snapshots.
- No verified employee-profile event consumer keeps the attendance read model current.
- No shift-change notification flow was found.
- Gateway ownership and legacy fallback remain active design concerns.
Validation
- Frontend shift validation is minimal; server validation is authoritative.
- Name uniqueness and overlap checks can race under concurrent writes.
- Legacy textual overtime rules map into a narrower canonical model.
- Direct and compatibility weekly-off update semantics differ.
- Missing profile or referenced active shift can prevent or alter resolution.
Compatibility
- Direct delete blocks active assignments; compatibility delete deactivates them.
- Canonical soft deletion differs from legacy hard deletion and reference clearing.
- Direct and compatibility response envelopes and update semantics differ.
- Compatibility identity and transitional backfill add persistence complexity.
- Retirement criteria and rollback authority require confirmation.
Security
- Scheduling endpoints have no verified explicit authorization requirement or global fallback.
- Direct mutations have no verified role or permission enforcement.
- Tenant context can be sourced from request headers without verified trusted-edge enforcement.
- Privileged context bypasses tenant query filters broadly.
- Audit/timeline access policy and retention require confirmation.
Testing
- No dedicated backend unit/integration test project was found.
- No automated frontend shift-management tests were found.
- Current assurance centers on transition scripts.
- Concurrency, security, isolation, failure atomicity, and property-boundary coverage are missing.
- Production performance, scale, resilience, and recovery evidence was not available.
Source References
microservices/src/attendance-service/Program.csmicroservices/src/attendance-service/Application/Services/ShiftPolicyCommands.csmicroservices/src/attendance-service/Application/Services/AttendancePolicyResolver.csmicroservices/src/attendance-service/Infrastructure/AttendanceDbContext.csmicroservices/src/gateway-api/Program.cs
Related Articles
See Also
Keywords
- Workforce scheduling
- Shift policy
- Attendance integration
Revision Information
- Status: Draft
- Last reviewed: 2026-07-20
- Next review: 2026-10-20