Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: package related changes #43

Merged
merged 2 commits into from
Nov 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions packages/contracts/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,14 @@ and this project adheres to the [Aragon OSx Plugin Versioning Convention](https:
### Added

- Copied files from [aragon/osx commit 1130df](https://github.com/aragon/osx/commit/1130dfce94fd294c4341e91a8f3faccc54cf43b7)
- `createProposal` standardized function.
- `createProposal` function is auth protected.
- `ListedCheckCondition` permission condition to grant the create proposal permission. This condition will allow the creation based on plugin's setup.
- `execute` function is auth protected, when the plugin is installed this permission will be granted to `ANY_ADDRESS`.
- The plugin inherits now from `MetadataExtensionUpgradeable`, meaning that the plugin has metadata that can be get/set (`getMetadata`, `setMetadata`).
- `initialize` function receives also `pluginMetadata` and `TargetConfig`.
- `hasSucceeded` and `customProposalParamsABI` function implementing to `IProposal` interface.
- `minApproval` configuration to the plugin, to restrict the minimal amount of approvals needed to the proposal succeed.

### Changed

Expand Down
38 changes: 19 additions & 19 deletions packages/contracts/src/build-metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,59 +8,59 @@
{
"components": [
{
"internalType": "enum MajorityVotingBase.VotingMode",
"name": "votingMode",
"type": "uint8",
"internalType": "enum MajorityVotingBase.VotingMode",
"description": "A parameter to select the vote mode. In standard mode (0), early execution and vote replacement are disabled. In early execution mode (1), a proposal can be executed early before the end date if the vote outcome cannot mathematically change by more voters voting. In vote replacement mode (2), voters can change their vote multiple times and only the latest vote option is tallied."
},
{
"internalType": "uint32",
"name": "supportThreshold",
"type": "uint32",
"internalType": "uint32",
"description": "The support threshold value. Its value has to be in the interval [0, 10^6] defined by `RATIO_BASE = 10**6`."
},
{
"internalType": "uint32",
"name": "minParticipation",
"type": "uint32",
"internalType": "uint32",
"description": "The minimum participation value. Its value has to be in the interval [0, 10^6] defined by `RATIO_BASE = 10**6`."
},
{
"internalType": "uint64",
"name": "minDuration",
"type": "uint64",
"internalType": "uint64",
"description": "The minimum duration of the proposal vote in seconds."
},
{
"internalType": "uint256",
"name": "minProposerVotingPower",
"type": "uint256",
"internalType": "uint256",
"description": "The minimum voting power required to create a proposal."
}
],
"internalType": "struct MajorityVotingBase.VotingSettings",
"name": "votingSettings",
"type": "tuple",
"internalType": "struct MajorityVotingBase.VotingSettings",
"description": "The voting settings that will be enforced when proposals are created."
},
{
"components": [
{
"internalType": "address",
"name": "token",
"type": "address",
"internalType": "address",
"description": "The token address. If this is `address(0)`, a new `GovernanceERC20` token is deployed. If not, the existing token is wrapped as an `GovernanceWrappedERC20`."
},
{
"internalType": "string",
"name": "name",
"type": "string",
"internalType": "string",
"description": "The token name. This parameter is only relevant if the token address is `address(0)`."
},
{
"internalType": "string",
"name": "symbol",
"type": "string",
"internalType": "string",
"description": "The token symbol. This parameter is only relevant if the token address is `address(0)`."
}
],
Expand All @@ -72,35 +72,35 @@
{
"components": [
{
"internalType": "address[]",
"name": "receivers",
"type": "address[]",
"internalType": "address[]",
"description": "The receivers of the tokens."
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]",
"internalType": "uint256[]",
"description": "The amounts of tokens to be minted for each receiver."
}
],
"internalType": "struct GovernanceERC20.MintSettings",
"name": "mintSettings",
"type": "tuple",
"internalType": "struct GovernanceERC20.MintSettings",
"description": "The token mint settings struct containing the `receivers` and `amounts`."
},
{
"components": [
{
"internalType": "address",
"name": "target",
"type": "address",
"internalType": "address",
"description": "The target contract to which actions will be forwarded to for execution."
},
{
"internalType": "uint8",
"name": "operation",
"type": "uint8",
"internalType": "uint8",
"description": "The operation type(either `call` or `delegatecall`) that will be used for execution forwarding."
}
],
Expand All @@ -110,16 +110,16 @@
"description": "The initial target config"
},
{
"internalType": "uint256",
"name": "minApproval",
"type": "uint256",
"internalType": "uint256",
"description": "The minimum amount of yes votes needed for the proposal advance."
},
{
"internalType": "bytes",
"name": "metadata",
"type": "bytes",
"description": "The metadata that contains the information about the multisig."
"internalType": "bytes",
"description": "The metadata that contains the information about the token voting plugin."
}
]
},
Expand All @@ -136,9 +136,9 @@
"description": "The information required for the update.",
"inputs": [
{
"internalType": "uint256",
"name": "minApprovals",
"type": "uint256",
"internalType": "uint256",
"description": "The minimum amount of yes votes needed for the proposal advance."
},
{
Expand All @@ -165,7 +165,7 @@
"internalType": "bytes",
"name": "metadata",
"type": "bytes",
"description": "The metadata that contains the information about the multisig."
"description": "The metadata that contains the information about the token voting plugin."
}
]
}
Expand Down
Loading