# DAO Governance

## 1.4 DAO Governance

DAO Governance defines how administrative authority over the Fund (and any governed parameters) is exercised.

Governance is contract-enforced.\
No off-chain vote has authority unless executed through the Timelock.

***

## I. Governance Architecture

The governance stack consists of:

1. **Weighted Governor**
2. **Timelock**
3. **Fund (Treasury Contract)**

Authority flows in one direction:

Governor → Timelock → Fund

***

### Control Flow

1. Proposal is created in Governor
2. Token-weighted voting occurs
3. If quorum and threshold met:
   * Proposal is queued in Timelock
4. After delay:
   * Timelock executes call on Fund

No other path modifies governed parameters.

***

## II. Voting Power

Voting power is derived from:

```
shareBalances(address)
```

Shares represent governance weight.

No external token or off-chain credential is required.

Voting eligibility depends on:

* Proposal threshold
* Snapshot block
* Quorum requirements

All values are verifiable in Governor contract.

***

## III. Proposal Lifecycle

#### 1. Propose

Submit:

* Target addresses
* Calldata payload
* Value (if applicable)
* Description

Proposal ID is generated on-chain.

***

#### 2. Vote

During voting period:

Participants cast:

* For
* Against
* Abstain

Votes are weighted by share balance at snapshot.

Vote state is stored in Governor contract.

***

#### 3. Queue

If proposal passes:

Governor queues proposal in Timelock.

Timelock records:

* Execution time
* Operation hash

***

#### 4. Execute

After required delay:

Anyone may call:

```
execute()
```

Timelock forwards transaction to Fund.

State changes occur only at this step.

***

## IV. Verifiable Functions

To confirm governance state:

On Governor:

* votingPeriod()
* quorum()
* proposalThreshold()
* state(proposalId)

On Timelock:

* getMinDelay()
* isOperationPending()
* isOperationReady()
* isOperationDone()

On Fund:

* owner()

If owner() equals Timelock address:\
Private operator control is removed.

***

## V. Governance Scope

Governance may control:

• Fund distributions\
• Parameter updates\
• Ownership transfers\
• Treasury actions

Recycle execution parameters may remain owner-controlled or governance-controlled depending on deployment configuration.

This is verifiable via:

```
owner()
```

on RecyclingEngine and related contracts.

***

## VI. Governance Guarantees

Governance enforces:

• Transparent proposal logs\
• Immutable voting record\
• Delayed execution via Timelock\
• No silent parameter changes

If governance has authority, private operators cannot bypass Timelock.

***

## VII. What Governance Does Not Do

Governance does not:

• Override ledger math\
• Alter historical distribution\
• Confiscate user weight\
• Reverse burn routing\
• Intervene mid-transaction

It can only execute contract-exposed functions.

Nothing more.

***

## VIII. Emergency Authority

If ownership has not been transferred to Timelock:

The owner address retains control.

This is visible via:

```
owner()
```

If ownership is renounced:

Control is permanently removed.

State must be explicitly documented in Contract Directory.
