Lifecycle
EVM and SVM each exposestage, simulate, build, and commit
operations under /v1/pipeline/{chain}.
stagevalidates chain actions and returns a Build withstatus: "staged".simulateconsumes a staged Build and returns a Build withstatus: "simulated".buildresolves a catalog operation, stages its actions, and simulates them in one call.commitaccepts a simulated Build, revalidates it, and returns the action requests needed to cross the signing or execution boundary.
Idempotency-Key. Reuse it only for retries of the same
Build.
The Build envelope
A Build usesversion: 2 and carries:
Pass the returned Build unchanged to the next lifecycle call. Editing its
actions, order, digest, expiry, or attestation invalidates it.
Simulation evidence
PipelineSimulation has a passed or failed status and concrete
collections for:
- balance changes;
- token approval changes;
- fee estimates;
- warnings;
- guard results;
- gas; and
- logs.
Failed simulation
A failed simulation remains reviewable but cannot be committed as successful execution. Surface the returned status, warnings, and guard results. Do not construct a replacement transaction inside the commit request. Build or stage a corrected action and simulate it again. Common failure classes include a contract or program error, insufficient balance, an expired quote or block reference, an unavailable upstream, or a guard refusal. Treat the structured response as authoritative instead of parsing model text for the outcome.Commit response
A successful Pipeline commit hasstatus: "committed".
EVM returns:
results as an array instead of the single result field.
Both return requests, an array of typed ActionRequest values. Those
requests describe the reviewed execution or signature work the application
must resolve. Pipeline commit statuses do not use submitted or
awaiting_wallet.
Agent actions
Inside an Agent turn, the same approval boundary appears as anaction
event. The request contains its simulation evidence. Submit the wallet or
signing outcome through the action-result route with the action’s current
revision. The result variants are submitted transaction legs, signed outputs,
or a rejection reason.