more features checks. setup improvements

This commit is contained in:
master
2026-02-13 02:04:55 +02:00
parent 9911b7d73c
commit 9ca2de05df
675 changed files with 37550 additions and 1826 deletions

View File

@@ -0,0 +1,35 @@
# Signals Router Transport
## Module
Signals
## Status
VERIFIED
## Description
Event routing transport layer for signals enabling alternative message delivery paths beyond Redis, supporting pluggable transport backends for fact propagation.
## Implementation Details
- **Modules**: `src/Signals/StellaOps.Signals/Services/`, `src/Signals/StellaOps.Signals/Options/`
- **Key Classes**:
- `RouterEventsPublisher` (`src/Signals/StellaOps.Signals/Services/RouterEventsPublisher.cs`) - routes signal events via configurable transport backend
- `RedisEventsPublisher` (`src/Signals/StellaOps.Signals/Services/RedisEventsPublisher.cs`) - Redis-based transport for signal event delivery
- `MessagingEventsPublisher` (`src/Signals/StellaOps.Signals/Services/MessagingEventsPublisher.cs`) - messaging-based transport backend
- `InMemoryEventsPublisher` (`src/Signals/StellaOps.Signals/Services/InMemoryEventsPublisher.cs`) - in-memory transport for testing
- `NullEventsPublisher` (`src/Signals/StellaOps.Signals/Services/NullEventsPublisher.cs`) - no-op transport for disabled routing
- `SignalsRouterEventsOptions` (`src/Signals/StellaOps.Signals/Options/SignalsRouterEventsOptions.cs`) - configuration for router transport selection
- **Interfaces**: `IEventsPublisher` (`src/Signals/StellaOps.Signals/Services/IEventsPublisher.cs`)
- **Source**: SPRINT_0143_0001_0001_signals.md
## E2E Test Plan
- [ ] Configure `RouterEventsPublisher` with Redis transport and verify signal events are delivered
- [ ] Switch transport to `MessagingEventsPublisher` and verify events are delivered via messaging backend
- [ ] Verify `InMemoryEventsPublisher` captures events in memory for test assertions
- [ ] Publish a reachability fact update and verify it is routed to subscribers via the configured transport
- [ ] Verify transport selection via `SignalsRouterEventsOptions` configuration
## Verification
- **Run ID**: run-001
- **Date**: 2026-02-12
- **Result**: PASS (Tier 0 + Tier 1 + Tier 2d)
- **Tests**: RouterEventsPublisherTests (2 tests) + InMemoryEventsPublisherTests (1 test) - HTTP envelope, headers, error handling, structured events