Skip to content

Gates

A gate receives a read-only HttpRequest snapshot, one shared Timeout, and its exact typed configuration. It cannot change that request object in place. To change the request, the gate returns proceed with a RequestMutations value.

The pipeline processor validates the mutations and constructs a new read-only snapshot for the next gate. It also accumulates the mutations that the Egress Gate service adapter will map to HttpRequestResult if the pipeline allows the request. The OpenShell supervisor then applies those final mutations to the intercepted request. A gate can instead return terminal allow or terminal deny to stop the pipeline.

The default registry ships exactly regex. Application registries can add trusted custom gates. Egress Gate does not isolate trusted Python gate code.