# Proposal Max Operations

The proposal max operations parameter defines the maximum number of executable actions that can be included in a single governance proposal within the Onyx governance framework. Each action represents a function call that will be executed if the proposal is approved and successfully implemented. This limitation ensures governance proposals remain manageable and do not introduce excessive complexity or execution risks.

#### Function Implementation in `CHNGovernance`

In the `CHNGovernance` contract, the `proposalMaxOperations()` function is implemented to enforce this restriction, defining the upper limit of actions within a proposal.

#### Function Signature

```
function proposalMaxOperations() public pure returns (uint)
```

`RETURN`: The function returns an unsigned integer (uint) representing the maximum number of actions that can be included in a governance proposal.

#### Example Solidity Implementation

To retrieve the maximum allowed operations in a proposal, the `proposalMaxOperations()` function can be called using an instance of the `CHNGovernance` contract.

```
CHNGovernance gov = CHNGovernance(0x123...); // Contract address of CHNGovernance
uint operations = gov.proposalMaxOperations();
```

#### Web3.js Implementation (v1.2.6)

For interacting with the `CHNGovernance` contract using Web3.js, the following example demonstrates how to retrieve the proposal max operations:

```javascript
const operations = await gov.methods.proposalMaxOperations().call();
```

#### Technical Considerations

* The `proposalMaxOperations()` function is a pure function, meaning it does not modify blockchain state and can be executed without incurring gas costs.
* The maximum operations limit ensures that proposals do not become too large, which could lead to execution failures due to block gas limits or computational overhead.
* This parameter may be adjusted through governance proposals, allowing the community to refine the limit based on network requirements and governance efficiency.
* The retrieved value should be used to validate governance dashboards, governance UI interfaces, and off-chain governance tools to ensure proposals adhere to network constraints.

By enforcing a maximum number of actions per proposal, the Onyx governance system ensures that governance remains structured, efficient, and executable without excessive computational or security risks.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.onyx.org/governance/proposal-max-operations.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
