[AVAILABLE].
packages/execution-control/src/GatewayAttestation.ts.What it is
Every time the gateway releases an execution throughexecution-control, it mints a fresh, signed attestation proving it possesses the gateway’s
private key, for this specific request:
Why it exists
The signed execution authorization proves Parmana’s policy engine approved an action. It does not, by itself, prove that this specific gateway instance, at this specific moment, is the one releasing it to a connector. A connector that trusts an authorization without also checking who’s handing it over has no way to distinguish a legitimate release from anything else that got hold of a valid envelope. Gateway attestation is that second, separate check.How it behaves
authorizationId binds the attestation to one specific request, so it cannot be replayed to
authenticate a different request. The default server mints one of these per release, using
its own dedicated keypair (keys/gateway.*.pem), deliberately separate from the
authorization-verification key: see Deploy patterns for why the keys
are kept apart.
Minimal example
What it does not prove
In short: gateway attestation proves who released a request and binds that proof to which request, one signature answering one question. It relies on other, separate mechanisms (session consumption, the envelope’s own nonce store) for replay protection, it doesn’t duplicate them.Next
Credential isolation
What happens after a gateway attestation is accepted: credential issuance.
Determinism and clocks
The injected Clock and IdGenerator this attestation signer depends on.