AURA
Core

Proposals

Propose public and scalar FHE-encrypted transactions for policy evaluation.

Pre-alpha — not production ready

@aura-protocol/sdk-ts targets Solana devnet only. APIs may change without notice. Do not use for real funds until a stable release and audit are published.

proposeTransaction

Propose a public transaction. The on-chain policy engine evaluates all rules immediately and either approves or rejects.

const instruction = await client.proposeTransactionInstruction(
  accounts: ProposeTransactionAccounts,
  args: ProposeTransactionArgs,
);

await client.proposeTransaction(aiAuthority, accounts, args);
interface ProposeTransactionAccounts {
  aiAuthority: PublicKey;
  treasury: PublicKey;
  sessionKeyAccount?: PublicKey | null;
  swarmPool?: PublicKey | null;
  addressList?: PublicKey | null;
  complianceOracle?: PublicKey | null;
  parentTreasury?: PublicKey | null;
  budgetEnvelope?: PublicKey | null;
  exposureGroup?: PublicKey | null;
}

proposeConfidentialTransaction

Propose a confidential transaction using scalar FHE ciphertexts. The amount is encrypted off-chain, the Encrypt CPI evaluates the scalar guardrail graph, and the pending proposal stores the encrypted policy output ciphertext.

const instruction = await client.proposeConfidentialTransactionInstruction(
  accounts: ProposeConfidentialTransactionAccounts,
  args: ProposeConfidentialTransactionArgs,
);

await client.proposeConfidentialTransaction(
  aiAuthority,
  accounts,
  args,
  extraSigners,
);
interface ProposeConfidentialTransactionAccounts {
  aiAuthority: PublicKey;
  treasury: PublicKey;
  dailyLimitCiphertext: PublicKey;
  perTxLimitCiphertext: PublicKey;
  spentTodayCiphertext: PublicKey;
  amountCiphertext: PublicKey;
  policyOutputCiphertext: PublicKey;
  encryptProgram: PublicKey;
  config: PublicKey;
  deposit: PublicKey;
  callerProgram: PublicKey;
  cpiAuthority: PublicKey;
  networkEncryptionKey: PublicKey;
  eventAuthority: PublicKey;
  externalLiveness?: PublicKey | null;
  systemProgram: PublicKey;
}

Public vs Confidential

PublicConfidential
Amount visible on-chainYesNo, amount is an Encrypt ciphertext
Policy evaluationImmediate on-chain rulesScalar FHE graph through Ika Encrypt
Extra accounts neededNoCiphertext, Encrypt config, deposit, and CPI authority accounts
Setup requiredNoneconfigureConfidentialGuardrails first

On this page