Skip to Content
Stacks Market

DAO Executor

Purpose: Proposal execution engine with upgrade support. Acts as executor for approved DAO proposals.

List of Core Functions

  • get-impl: Returns current implementation contract
  • set-impl: Updates implementation contract (requires impl auth)
  • init: Initializes executor with implementation (deployer only, one-time)
  • execute-proposal: Executes proposal script with full contract permissions

Function Parameters

get-impl

Returns current implementation contract address.

ParameterTypeDescription
(none)-No parameters

Returns:

(response (optional principal) uint)
  • Current implementation or none

set-impl

Updates implementation contract. Requires authorization from current implementation.

ParameterTypeDescription
new-implprincipalAddress of new implementation contract

Returns:

(response bool uint)
  • Success or error code

Authorization: Current implementation only (checked via contract-caller)

init

Initializes executor with implementation address. Can only be called once by deployer.

ParameterTypeDescription
new-implprincipalAddress of initial implementation contract

Returns:

(response bool uint)
  • Success or error code

Authorization: Deployer only, one-time initialization

execute-proposal

Executes approved proposal script with full contract permissions.

ParameterTypeDescription
script<proposal-script>Proposal contract implementing proposal-script trait

Returns:

(response bool uint)
  • Success or error code

Authorization: Current implementation only (checked via contract-caller)

Note: Executes with as-contract context granting full treasury access.

Last updated on