Persistence Ownership and Boundaries
Summary
Runtime, design-time, compatibility, and transition persistence boundaries.
Audience
Backend engineers, database reviewers, architects, QA, support, operations, security reviewers, and product owners.
Overview
PerformanceDbContext is the only runtime persistence model. PerformanceDbContextFactory creates that model for design-time tooling and is not another model. PerformanceBackfillDbContext derives from it for transition writes. Compatibility uses normal runtime repositories and does not have its own context.
Confirmed persistence behavior
- The service owns review cycles, appraisals, goals, reviews, audit, timeline, outbox, and processed-event records.
- Employee, manager, HR, Workflow, and cycle-to-appraisal associations are identifier-only where no EF relationship is configured.
- The legacy backfill source is read separately and is not a Performance-owned runtime model.
- The backfill context changes compatibility-identifier generation but otherwise inherits runtime mappings.
- No separate reporting or compatibility database context exists.
Classification
Implemented bounded-context ownership with Transitional source-to-target migration tooling.
Requires confirmation
Final system of record, legacy retirement, transition-tool access, and data stewardship require confirmation.
Diagram
Related Articles
See Also
Keywords
- Performance persistence
- Ownership and Boundaries
- Draft database documentation
Source References
microservices/src/performance-service/Infrastructure/PerformanceDbContext.csmicroservices/src/performance-service/Domain/Repositories.csmicroservices/src/performance-service/Backfill/PerformanceBackfillTypes.csmicroservices/src/performance-service/Backfill/PerformanceMonolithSourceReader.cs
Revision Information
- Status: Draft
- Last reviewed: 2026-07-16
- Review cycle: Quarterly