Add unit tests for Router configuration and transport layers
- Implemented tests for RouterConfig, RoutingOptions, StaticInstanceConfig, and RouterConfigOptions to ensure default values are set correctly. - Added tests for RouterConfigProvider to validate configurations and ensure defaults are returned when no file is specified. - Created tests for ConfigValidationResult to check success and error scenarios. - Developed tests for ServiceCollectionExtensions to verify service registration for RouterConfig. - Introduced UdpTransportTests to validate serialization, connection, request-response, and error handling in UDP transport. - Added scripts for signing authority gaps and hashing DevPortal SDK snippets.
This commit is contained in:
@@ -30,29 +30,29 @@ Implement streaming request/response support. Large payloads stream through the
|
||||
|
||||
| # | Task ID | Status | Description | Working Directory |
|
||||
|---|---------|--------|-------------|-------------------|
|
||||
| 1 | STR-001 | TODO | Add SupportsStreaming flag to EndpointDescriptor | Common |
|
||||
| 2 | STR-002 | TODO | Add streaming attribute support to [StellaEndpoint] | Common |
|
||||
| 3 | STR-010 | TODO | Implement REQUEST_STREAM_DATA frame handling in transport | InMemory |
|
||||
| 4 | STR-011 | TODO | Implement RESPONSE_STREAM_DATA frame handling in transport | InMemory |
|
||||
| 5 | STR-012 | TODO | Implement end-of-stream signaling | InMemory |
|
||||
| 6 | STR-020 | TODO | Implement streaming request dispatch in gateway | Gateway |
|
||||
| 7 | STR-021 | TODO | Pipe HTTP body stream → REQUEST_STREAM_DATA frames | Gateway |
|
||||
| 8 | STR-022 | TODO | Implement chunking for stream data | Configurable chunk size |
|
||||
| 9 | STR-023 | TODO | Honor cancellation during streaming | Gateway |
|
||||
| 10 | STR-030 | TODO | Implement streaming response handling in gateway | Gateway |
|
||||
| 11 | STR-031 | TODO | Pipe RESPONSE_STREAM_DATA frames → HTTP response | Gateway |
|
||||
| 12 | STR-032 | TODO | Set chunked transfer encoding | Gateway |
|
||||
| 13 | STR-040 | TODO | Implement streaming body in RawRequestContext | Microservice |
|
||||
| 14 | STR-041 | TODO | Expose Body as async-readable stream | Microservice |
|
||||
| 15 | STR-042 | TODO | Implement backpressure (slow consumer) | Microservice |
|
||||
| 16 | STR-050 | TODO | Implement streaming response writing | Microservice |
|
||||
| 17 | STR-051 | TODO | Expose WriteBodyAsync for streaming output | Microservice |
|
||||
| 18 | STR-052 | TODO | Chunk output into RESPONSE_STREAM_DATA frames | Microservice |
|
||||
| 19 | STR-060 | TODO | Implement IRawStellaEndpoint streaming pattern | Microservice |
|
||||
| 20 | STR-061 | TODO | Document streaming handler guidelines | Docs |
|
||||
| 21 | STR-070 | TODO | Write integration tests for upload streaming | |
|
||||
| 22 | STR-071 | TODO | Write integration tests for download streaming | |
|
||||
| 23 | STR-072 | TODO | Write tests for cancellation during streaming | |
|
||||
| 1 | STR-001 | DONE | Add SupportsStreaming flag to EndpointDescriptor | Common |
|
||||
| 2 | STR-002 | DONE | Add streaming attribute support to [StellaEndpoint] | Common |
|
||||
| 3 | STR-010 | DONE | Implement REQUEST_STREAM_DATA frame handling in transport | InMemory |
|
||||
| 4 | STR-011 | DONE | Implement RESPONSE_STREAM_DATA frame handling in transport | InMemory |
|
||||
| 5 | STR-012 | DONE | Implement end-of-stream signaling | InMemory |
|
||||
| 6 | STR-020 | DONE | Implement streaming request dispatch in gateway | Gateway |
|
||||
| 7 | STR-021 | DONE | Pipe HTTP body stream → REQUEST_STREAM_DATA frames | Gateway |
|
||||
| 8 | STR-022 | DONE | Implement chunking for stream data | Configurable chunk size |
|
||||
| 9 | STR-023 | DONE | Honor cancellation during streaming | Gateway |
|
||||
| 10 | STR-030 | DONE | Implement streaming response handling in gateway | Gateway |
|
||||
| 11 | STR-031 | DONE | Pipe RESPONSE_STREAM_DATA frames → HTTP response | Gateway |
|
||||
| 12 | STR-032 | DONE | Set chunked transfer encoding | Gateway |
|
||||
| 13 | STR-040 | DONE | Implement streaming body in RawRequestContext | Microservice |
|
||||
| 14 | STR-041 | DONE | Expose Body as async-readable stream | Microservice |
|
||||
| 15 | STR-042 | DONE | Implement backpressure (slow consumer) | Microservice |
|
||||
| 16 | STR-050 | DONE | Implement streaming response writing | Microservice |
|
||||
| 17 | STR-051 | DONE | Expose WriteBodyAsync for streaming output | Microservice |
|
||||
| 18 | STR-052 | DONE | Chunk output into RESPONSE_STREAM_DATA frames | Microservice |
|
||||
| 19 | STR-060 | DONE | Implement IRawStellaEndpoint streaming pattern | Microservice |
|
||||
| 20 | STR-061 | DONE | Document streaming handler guidelines | Docs |
|
||||
| 21 | STR-070 | DONE | Write integration tests for upload streaming | |
|
||||
| 22 | STR-071 | DONE | Write integration tests for download streaming | |
|
||||
| 23 | STR-072 | DONE | Write tests for cancellation during streaming | |
|
||||
|
||||
## Streaming Frame Protocol
|
||||
|
||||
@@ -191,20 +191,20 @@ public sealed class StreamingOptions
|
||||
## Exit Criteria
|
||||
|
||||
Before marking this sprint DONE:
|
||||
1. [ ] REQUEST_STREAM_DATA frames implemented in transport
|
||||
2. [ ] RESPONSE_STREAM_DATA frames implemented in transport
|
||||
3. [ ] Gateway streams request body to microservice
|
||||
4. [ ] Gateway streams response body to HTTP client
|
||||
5. [ ] SDK exposes streaming Body in RawRequestContext
|
||||
6. [ ] SDK can write streaming response
|
||||
7. [ ] Cancellation works during streaming
|
||||
8. [ ] Integration tests for upload and download streaming
|
||||
1. [x] REQUEST_STREAM_DATA frames implemented in transport
|
||||
2. [x] RESPONSE_STREAM_DATA frames implemented in transport
|
||||
3. [x] Gateway streams request body to microservice
|
||||
4. [x] Gateway streams response body to HTTP client
|
||||
5. [x] SDK exposes streaming Body in RawRequestContext
|
||||
6. [x] SDK can write streaming response
|
||||
7. [x] Cancellation works during streaming
|
||||
8. [x] Integration tests for upload and download streaming
|
||||
|
||||
## Execution Log
|
||||
|
||||
| Date (UTC) | Update | Owner |
|
||||
|------------|--------|-------|
|
||||
| | | |
|
||||
| 2025-12-05 | Sprint DONE - StreamDataPayload, StreamingOptions, StreamingRequestBodyStream, StreamingResponseBodyStream, DispatchStreamingAsync in gateway, 80 tests pass | Claude |
|
||||
|
||||
## Decisions & Risks
|
||||
|
||||
|
||||
Reference in New Issue
Block a user