1.5 KiB
1.5 KiB
Router Common Models and Abstractions Library
Module
Router
Status
IMPLEMENTED
Description
Core shared library defining frame types (REQUEST, RESPONSE, HELLO, HEARTBEAT, CANCEL, STREAM_DATA), transport abstractions (ITransportServer, ITransportClient), routing contracts (IGlobalRoutingState, IRoutingPlugin, IRegionProvider), and model types (EndpointDescriptor, InstanceDescriptor, ConnectionState, RoutingContext, RoutingDecision, PayloadLimits).
Implementation Details
- Modules:
src/Router/__Libraries/StellaOps.Router.Common/ - Key Classes:
PathMatcher(src/Router/__Libraries/StellaOps.Router.Common/PathMatcher.cs) - path matching with wildcard and parameterized segment support
- Interfaces:
ITransportServer,ITransportClient,IGlobalRoutingState,IRoutingPlugin,IRegionProvider(all defined in Router.Common) - Models:
EndpointDescriptor,InstanceDescriptor,ConnectionState,RoutingContext,RoutingDecision,PayloadLimits, frame types (REQUEST, RESPONSE, HELLO, HEARTBEAT, CANCEL, STREAM_DATA) - Source: batch_51/file_16.md
E2E Test Plan
- Verify all frame types can be serialized and deserialized correctly
- Verify
PathMatcherhandles exact, wildcard, and parameterized path matching - Verify
EndpointDescriptorcarries all required metadata (path, method, version, claims) - Verify
RoutingContextandRoutingDecisionmodels are populated correctly during routing - Verify
PayloadLimitsenforcement: send a payload exceeding limits and confirm rejection