[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GR9AB2P1DFKDF3GSZFXPTM":3,"skill-same:01M6GR9AB2P1DFKDF3GSZFXPTM":189},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":45,"linkOnly":46,"markdownContent":47,"markdownBody":48,"frontMatter":49,"refName":50,"commitSha":51,"skillDirectory":52,"forksCount":53,"repositoryHtmlUrl":54,"repositoryHomepageUrl":6,"ownerHtmlUrl":55,"ownerBlogUrl":56,"ownerDescription":57,"updatedAt":58,"install":59,"resources":72},"01M6GR9AB2P1DFKDF3GSZFXPTM","rocketpool-governance",null,"Interact with Rocket Pool governance contracts — protocol DAO (pDAO) proposals and voting, oracle DAO (oDAO) membership and proposals, security council operations, and all DAO settings contracts. Supports cast (Foundry CLI) and Ethereum MCP tools on mainnet and Hoodi testnet.","jiayaoqijia\u002Fcryptoskill","jiayaoqijia","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1453879?v=4","01M6GMYTX7Q7S504VC6E756ENR","YQ","01M6GMYV1QKJ1CC75MTTGT9PR0",80,"AGPL-3.0","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],"rocketpool governance","rocketpool","governance","settings","with","rocket","dao","cast","contracts","operations","voting","proposals","MCP","ethereum","mcp tools","protocol","council","foundry","security","oracle","cli","2026-11-10 10:12:30",false,"---\nname: rocketpool-governance\ndescription: Interact with Rocket Pool governance contracts — protocol DAO (pDAO) proposals and voting, oracle DAO (oDAO) membership and proposals, security council operations, and all DAO settings contracts. Supports cast (Foundry CLI) and Ethereum MCP tools on mainnet and Hoodi testnet.\n---\n\n# Rocket Pool — Governance\n\nRocket Pool has three governance bodies:\n1. **Protocol DAO (pDAO)** — all node operators vote on protocol parameters and treasury\n2. **Oracle DAO (oDAO)** — trusted nodes that submit oracle data (balances, prices, rewards)\n3. **Security Council** — emergency response team that can veto proposals and adjust parameters\n\n## Quick Start\n\n### Check Total pDAO Proposals\n```bash\ncast call 0x2D627A50Dc1C4EDa73E42858E8460b0eCF300b25 \"getTotal()(uint256)\" --rpc-url https:\u002F\u002Fethereum-rpc.publicnode.com\n```\n\n### Check Proposal State\n```bash\ncast call 0x2D627A50Dc1C4EDa73E42858E8460b0eCF300b25 \"getState(uint256)(uint8)\" 1 --rpc-url https:\u002F\u002Fethereum-rpc.publicnode.com\n```\n\n## Workflow\n\n1. Look up the contract address from `references\u002Faddresses.json`\n2. Find the function signature below\n3. Load the ABI from `assets\u002Fabis\u002F\u003CcontractName>.json` when available (some Saturn-era contracts in this skill are signature-only)\n4. Execute via `cast call` (read) or `cast send` (write)\n\n## Network Configuration\n\n| Network | Chain ID | RPC | rocketStorage |\n|---|---|---|---|\n| Mainnet | 1 | `https:\u002F\u002Fethereum-rpc.publicnode.com` | `0x1d8f8f00cfa6758d7bE78336684788Fb0ee0Fa46` |\n| Hoodi | 560048 | `https:\u002F\u002Frpc.hoodi.ethpandaops.io` | `0x594Fb75D3dc2DFa0150Ad03F99F97817747dd4E1` |\n\n## Architecture\n\n- **RocketStorage** is the central registry — all contracts resolve each other's addresses through it\n- All ETH values are in wei (18 decimals); all percentages are 18-decimal fixed point (1e18 = 100%)\n\n## rocketDAOProposal\n\nBase proposal storage shared across all governance bodies.\n\n### Functions\n\n```\ngetTotal() → uint256 [view]\ngetState(uint256 _proposalID) → uint8 [view]\ngetProposer(uint256 _proposalID) → address [view]\ngetDAO(uint256 _proposalID) → string [view]\n```\n\n## Protocol DAO\n\n### rocketDAOProtocolProposal\n\nCore proposal lifecycle for pDAO governance.\n\n```\npropose(string _proposalMessage, bytes _payload, uint32 _blockNumber, tuple[] _treeNodes) → uint256\nvote(uint256 _proposalID, uint8 _voteDirection, uint256 _votingPower, uint256 _nodeIndex, tuple[] _witness)\noverrideVote(uint256 _proposalID, uint8 _voteDirection)\nexecute(uint256 _proposalID)\nfinalise(uint256 _proposalID)\ndestroy(uint256 _proposalID)\n```\n\nVote directions: 0=Against, 1=For, 2=AgainstWithVeto, 3=Abstain\n\nProposal queries:\n```\ngetTotal() → uint256 [view]\ngetState(uint256 _proposalID) → uint8 [view]\ngetMessage(uint256 _proposalID) → string [view]\ngetProposer(uint256 _proposalID) → address [view]\ngetStart(uint256 _proposalID) → uint256 [view]\ngetPhase1End(uint256 _proposalID) → uint256 [view]\ngetPhase2End(uint256 _proposalID) → uint256 [view]\ngetExpires(uint256 _proposalID) → uint256 [view]\ngetExecuted(uint256 _proposalID) → bool [view]\ngetFinalised(uint256 _proposalID) → bool [view]\ngetVetoed(uint256 _proposalID) → bool [view]\ngetVotingPowerFor(uint256 _proposalID) → uint256 [view]\ngetVotingPowerAgainst(uint256 _proposalID) → uint256 [view]\ngetVotingPowerAbstained(uint256 _proposalID) → uint256 [view]\ngetVotingPowerVeto(uint256 _proposalID) → uint256 [view]\ngetVotingPowerRequired(uint256 _proposalID) → uint256 [view]\ngetReceiptHasVoted(uint256 _proposalID, address _nodeAddress) → bool [view]\n```\n\nProposal states: 0=Pending, 1=ActivePhase1, 2=ActivePhase2, 3=Succeeded, 4=Executed, 5=Cancelled, 6=Defeated, 7=Expired, 8=Vetoed, 9=QuorumNotMet, 10=Destroyed\n\n#### Examples\n\n```bash\ncast call $PDAO_PROPOSAL \"getTotal()(uint256)\" --rpc-url $RPC_URL\ncast call $PDAO_PROPOSAL \"getState(uint256)(uint8)\" 1 --rpc-url $RPC_URL\ncast call $PDAO_PROPOSAL \"getVotingPowerFor(uint256)(uint256)\" 1 --rpc-url $RPC_URL\n```\n\n### rocketDAOProtocolProposals\n\nProposal actions — what governance can vote on:\n\n```\nproposalSettingUint(string _settingContractName, string _settingPath, uint256 _value)\nproposalSettingBool(string _settingContractName, string _settingPath, bool _value)\nproposalSettingAddress(string _settingContractName, string _settingPath, address _value)\nproposalSettingMulti(string[] _settingContractNames, string[] _settingPaths, uint8[] _types, bytes[] _data)\nproposalSettingRewardsClaimers(uint256 _trustedNodePercent, uint256 _protocolPercent, uint256 _nodePercent)\nproposalTreasuryOneTimeSpend(string _invoiceID, address _recipientAddress, uint256 _amount)\nproposalTreasuryNewContract(string _contractName, address _recipientAddress, uint256 _amountPerPeriod, uint256 _periodLength, uint256 _startTime, uint256 _numPeriods)\nproposalTreasuryUpdateContract(string _contractName, address _recipientAddress, uint256 _amountPerPeriod, uint256 _periodLength, uint256 _numPeriods)\nproposalSecurityInvite(string _id, address _memberAddress)\nproposalSecurityKick(address _memberAddress)\nproposalSecurityReplace(address _existingAddr, string _newMemberId, address _newAddr)\n```\n\n### rocketDAOProtocolVerifier\n\nOptimistic fraud proof system for proposal voting trees.\n\n```\ncreateChallenge(uint256 _proposalID, uint256 _index, tuple _node, tuple[] _witness)\ndefeatProposal(uint256 _proposalID, uint256 _index)\nsubmitRoot(uint256 _proposalID, uint256 _index, tuple[] _nodes)\nclaimBondProposer(uint256 _proposalID, uint256[] _indices)\nclaimBondChallenger(uint256 _proposalID, uint256[] _indices)\ngetChallengeState(uint256 _proposalID, uint256 _index) → uint8 [view]\n```\n\n### rocketDAOProtocol\n\n```\ngetBootstrapModeDisabled() → bool [view]\nbootstrapSettingUint(string _settingContractName, string _settingPath, uint256 _value)\nbootstrapSettingBool(string _settingContractName, string _settingPath, bool _value)\nbootstrapSettingAddress(string _settingContractName, string _settingPath, address _value)\n```\n\n### rocketDAOProtocolActions\n\n```\nversion() → uint8 [view]\n```\n\nThe bundled `rocketDAOProtocolActions` ABI is minimal (version-only). For setting updates, use `rocketDAOProtocolProposals` proposal payload methods.\n\n## Oracle DAO (oDAO)\n\n### rocketDAONodeTrusted\n\n```\ngetMemberCount() → uint256 [view]\ngetMemberAt(uint256 _index) → address [view]\ngetMemberIsValid(address _nodeAddress) → bool [view]\ngetMemberID(address _nodeAddress) → string [view]\ngetMemberJoinedTime(address _nodeAddress) → uint256 [view]\ngetMemberRPLBondAmount(address _nodeAddress) → uint256 [view]\ngetMemberQuorumVotesRequired() → uint256 [view]\n```\n\n### rocketDAONodeTrustedActions\n\n```\nactionJoin()\nactionLeave(address _rplBondRefundAddress)\nactionChallengeMake(address _nodeAddress) [payable]\nactionChallengeDecide(address _nodeAddress)\nactionKick(address _nodeAddress, uint256 _rplFine)\n```\n\n### rocketDAONodeTrustedProposals\n\n```\npropose(string _proposalMessage, bytes _payload) → uint256\nvote(uint256 _proposalID, bool _support)\nexecute(uint256 _proposalID)\ncancel(uint256 _proposalID)\nproposalInvite(string _id, string _url, address _nodeAddress)\nproposalKick(address _nodeAddress, uint256 _rplFine)\nproposalLeave(address _nodeAddress)\nproposalSettingUint(string _settingContractName, string _settingPath, uint256 _value)\nproposalSettingBool(string _settingContractName, string _settingPath, bool _value)\nproposalUpgrade(string _type, string _name, string _contractAbi, address _contractAddress)\n```\n\n### rocketDAONodeTrustedUpgrade\n\n```\nupgrade(string _type, string _name, string _contractAbi, address _contractAddress)\nexecute(uint256 _upgradeProposalID)\nveto(uint256 _upgradeProposalID)\ngetTotal() → uint256 [view]\ngetState(uint256 _upgradeProposalID) → uint8 [view]\ngetName(uint256 _upgradeProposalID) → string [view]\n```\n\n## Security Council\n\n### rocketDAOSecurity\n\n```\ngetMemberCount() → uint256 [view]\ngetMemberAt(uint256 _index) → address [view]\ngetMemberIsValid(address _memberAddress) → bool [view]\ngetMemberID(address _memberAddress) → string [view]\ngetMemberQuorumVotesRequired() → uint256 [view]\n```\n\n### rocketDAOSecurityActions\n\n```\nactionJoin()\nactionLeave()\nactionRequestLeave()\nactionKick(address _memberAddress)\nactionKickMulti(address[] _memberAddresses)\n```\n\n### rocketDAOSecurityProposals\n\n```\npropose(string _proposalMessage, bytes _payload) → uint256\nvote(uint256 _proposalID, bool _support)\nexecute(uint256 _proposalID)\ncancel(uint256 _proposalID)\nproposalSettingUint(string _settingNameSpace, string _settingPath, uint256 _value)\nproposalSettingBool(string _settingNameSpace, string _settingPath, bool _value)\nproposalSettingAddress(string _settingNameSpace, string _settingPath, address _value)\nproposalInvite(string _id, address _memberAddress)\nproposalKick(address _memberAddress)\nproposalReplace(address _existingAddr, string _newMemberId, address _newAddr)\n```\n\n### rocketDAOSecurityUpgrade (Saturn)\n\nNo ABI file is bundled for this contract in this skill. Use the raw signatures below with `cast call` \u002F `cast send`.\n\n```\nproposeVeto(string _proposalMessage, uint256 _upgradeProposalID) → uint256\nproposalVeto(uint256 _upgradeProposalID)\nvote(uint256 _proposalID, bool _support)\nexecute(uint256 _proposalID)\ncancel(uint256 _proposalID)\n```\n\n## DAO Settings Contracts\n\nAll settings follow `getSettingUint\u002FBool\u002FAddress` pattern.\n\n| Contract | Controls |\n|----------|----------|\n| rocketDAOProtocolSettingsDeposit | Deposit pool limits, fees, queue rates |\n| rocketDAOProtocolSettingsNode | Registration, RPL stake minimums, bond sizes |\n| rocketDAOProtocolSettingsMinipool | Launch timeout, max count, bond reduction |\n| rocketDAOProtocolSettingsMegapool | Dissolve penalty, notify threshold (Saturn) |\n| rocketDAOProtocolSettingsNetwork | Commission shares, oracle frequency, fees |\n| rocketDAOProtocolSettingsRewards | Reward intervals, claimer percentages |\n| rocketDAOProtocolSettingsProposals | Voting periods, quorum, bonds |\n| rocketDAOProtocolSettingsInflation | RPL inflation rate and start time |\n| rocketDAOProtocolSettingsSecurity | Security council quorum, timing |\n| rocketDAONodeTrustedSettingsMembers | oDAO quorum, RPL bond, challenge params |\n| rocketDAONodeTrustedSettingsMinipool | Scrub period, bond reduction windows |\n| rocketDAONodeTrustedSettingsProposals | oDAO proposal timing |\n| rocketDAONodeTrustedSettingsRewards | Network reward enablement |\n","# Rocket Pool — Governance\n\nRocket Pool has three governance bodies:\n1. **Protocol DAO (pDAO)** — all node operators vote on protocol parameters and treasury\n2. **Oracle DAO (oDAO)** — trusted nodes that submit oracle data (balances, prices, rewards)\n3. **Security Council** — emergency response team that can veto proposals and adjust parameters\n\n## Quick Start\n\n### Check Total pDAO Proposals\n```bash\ncast call 0x2D627A50Dc1C4EDa73E42858E8460b0eCF300b25 \"getTotal()(uint256)\" --rpc-url https:\u002F\u002Fethereum-rpc.publicnode.com\n```\n\n### Check Proposal State\n```bash\ncast call 0x2D627A50Dc1C4EDa73E42858E8460b0eCF300b25 \"getState(uint256)(uint8)\" 1 --rpc-url https:\u002F\u002Fethereum-rpc.publicnode.com\n```\n\n## Workflow\n\n1. Look up the contract address from `references\u002Faddresses.json`\n2. Find the function signature below\n3. Load the ABI from `assets\u002Fabis\u002F\u003CcontractName>.json` when available (some Saturn-era contracts in this skill are signature-only)\n4. Execute via `cast call` (read) or `cast send` (write)\n\n## Network Configuration\n\n| Network | Chain ID | RPC | rocketStorage |\n|---|---|---|---|\n| Mainnet | 1 | `https:\u002F\u002Fethereum-rpc.publicnode.com` | `0x1d8f8f00cfa6758d7bE78336684788Fb0ee0Fa46` |\n| Hoodi | 560048 | `https:\u002F\u002Frpc.hoodi.ethpandaops.io` | `0x594Fb75D3dc2DFa0150Ad03F99F97817747dd4E1` |\n\n## Architecture\n\n- **RocketStorage** is the central registry — all contracts resolve each other's addresses through it\n- All ETH values are in wei (18 decimals); all percentages are 18-decimal fixed point (1e18 = 100%)\n\n## rocketDAOProposal\n\nBase proposal storage shared across all governance bodies.\n\n### Functions\n\n```\ngetTotal() → uint256 [view]\ngetState(uint256 _proposalID) → uint8 [view]\ngetProposer(uint256 _proposalID) → address [view]\ngetDAO(uint256 _proposalID) → string [view]\n```\n\n## Protocol DAO\n\n### rocketDAOProtocolProposal\n\nCore proposal lifecycle for pDAO governance.\n\n```\npropose(string _proposalMessage, bytes _payload, uint32 _blockNumber, tuple[] _treeNodes) → uint256\nvote(uint256 _proposalID, uint8 _voteDirection, uint256 _votingPower, uint256 _nodeIndex, tuple[] _witness)\noverrideVote(uint256 _proposalID, uint8 _voteDirection)\nexecute(uint256 _proposalID)\nfinalise(uint256 _proposalID)\ndestroy(uint256 _proposalID)\n```\n\nVote directions: 0=Against, 1=For, 2=AgainstWithVeto, 3=Abstain\n\nProposal queries:\n```\ngetTotal() → uint256 [view]\ngetState(uint256 _proposalID) → uint8 [view]\ngetMessage(uint256 _proposalID) → string [view]\ngetProposer(uint256 _proposalID) → address [view]\ngetStart(uint256 _proposalID) → uint256 [view]\ngetPhase1End(uint256 _proposalID) → uint256 [view]\ngetPhase2End(uint256 _proposalID) → uint256 [view]\ngetExpires(uint256 _proposalID) → uint256 [view]\ngetExecuted(uint256 _proposalID) → bool [view]\ngetFinalised(uint256 _proposalID) → bool [view]\ngetVetoed(uint256 _proposalID) → bool [view]\ngetVotingPowerFor(uint256 _proposalID) → uint256 [view]\ngetVotingPowerAgainst(uint256 _proposalID) → uint256 [view]\ngetVotingPowerAbstained(uint256 _proposalID) → uint256 [view]\ngetVotingPowerVeto(uint256 _proposalID) → uint256 [view]\ngetVotingPowerRequired(uint256 _proposalID) → uint256 [view]\ngetReceiptHasVoted(uint256 _proposalID, address _nodeAddress) → bool [view]\n```\n\nProposal states: 0=Pending, 1=ActivePhase1, 2=ActivePhase2, 3=Succeeded, 4=Executed, 5=Cancelled, 6=Defeated, 7=Expired, 8=Vetoed, 9=QuorumNotMet, 10=Destroyed\n\n#### Examples\n\n```bash\ncast call $PDAO_PROPOSAL \"getTotal()(uint256)\" --rpc-url $RPC_URL\ncast call $PDAO_PROPOSAL \"getState(uint256)(uint8)\" 1 --rpc-url $RPC_URL\ncast call $PDAO_PROPOSAL \"getVotingPowerFor(uint256)(uint256)\" 1 --rpc-url $RPC_URL\n```\n\n### rocketDAOProtocolProposals\n\nProposal actions — what governance can vote on:\n\n```\nproposalSettingUint(string _settingContractName, string _settingPath, uint256 _value)\nproposalSettingBool(string _settingContractName, string _settingPath, bool _value)\nproposalSettingAddress(string _settingContractName, string _settingPath, address _value)\nproposalSettingMulti(string[] _settingContractNames, string[] _settingPaths, uint8[] _types, bytes[] _data)\nproposalSettingRewardsClaimers(uint256 _trustedNodePercent, uint256 _protocolPercent, uint256 _nodePercent)\nproposalTreasuryOneTimeSpend(string _invoiceID, address _recipientAddress, uint256 _amount)\nproposalTreasuryNewContract(string _contractName, address _recipientAddress, uint256 _amountPerPeriod, uint256 _periodLength, uint256 _startTime, uint256 _numPeriods)\nproposalTreasuryUpdateContract(string _contractName, address _recipientAddress, uint256 _amountPerPeriod, uint256 _periodLength, uint256 _numPeriods)\nproposalSecurityInvite(string _id, address _memberAddress)\nproposalSecurityKick(address _memberAddress)\nproposalSecurityReplace(address _existingAddr, string _newMemberId, address _newAddr)\n```\n\n### rocketDAOProtocolVerifier\n\nOptimistic fraud proof system for proposal voting trees.\n\n```\ncreateChallenge(uint256 _proposalID, uint256 _index, tuple _node, tuple[] _witness)\ndefeatProposal(uint256 _proposalID, uint256 _index)\nsubmitRoot(uint256 _proposalID, uint256 _index, tuple[] _nodes)\nclaimBondProposer(uint256 _proposalID, uint256[] _indices)\nclaimBondChallenger(uint256 _proposalID, uint256[] _indices)\ngetChallengeState(uint256 _proposalID, uint256 _index) → uint8 [view]\n```\n\n### rocketDAOProtocol\n\n```\ngetBootstrapModeDisabled() → bool [view]\nbootstrapSettingUint(string _settingContractName, string _settingPath, uint256 _value)\nbootstrapSettingBool(string _settingContractName, string _settingPath, bool _value)\nbootstrapSettingAddress(string _settingContractName, string _settingPath, address _value)\n```\n\n### rocketDAOProtocolActions\n\n```\nversion() → uint8 [view]\n```\n\nThe bundled `rocketDAOProtocolActions` ABI is minimal (version-only). For setting updates, use `rocketDAOProtocolProposals` proposal payload methods.\n\n## Oracle DAO (oDAO)\n\n### rocketDAONodeTrusted\n\n```\ngetMemberCount() → uint256 [view]\ngetMemberAt(uint256 _index) → address [view]\ngetMemberIsValid(address _nodeAddress) → bool [view]\ngetMemberID(address _nodeAddress) → string [view]\ngetMemberJoinedTime(address _nodeAddress) → uint256 [view]\ngetMemberRPLBondAmount(address _nodeAddress) → uint256 [view]\ngetMemberQuorumVotesRequired() → uint256 [view]\n```\n\n### rocketDAONodeTrustedActions\n\n```\nactionJoin()\nactionLeave(address _rplBondRefundAddress)\nactionChallengeMake(address _nodeAddress) [payable]\nactionChallengeDecide(address _nodeAddress)\nactionKick(address _nodeAddress, uint256 _rplFine)\n```\n\n### rocketDAONodeTrustedProposals\n\n```\npropose(string _proposalMessage, bytes _payload) → uint256\nvote(uint256 _proposalID, bool _support)\nexecute(uint256 _proposalID)\ncancel(uint256 _proposalID)\nproposalInvite(string _id, string _url, address _nodeAddress)\nproposalKick(address _nodeAddress, uint256 _rplFine)\nproposalLeave(address _nodeAddress)\nproposalSettingUint(string _settingContractName, string _settingPath, uint256 _value)\nproposalSettingBool(string _settingContractName, string _settingPath, bool _value)\nproposalUpgrade(string _type, string _name, string _contractAbi, address _contractAddress)\n```\n\n### rocketDAONodeTrustedUpgrade\n\n```\nupgrade(string _type, string _name, string _contractAbi, address _contractAddress)\nexecute(uint256 _upgradeProposalID)\nveto(uint256 _upgradeProposalID)\ngetTotal() → uint256 [view]\ngetState(uint256 _upgradeProposalID) → uint8 [view]\ngetName(uint256 _upgradeProposalID) → string [view]\n```\n\n## Security Council\n\n### rocketDAOSecurity\n\n```\ngetMemberCount() → uint256 [view]\ngetMemberAt(uint256 _index) → address [view]\ngetMemberIsValid(address _memberAddress) → bool [view]\ngetMemberID(address _memberAddress) → string [view]\ngetMemberQuorumVotesRequired() → uint256 [view]\n```\n\n### rocketDAOSecurityActions\n\n```\nactionJoin()\nactionLeave()\nactionRequestLeave()\nactionKick(address _memberAddress)\nactionKickMulti(address[] _memberAddresses)\n```\n\n### rocketDAOSecurityProposals\n\n```\npropose(string _proposalMessage, bytes _payload) → uint256\nvote(uint256 _proposalID, bool _support)\nexecute(uint256 _proposalID)\ncancel(uint256 _proposalID)\nproposalSettingUint(string _settingNameSpace, string _settingPath, uint256 _value)\nproposalSettingBool(string _settingNameSpace, string _settingPath, bool _value)\nproposalSettingAddress(string _settingNameSpace, string _settingPath, address _value)\nproposalInvite(string _id, address _memberAddress)\nproposalKick(address _memberAddress)\nproposalReplace(address _existingAddr, string _newMemberId, address _newAddr)\n```\n\n### rocketDAOSecurityUpgrade (Saturn)\n\nNo ABI file is bundled for this contract in this skill. Use the raw signatures below with `cast call` \u002F `cast send`.\n\n```\nproposeVeto(string _proposalMessage, uint256 _upgradeProposalID) → uint256\nproposalVeto(uint256 _upgradeProposalID)\nvote(uint256 _proposalID, bool _support)\nexecute(uint256 _proposalID)\ncancel(uint256 _proposalID)\n```\n\n## DAO Settings Contracts\n\nAll settings follow `getSettingUint\u002FBool\u002FAddress` pattern.\n\n| Contract | Controls |\n|----------|----------|\n| rocketDAOProtocolSettingsDeposit | Deposit pool limits, fees, queue rates |\n| rocketDAOProtocolSettingsNode | Registration, RPL stake minimums, bond sizes |\n| rocketDAOProtocolSettingsMinipool | Launch timeout, max count, bond reduction |\n| rocketDAOProtocolSettingsMegapool | Dissolve penalty, notify threshold (Saturn) |\n| rocketDAOProtocolSettingsNetwork | Commission shares, oracle frequency, fees |\n| rocketDAOProtocolSettingsRewards | Reward intervals, claimer percentages |\n| rocketDAOProtocolSettingsProposals | Voting periods, quorum, bonds |\n| rocketDAOProtocolSettingsInflation | RPL inflation rate and start time |\n| rocketDAOProtocolSettingsSecurity | Security council quorum, timing |\n| rocketDAONodeTrustedSettingsMembers | oDAO quorum, RPL bond, challenge params |\n| rocketDAONodeTrustedSettingsMinipool | Scrub period, bond reduction windows |\n| rocketDAONodeTrustedSettingsProposals | oDAO proposal timing |\n| rocketDAONodeTrustedSettingsRewards | Network reward enablement |\n",{"name":5,"description":7},"main","3df1d0d67b30ff15236561f8c0f9f06d33f42dfd","skills\u002Fdefi\u002Frocketpool-official-governance",17,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia","https:\u002F\u002Feth2030.com","Hardcore infra. Building @alt-research and applied cryptography.","2026-11-11 08:47:40",{"source":8,"skillName":5,"commands":60,"prompt":70,"zipAvailable":71},[61,64,67],{"tool":62,"command":63},"npx","npx skills add jiayaoqijia\u002Fcryptoskill --skill rocketpool-governance",{"tool":65,"command":66},"bunx","bunx skills add jiayaoqijia\u002Fcryptoskill --skill rocketpool-governance",{"tool":68,"command":69},"pnpm","pnpm dlx skills add jiayaoqijia\u002Fcryptoskill --skill rocketpool-governance","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002FSKILL.md",true,[73,79,83,87,91,95,99,103,107,111,115,119,123,127,131,135,139,143,147,151,155,159,163,167,171,175,181,185],{"path":74,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":77,"sourceHtmlUrl":78},"assets\u002Fabis\u002FrocketDAONodeTrusted.json","ASSET","资产文件",8125,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrusted.json",{"path":80,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":81,"sourceHtmlUrl":82},"assets\u002Fabis\u002FrocketDAONodeTrustedActions.json",4652,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrustedActions.json",{"path":84,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":85,"sourceHtmlUrl":86},"assets\u002Fabis\u002FrocketDAONodeTrustedProposals.json",4288,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrustedProposals.json",{"path":88,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":89,"sourceHtmlUrl":90},"assets\u002Fabis\u002FrocketDAONodeTrustedSettingsMembers.json",3486,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrustedSettingsMembers.json",{"path":92,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":93,"sourceHtmlUrl":94},"assets\u002Fabis\u002FrocketDAONodeTrustedSettingsMinipool.json",3862,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrustedSettingsMinipool.json",{"path":96,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":97,"sourceHtmlUrl":98},"assets\u002Fabis\u002FrocketDAONodeTrustedSettingsProposals.json",2999,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrustedSettingsProposals.json",{"path":100,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":101,"sourceHtmlUrl":102},"assets\u002Fabis\u002FrocketDAONodeTrustedSettingsRewards.json",2311,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrustedSettingsRewards.json",{"path":104,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":105,"sourceHtmlUrl":106},"assets\u002Fabis\u002FrocketDAONodeTrustedUpgrade.json",7962,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAONodeTrustedUpgrade.json",{"path":108,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":109,"sourceHtmlUrl":110},"assets\u002Fabis\u002FrocketDAOProposal.json",10972,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProposal.json",{"path":112,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":113,"sourceHtmlUrl":114},"assets\u002Fabis\u002FrocketDAOProtocol.json",15244,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocol.json",{"path":116,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":117,"sourceHtmlUrl":118},"assets\u002Fabis\u002FrocketDAOProtocolActions.json",460,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolActions.json",{"path":120,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":121,"sourceHtmlUrl":122},"assets\u002Fabis\u002FrocketDAOProtocolProposal.json",16009,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolProposal.json",{"path":124,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":125,"sourceHtmlUrl":126},"assets\u002Fabis\u002FrocketDAOProtocolProposals.json",12008,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolProposals.json",{"path":128,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":129,"sourceHtmlUrl":130},"assets\u002Fabis\u002FrocketDAOProtocolSettingsDeposit.json",5426,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsDeposit.json",{"path":132,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":133,"sourceHtmlUrl":134},"assets\u002Fabis\u002FrocketDAOProtocolSettingsInflation.json",3031,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsInflation.json",{"path":136,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":137,"sourceHtmlUrl":138},"assets\u002Fabis\u002FrocketDAOProtocolSettingsMinipool.json",7188,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsMinipool.json",{"path":140,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":141,"sourceHtmlUrl":142},"assets\u002Fabis\u002FrocketDAOProtocolSettingsNetwork.json",10341,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsNetwork.json",{"path":144,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":145,"sourceHtmlUrl":146},"assets\u002Fabis\u002FrocketDAOProtocolSettingsNode.json",5641,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsNode.json",{"path":148,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":149,"sourceHtmlUrl":150},"assets\u002Fabis\u002FrocketDAOProtocolSettingsProposals.json",5613,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsProposals.json",{"path":152,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":153,"sourceHtmlUrl":154},"assets\u002Fabis\u002FrocketDAOProtocolSettingsRewards.json",5340,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsRewards.json",{"path":156,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":157,"sourceHtmlUrl":158},"assets\u002Fabis\u002FrocketDAOProtocolSettingsSecurity.json",4880,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolSettingsSecurity.json",{"path":160,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":161,"sourceHtmlUrl":162},"assets\u002Fabis\u002FrocketDAOProtocolVerifier.json",11273,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOProtocolVerifier.json",{"path":164,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":165,"sourceHtmlUrl":166},"assets\u002Fabis\u002FrocketDAOSecurity.json",2787,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOSecurity.json",{"path":168,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":169,"sourceHtmlUrl":170},"assets\u002Fabis\u002FrocketDAOSecurityActions.json",2835,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOSecurityActions.json",{"path":172,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":173,"sourceHtmlUrl":174},"assets\u002Fabis\u002FrocketDAOSecurityProposals.json",4484,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Fassets\u002Fabis\u002FrocketDAOSecurityProposals.json",{"path":176,"resourceType":177,"resourceTypeDesc":178,"sizeBytes":179,"sourceHtmlUrl":180},"references\u002Faddresses.json","REFERENCE","参考文档",4656,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002Freferences\u002Faddresses.json",{"path":182,"resourceType":177,"resourceTypeDesc":178,"sizeBytes":183,"sourceHtmlUrl":184},"SOURCE.md",179,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002FSOURCE.md",{"path":186,"resourceType":177,"resourceTypeDesc":178,"sizeBytes":187,"sourceHtmlUrl":188},"TRUST.auto.yaml",2197,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fdefi\u002Frocketpool-official-governance\u002FTRUST.auto.yaml",[190,219,242,260,273,283],{"skillNo":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":194,"licenseFileUrl":195,"sourceHtmlUrl":196,"categories":197,"keywords":198,"publishedAt":45},"01M712C436EQYE43342Q4E7GG1","recipe-performance","Diagnose a specific MetaMask user flow's real-app performance and Sentry critical-user-flow telemetry with deterministic mm-harness recipes. Use for CUF boundaries, cold\u002Fwarm\u002Fbackground-resume behavior, latency regressions, lifecycle tags, duplicate or blocking network requests, long tasks, layout\u002Fpaint cost, screen redraws, React rerenders, or browser trace analysis where tests alone cannot prove the real app.","MIT","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FSKILL.md",[],[199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218],"performance","recipe performance","recipe","mm","sentry","harness","app","deterministic","recipes","flow","cold","critical","analysis","tasks","react","browser","layout","screen","network","metamask",{"skillNo":220,"name":221,"nameZh":6,"description":222,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":223,"licenseFileUrl":224,"sourceHtmlUrl":225,"categories":226,"keywords":227,"publishedAt":45},"01M70XT2F8A5CQZ81JBP98KSW3","mexc-spot-websocket","MEXC Spot WebSocket workflows for public streams, protobuf handling, depth maintenance, listen keys, and private streams without exposing API keys.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FSKILL.md",[],[228,229,230,231,232,233,234,235,236,237,238,239,240,241],"mexc spot websocket","spot","websocket","api","workflows","public","listen","streams","depth","keys","for","api keys","maintenance","protobuf",{"skillNo":243,"name":244,"nameZh":6,"description":245,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":223,"licenseFileUrl":246,"sourceHtmlUrl":247,"categories":248,"keywords":249,"publishedAt":45},"01M70XT0MBXN3WZY1BKN0CPNKR","mexc-spot-rest","MEXC Spot REST workflows for public data, signed account requests, orders, wallet\u002Fadmin actions, and secure signing without exposing API keys.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FSKILL.md",[],[250,229,251,252,253,254,255,239,238,237,256,257,258,233,259,232,231],"mexc spot rest","REST","admin","signing","Wallet","requests","actions","secure","data","orders",{"skillNo":261,"name":262,"nameZh":6,"description":263,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":223,"licenseFileUrl":264,"sourceHtmlUrl":265,"categories":266,"keywords":267,"publishedAt":45},"01M70XSYSVZ2N0N91XCAR2CAK0","mexc-futures-websocket","MEXC Futures WebSocket workflows for public streams, private account\u002Forder\u002Fposition streams, ping\u002Fpong, subscriptions, and depth maintenance.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FSKILL.md",[],[268,269,230,270,271,240,238,272,236,235,233,232],"mexc futures websocket","futures","position","ping","subscriptions",{"skillNo":274,"name":275,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":194,"licenseFileUrl":276,"sourceHtmlUrl":277,"categories":278,"keywords":279,"publishedAt":45},"01M6H0ZWHVE5W04WG2DKQE2SQC","0xklen-version-and-refresh-sanctions-lists","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FSKILL.md",[],[280,281,282],"refresh","0xklen version and refresh sanctions lists","version",{"skillNo":284,"name":285,"nameZh":6,"description":286,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":194,"licenseFileUrl":287,"sourceHtmlUrl":288,"categories":289,"keywords":290,"publishedAt":45},"01M6H0Z28Q3R8J0S799GJQWXM3","verify-tests-cover-changed-lines","Use when a PR adds code that the existing suite may not exercise. Measures patch coverage — the share of newly changed lines hit by tests — before approving.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FSKILL.md",[],[291,292,293,294,295,296,297,298,299,300,301],"tests","cover","verify tests cover changed lines","verify","coverage","pr","exercise","use","patch","code","share"]