Instruction Coverage โ
The Squads Smart Account program exposes 37 instructions. This library implements the 22 needed for normal smart-account usage. โ
= implemented (with a builder, composer, program method, and integration tests); ๐ซ = deliberately skipped; โฌ = not yet implemented.
Core transaction lifecycle โ
| Instruction | Status | Docs |
|---|---|---|
createSmartAccount | โ | Create a Smart Account |
createTransaction | โ | Create a Transaction |
createProposal | โ | Create a Proposal |
activateProposal | โ | Activate a Proposal |
approveProposal | โ | Approve a Proposal |
rejectProposal | โ | Reject a Proposal |
cancelProposal | โ | Cancel a Proposal |
executeTransaction | โ | Execute a Transaction |
closeTransaction | โ | Close a Transaction |
executeTransactionSync | โ | Execute Synchronously |
Settings transactions โ
| Instruction | Status | Docs |
|---|---|---|
createSettingsTransaction | โ | Create a Settings Transaction |
executeSettingsTransaction | โ | Execute a Settings Transaction |
closeSettingsTransaction | โ | Close a Settings Transaction |
executeSettingsTransactionSync | โ | Execute Synchronously |
Authority actions (controlled accounts) โ
| Instruction | Status | Docs |
|---|---|---|
addSignerAsAuthority | โ | Add a Signer |
removeSignerAsAuthority | โ | Remove a Signer |
changeThresholdAsAuthority | โ | Change the Threshold |
setTimeLockAsAuthority | โ | Set the Time Lock |
setNewSettingsAuthorityAsAuthority | โ | Set a New Settings Authority |
setArchivalAuthorityAsAuthority | ๐ซ | Skipped โ the archival feature is inert in the deployed program. |
Spending limits โ
| Instruction | Status | Docs |
|---|---|---|
addSpendingLimitAsAuthority | โ | Add a Spending Limit |
useSpendingLimit | โ | Use a Spending Limit |
removeSpendingLimitAsAuthority | โ | Remove a Spending Limit |
Not yet implemented โ
| Area | Instructions |
|---|---|
| Transaction buffers | createTransactionBuffer, extendTransactionBuffer, closeTransactionBuffer, createTransactionFromBuffer |
| Batches | createBatch, addTransactionToBatch, executeBatchTransaction, closeBatchTransaction, closeBatch |
| Program config (admin) | initializeProgramConfig, setProgramConfigAuthority, setProgramConfigSmartAccountCreationFee, setProgramConfigTreasury |
| Other | logEvent |
Known limitations โ
- Address Lookup Tables (ALTs) are not supported โ
createTransaction/executeTransactionhandle simple compiled messages only. - Ephemeral signers are not supported (
ephemeral_signersis fixed at 0).