Skip to main content

Appraisal Aggregate Model

Summary

Technical consistency boundary and lifecycle behavior of the Appraisal aggregate.

Audience

Engineers, architects, QA, support, security reviewers, and operators working with the Performance module.

Overview

Appraisal is the principal employee-cycle aggregate. It owns goals and immutable stage-review records, carries lifecycle timestamps and reviewer references, enforces transitions, and queues lifecycle events.

Confirmed implementation

  • Canonical creation requires a visible accepting cycle and an employee identifier.
  • Only editable appraisals accept new goals or self submission.
  • Manager, HR, approval, reopening, and Workflow terminal decisions are aggregate transitions.
  • Workflow-managed appraisals block direct manager, HR, and approval commands.
  • Compatibility updates deliberately bypass the staged lifecycle and do not raise lifecycle events.

Classification

Transitional because canonical and compatibility mutation models share one aggregate.

Requires confirmation

Concurrency strategy, direct closure command, compatibility extraction, and aggregate growth limits require confirmation.

See Also

Keywords

  • Performance service
  • Appraisal Model
  • Draft technical documentation

Source References

  • microservices/src/performance-service/Domain/Appraisal/Appraisal.cs
  • microservices/src/performance-service/Domain/Appraisal/AppraisalDomainEvents.cs
  • microservices/src/performance-service/Application/Commands/AppraisalCommands.cs

Revision Information

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