save checkpoint

This commit is contained in:
master
2026-02-14 09:11:48 +02:00
parent 9ca2de05df
commit e9aeadc040
1512 changed files with 30863 additions and 4728 deletions

View File

@@ -0,0 +1,37 @@
# Outbox Pattern for Event Dispatch
## Module
Scanner
## Status
VERIFIED
## Description
Outbox pattern for reliable event dispatch with idempotent processing, dispatch tracking, and retry logic.
## Implementation Details
- **Event Dispatcher**:
- `src/Scanner/StellaOps.Scanner.WebService/Services/IReportEventDispatcher.cs` - `IReportEventDispatcher` interface for reliable event dispatch with idempotent processing
- `src/Scanner/StellaOps.Scanner.WebService/Services/ReportEventDispatcher.cs` - `ReportEventDispatcher` implements the outbox pattern for reliable event dispatch with dispatch tracking and retry logic
- **OCI Attestation Publisher**:
- `src/Scanner/StellaOps.Scanner.WebService/Services/IOciAttestationPublisher.cs` - `IOciAttestationPublisher` interface for publishing attestation events to OCI registries
- **Report Endpoints**:
- `src/Scanner/StellaOps.Scanner.WebService/Endpoints/ReportEndpoints.cs` - `ReportEndpoints` triggers event dispatch for completed scan reports
## E2E Test Plan
- [ ] Complete a scan and verify the report event dispatcher reliably publishes scan completion events
- [ ] Simulate a transient failure during event dispatch and verify the retry logic reprocesses the event
- [ ] Verify idempotent processing ensures duplicate events are not dispatched for the same scan
- [ ] Verify dispatch tracking records the status of each dispatched event (pending, dispatched, failed)
- [ ] Verify the outbox pattern guarantees at-least-once delivery for scan report events
---
## Verification
| Check | Result |
|-------|--------|
| Tier 0 - Source files exist | PASS |
| Tier 1 - Build + code review | PASS |
| Tier 2 - Integration tests | PASS |
| Verified | 2026-02-13T18:10:00Z |