How action codes are resolved to intents
Status | Meaning | Who Sets It | When / Condition |
---|---|---|---|
pending | Code has been generated and submitted, awaiting intent or transaction | SDK / client / relayer | After code is signed and sent to the relayer (or self-hosted) |
resolved | Code has a transaction attached (but not yet signed or broadcast) | Relayer | After calling /attach or assigning transaction field |
finalized | The transaction has been signed and confirmed on chain | Wallet or relayer | After TX is broadcast and confirmed. Attach txSignature |
expired | The codeβs expiresAt timestamp is in the past | π Computed dynamically | Date.now() > expiresAt (not stored permanently) |
error | An error occurred (invalid input, failed tx, wrong pubkey, etc) | Relayer / SDK | Validation failure, relayer rejection, or internal logic fault |
error
status can occur at any stage if validation or logic fails.
expired
is always derived from the expiresAt
field β not manually setfinalized
usually comes from a wallet callback or relayer monitorfinalizedAt: number
for analytics