Skip to main content

Leave Audit and Timeline Storage

Summary

AuditLogs stores technical action evidence; LeaveTimeline stores employee-oriented business history. Both are tenant-filtered append-style records without database foreign keys.

Audience

Backend developers, QA, architects, audit reviewers, and support engineers.

Reference Content

StorePurposeKey fieldsIndexRetrievalSource
AuditLogsTechnical action/category and diagnostic detailGUID, entity type/id, action, actor, optional structured detail, occurrence timetenant/timeNo public Leave audit query confirmedmicroservices/src/leave-service/Infrastructure/LeaveDbContext.cs
LeaveTimelineBusiness/employee historyInteger ID, labor, optional request, entry type, detail, actor, occurrence timetenant/labor/timeNewest first, optional labor, capped resultmicroservices/src/leave-service/Application/LeaveWorkflows.cs

Actor and correlation are stored as application-provided text/identifiers; no separate correlation column exists on either history table. Timeline request identity and audit entity identity are logical references, not foreign keys. The source does not configure database immutability: append-only behavior is a code convention. Audit and timeline participate atomically when added before the same SaveChanges call; later balance effects can create a second history commit.

Source References

  • microservices/src/leave-service/Infrastructure/LeaveDbContext.cs
  • microservices/src/leave-service/Infrastructure/Persistence.cs
  • microservices/src/leave-service/Domain/Leave/LeaveExtras.cs
  • microservices/src/leave-service/Application/LeaveWorkflows.cs

See Also

Keywords

  • Audit log
  • Leave timeline
  • History

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-15
  • Review cycle: Quarterly