An executor discovers executable authorization graphs and performs the authorized transitions. Executors earn fees embedded in the authorization objects they consume.
No entity assigns executors. No permission is required. The role is open to any participant capable of monitoring the network and submitting valid transactions.
For aon:csd-usdc, the executor's role is narrow. The buyer has signed
an authorization. The seller has locked the reserve and submitted the CSD proof.
The executor recognizes that the graph is complete and acts:
1. Discover a graph where Authorization, Reserve, and Proof are all present
2. Verify the proof locally (txid, merkle branch, block header, confirmations)
3. Call the settlement contract → USDC released to seller, fee paid to executor
4. Publish a Receipt Object
The reserve is created by the seller, not the executor. The buyer's USDC is locked when the seller calls the settlement contract. The executor enters once the graph is complete and requires nothing more than settlement.
For aon:evm-spot, the executor finds a compatible maker/taker pair,
constructs the fill, and settles atomically in a single transaction. No reserve step;
settlement is the lock.
Fees are specified by participants in their Authorization Objects, not by the network.
A CSD/USDC authorization specifies executorFeeAmount: the portion of USDC
paid to whichever executor completes the transition. An EVM spot session specifies
maxExecutorFeeQuote.
Participants set fees high enough to attract executors. Executors prioritize graphs
with higher fees relative to execution cost. The reference node surfaces this directly:
GET /v1/executable/open returns executable graphs sorted by reward descending.
Fees are paid by the settlement contract at the moment of settlement. There is no
separate claiming step.
Executors do not commit capital. The reserve in aon:csd-usdc is the
buyer's USDC, locked by the seller. By the time an executor sees an executable graph,
assets are already committed and the proof is already verified. The executor's only
action is the settlement call itself.
For aon:evm-spot, settlement is atomic; if the transaction reverts,
nothing moves. In both cases, the executor's only exposure is gas.
Multiple executors may discover the same graph. The first valid settlement transaction included wins; subsequent attempts revert on-chain. The node rejects duplicate receipts referencing the same reserve. The fee is the incentive. Speed is the competition.
The reference node includes executor functionality. Call POST /v1/executor/consume
with auto: true to select and execute the next available graph. For
production use, an executor polls /v1/executable/open, applies its own
selection logic, and calls consume with specific hashes.
# Minimal executor loop (pseudocode)
while true:
graphs = GET /v1/executable/open?namespace=aon:csd-usdc
for graph in graphs:
if graph.reward >= MIN_FEE:
POST /v1/executor/consume {
authorizationHash: graph.authorization.objectHash,
reserveHash: graph.reserve.objectHash,
proofHash: graph.proof.objectHash
}
sleep POLL_INTERVAL
An executor cannot create permission. It cannot modify the terms of an authorization. It cannot override a proof. It cannot prevent another executor from acting on the same graph.
The role is powerful in a narrow sense: it turns executable graphs into completed transitions. Outside of that, it has no special standing in the network.