Description
Add an explicit ActionType discriminator field to the wasm Action struct in internal/wasm/types.go. The wasm-shim dispatches based on this field value rather than inspecting which fields are present.
New fields on Action:
ActionType — grpc_method, allow, add_headers, with_response_code
Intention — CEL expression
ActionMethod — registered method name
HeadersToAdd — CEL expression evaluating to a map of headers
NewResponseCode — HTTP status code
Existing actions (auth, ratelimit, tracing) do not set ActionType — the wasm-shim falls back to ServiceName-based dispatch when empty, preserving backwards compatibility.
Acceptance Criteria
References
Description
Add an explicit
ActionTypediscriminator field to the wasmActionstruct ininternal/wasm/types.go. The wasm-shim dispatches based on this field value rather than inspecting which fields are present.New fields on
Action:ActionType—grpc_method,allow,add_headers,with_response_codeIntention— CEL expressionActionMethod— registered method nameHeadersToAdd— CEL expression evaluating to a map of headersNewResponseCode— HTTP status codeExisting actions (auth, ratelimit, tracing) do not set
ActionType— the wasm-shim falls back toServiceName-based dispatch when empty, preserving backwards compatibility.Acceptance Criteria
ActionTypefield and constants added toActionstructIntention,ActionMethod,HeadersToAdd,NewResponseCode)References