Skip to main content

Audit and Timeline Storage

Summary

Technical audit and business timeline persistence and transaction participation.

Audience

Backend engineers, database reviewers, architects, QA, support, operations, security reviewers, and product owners.

Overview

PerformanceAuditLog records technical mutation attribution and details categories. AppraisalTimeline records business-facing lifecycle entries. Both are tenant-scoped logical history objects with generated identities and chronology indexes.

Confirmed persistence behavior

  • Both records carry tenant, logical entity classification and identity, actor attribution, and occurrence time.
  • Audit stores action and internal detail metadata; timeline stores entry type, category, description, and optional metadata.
  • Neither has a foreign key to Appraisal or ReviewCycle.
  • Both have tenant-plus-occurrence indexes and tenant query filters.
  • Canonical commands write audit and timeline in the same SaveChanges boundary as aggregate mutation and outbox creation.
  • Compatibility save records both; compatibility delete records audit only.
  • Retention, archival, immutability enforcement, and access policy are not configured.

Classification

Implemented history persistence with Foundation governance.

Requires confirmation

Retention, legal policy, redaction, immutability, access control, and archive ownership require confirmation.

Diagram

See Also

Keywords

  • Performance persistence
  • Audit and Timeline Storage
  • Draft database documentation

Source References

  • microservices/src/performance-service/Infrastructure/Persistence.cs
  • microservices/src/performance-service/Infrastructure/PerformanceDbContext.cs
  • microservices/src/performance-service/Application/Commands/AppraisalCommands.cs
  • microservices/src/performance-service/Application/Commands/ReviewCycleCommands.cs

Revision Information

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