Files
git.stella-ops.org/docs/features/unchecked/platform/scanner-platform-events.md

1.6 KiB

Scanner Platform Events (Redis Streams)

Module

Platform

Status

IMPLEMENTED

Description

Scanner WebService emits scanner.report.ready and scanner.scan.completed platform events via Redis Streams with DSSE envelopes embedded verbatim, configurable via scanner:events:* settings.

Implementation Details

  • AnalyticsIngestionService: src/Platform/StellaOps.Platform.Analytics/Services/AnalyticsIngestionService.cs -- subscribes to event stream (configurable via scanner:events:* settings); filters for scanner.report.ready and scanner.scan.completed event kinds from OrchestratorEventEnvelope; tenant-scoped event filtering
  • ScannerOrchestratorEvents: src/Platform/StellaOps.Platform.Analytics/Models/ScannerOrchestratorEvents.cs -- event models for scanner platform events
  • RekorEvents: src/Platform/StellaOps.Platform.Analytics/Models/RekorEvents.cs -- Rekor transparency log event models
  • AdvisoryEvents: src/Platform/StellaOps.Platform.Analytics/Models/AdvisoryEvents.cs -- advisory event models
  • IEventStream/IEventStreamFactory: from StellaOps.Messaging -- event stream abstraction for subscribing to platform events with position tracking (Beginning/End)
  • Source: 2025-10-19-scanner-policy.md

E2E Test Plan

  • Verify scanner.report.ready events are consumed and processed by analytics ingestion
  • Test scanner.scan.completed events trigger appropriate analytics updates
  • Verify DSSE envelopes are embedded verbatim in event payloads
  • Test event stream position tracking resumes from correct position after restart
  • Verify tenant filtering skips events from non-allowed tenants