Summary
The Extension SDK enables extensions to dynamically register any gRPC service and orchestrate multi-phase calls during request processing. The SDK will be leveraging gRPC Server Reflection to discover schemas automatically, so extensions don't need to provide proto files, and wasm-shim converts CEL expressions to protobuf messages dynamically. Extensions become self-service - call RegisterService(), define OnRequest and OnResponse logic with metadata passing between phases, and it works without touching wasm-shim.
Once the extension sdk will have this capabilities, the existing TokenRateLimitPolicy will benefit from the multi-phase orchestration in order to comply with the functional requirements. Hence, a "migration" of the policy with the new extension will also be part of the epic's goal.
Sub-issues
Register Upstream
Document tracking proposal and work found here
gRPC Reflection and Dynamic Message Building
Document tracking proposal and work found here
Action Pipeline
Document tracking proposal and work found here
Summary
The Extension SDK enables extensions to dynamically register any gRPC service and orchestrate multi-phase calls during request processing. The SDK will be leveraging gRPC Server Reflection to discover schemas automatically, so extensions don't need to provide proto files, and wasm-shim converts CEL expressions to protobuf messages dynamically. Extensions become self-service - call RegisterService(), define OnRequest and OnResponse logic with metadata passing between phases, and it works without touching wasm-shim.
Once the extension sdk will have this capabilities, the existing TokenRateLimitPolicy will benefit from the multi-phase orchestration in order to comply with the functional requirements. Hence, a "migration" of the policy with the new extension will also be part of the epic's goal.
Sub-issues
Register Upstream
Document tracking proposal and work found here
gRPC Reflection and Dynamic Message Building
Document tracking proposal and work found here
Action Pipeline
Document tracking proposal and work found here