save checkpoint: save features
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
# Notification Digest Generator
|
||||
|
||||
## Module
|
||||
Notifier
|
||||
|
||||
## Status
|
||||
IMPLEMENTED
|
||||
|
||||
## Description
|
||||
Configurable digest aggregation that batches notifications into scheduled summary digests (hourly/daily/weekly) with customizable grouping and priority thresholds.
|
||||
|
||||
## Implementation Details
|
||||
- **IDigestGenerator interface**: `src/Notifier/StellaOps.Notifier/StellaOps.Notifier.Worker/Digest/IDigestGenerator.cs` -- `GenerateAsync` and `PreviewAsync` for producing digest reports
|
||||
- **DigestGenerator**: `src/Notifier/StellaOps.Notifier/StellaOps.Notifier.Worker/Digest/DigestGenerator.cs` -- default implementation; queries IncidentManager for events in time range, produces `DigestResult` with `DigestId`, `TotalIncidentCount`, and `Summary.TotalEvents`; supports preview mode
|
||||
- **DigestScheduleRunner**: `src/Notifier/StellaOps.Notifier/StellaOps.Notifier.Worker/Digest/DigestScheduleRunner.cs` -- `BackgroundService` that runs digest generation on configured schedules; uses `IDigestDistributor` to deliver digests, `IDigestTenantProvider` for multi-tenant support; configurable via `DigestScheduleOptions.Enabled` and `Schedules`
|
||||
- **DigestTypes**: `src/Notifier/StellaOps.Notifier/StellaOps.Notifier.Worker/Digest/DigestTypes.cs` -- digest models (`DigestResult`, `DigestQuery`, `DigestSummary`)
|
||||
- **DigestServiceExtensions**: `src/Notifier/StellaOps.Notifier/StellaOps.Notifier.Worker/Digest/DigestServiceExtensions.cs` -- DI registration for digest services
|
||||
- **Tests**: `src/Notifier/StellaOps.Notifier/StellaOps.Notifier.Tests/Digest/DigestGeneratorTests.cs`
|
||||
- **Source**: SPRINT_0172_0001_0002_notifier_ii.md
|
||||
|
||||
## E2E Test Plan
|
||||
- [ ] Verify scheduled digest generation runs at configured intervals (hourly/daily/weekly)
|
||||
- [ ] Test digest aggregates incidents within the configured time window
|
||||
- [ ] Verify preview mode returns digest without side effects
|
||||
- [ ] Test multi-tenant digest generation processes each tenant independently
|
||||
- [ ] Verify digest distribution delivers summary to configured channels
|
||||
- [ ] Test DigestScheduleRunner respects Enabled=false configuration
|
||||
Reference in New Issue
Block a user