Files
git.stella-ops.org/docs/features/unchecked/excititor/vex-source-registration-and-verification-pipeline.md

3.0 KiB

VEX Source Registration and Verification Pipeline

Module

Excititor

Status

IMPLEMENTED

Description

VEX source onboarding pipeline with scheduled provider runners, orchestration, signature verification, and issuer directory integration for multi-vendor VEX ingestion.

Implementation Details

  • Modules: src/Excititor/StellaOps.Excititor.Worker/, src/Excititor/__Libraries/StellaOps.Excititor.Connectors.Abstractions/
  • Key Classes:
    • VexWorkerHostedService (src/Excititor/StellaOps.Excititor.Worker/Scheduling/VexWorkerHostedService.cs) - background service scheduling provider runs
    • DefaultVexProviderRunner (src/Excititor/StellaOps.Excititor.Worker/Scheduling/DefaultVexProviderRunner.cs) - runs VEX provider connectors on schedule
    • OrchestratorVexProviderRunner (src/Excititor/StellaOps.Excititor.Worker/Orchestration/OrchestratorVexProviderRunner.cs) - orchestrator-managed provider runner
    • VexWorkerOrchestratorClient (src/Excititor/StellaOps.Excititor.Worker/Orchestration/VexWorkerOrchestratorClient.cs) - communicates with orchestrator for work assignment
    • VexWorkerHeartbeatService (src/Excititor/StellaOps.Excititor.Worker/Orchestration/VexWorkerHeartbeatService.cs) - sends heartbeats to orchestrator
    • VexWorkerPluginCatalogLoader (src/Excititor/StellaOps.Excititor.Worker/Plugins/VexWorkerPluginCatalogLoader.cs) - loads available VEX connector plugins
    • VexConnectorBase (src/Excititor/__Libraries/StellaOps.Excititor.Connectors.Abstractions/VexConnectorBase.cs) - base class for VEX source connectors
    • VexConnectorDescriptor (src/Excititor/__Libraries/StellaOps.Excititor.Connectors.Abstractions/VexConnectorDescriptor.cs) - descriptor metadata for connectors
    • WorkerSignatureVerifier (src/Excititor/StellaOps.Excititor.Worker/Signature/WorkerSignatureVerifier.cs) - verifies signatures during ingestion
    • VexWorkerSchedule (src/Excititor/StellaOps.Excititor.Worker/Scheduling/VexWorkerSchedule.cs) - schedule configuration for provider runs
    • MirrorRegistrationEndpoints (src/Excititor/StellaOps.Excititor.WebService/Endpoints/MirrorRegistrationEndpoints.cs) - REST endpoints for mirror/source registration
  • Interfaces: IVexProviderRunner, IVexConsensusRefreshScheduler, IVexWorkerOrchestratorClient
  • Source: Feature matrix scan

E2E Test Plan

  • Register a new VEX source via MirrorRegistrationEndpoints and verify it appears in the plugin catalog
  • Verify VexWorkerHostedService schedules provider runs based on VexWorkerSchedule configuration
  • Verify DefaultVexProviderRunner executes the connector and ingests VEX documents
  • Verify WorkerSignatureVerifier validates signatures on ingested documents during the pipeline
  • Verify VexWorkerHeartbeatService sends heartbeats to the orchestrator during long-running ingestion
  • Verify VexWorkerPluginCatalogLoader discovers and loads all available vendor connectors (Ubuntu, Red Hat, Oracle, Microsoft, Cisco, SUSE)