40 lines
2.2 KiB
Markdown
40 lines
2.2 KiB
Markdown
# Model Version Change Detection
|
|
|
|
## Module
|
|
Scanner
|
|
|
|
## Status
|
|
VERIFIED
|
|
|
|
## Description
|
|
Change detection for EPSS model version updates that suppresses noisy deltas when the underlying model changes, preventing false signal cascades.
|
|
|
|
## Implementation Details
|
|
- **EPSS Model Version Tracking**:
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Storage/Epss/EpssCsvStreamParser.cs` - `EpssCsvStreamParser` detects model version tags (e.g., `v2024.01.15`) from EPSS CSV data feeds and tracks version changes
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Storage/Epss/EpssExplainHashCalculator.cs` - `EpssExplainHashCalculator` includes `ModelVersion` in explain hash calculations to distinguish model-driven vs real-world score changes
|
|
- **Change Detection**:
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Storage/Epss/EpssChangeDetector.cs` - `EpssChangeDetector` detects score changes between EPSS updates
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Storage/Epss/EpssChangeRecord.cs` - `EpssChangeRecord` model for recording detected changes with model version context
|
|
- **Events**:
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Storage/Epss/Events/EpssUpdatedEvent.cs` - `EpssUpdatedEvent` includes `ModelVersionTag` to flag model-version-driven updates
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Storage/Epss/EpssReplayService.cs` - `EpssReplayService` replays EPSS data with model version awareness for noise suppression
|
|
|
|
## E2E Test Plan
|
|
- [ ] Ingest two EPSS CSV feeds with the same model version and verify genuine score changes are detected
|
|
- [ ] Ingest an EPSS CSV feed with a new model version tag and verify the model version change is detected
|
|
- [ ] Verify that when a model version changes, score deltas are flagged as model-driven rather than generating false signal cascades
|
|
- [ ] Verify the explain hash includes model version so that model-change deltas are distinguishable from real-world changes
|
|
- [ ] Verify the replay service correctly handles model version transitions without generating spurious change 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 |
|