MCPcopy Create free account
hub / github.com/circlefin/arc-node / queryProtocolConfig

Function queryProtocolConfig

scripts/hardhat/tasks/query-state.ts:236–276  ·  view source on GitHub ↗
(
  hre: HardhatRuntimeEnvironment,
  client: PublicClient,
)

Source from the content-addressed store, hash-verified

234}
235
236const queryProtocolConfig = async (
237 hre: HardhatRuntimeEnvironment,
238 client: PublicClient,
239): Promise<GenesisConfig['ProtocolConfig']> => {
240 const abiProtocolConfig = hre.artifacts.readArtifactSync('ProtocolConfig').abi
241 const abiAdminProxy = hre.artifacts.readArtifactSync('AdminUpgradeableProxy').abi
242 const protocolConfig = getContract({
243 abi: [...abiProtocolConfig, ...abiAdminProxy],
244 address: protocolConfigAddress,
245 client,
246 }).read
247
248 const [admin, impl, owner, controller, pauser, feeParams, consensusParams] = await Promise.all([
249 protocolConfig.admin(),
250 protocolConfig.implementation(),
251 protocolConfig.owner(),
252 protocolConfig.controller(),
253 protocolConfig.pauser(),
254 protocolConfig.feeParams(),
255 protocolConfig.consensusParams().then((params) => ({
256 timeoutProposeMs: BigInt(params.timeoutProposeMs),
257 timeoutProposeDeltaMs: BigInt(params.timeoutProposeDeltaMs),
258 timeoutPrevoteMs: BigInt(params.timeoutPrevoteMs),
259 timeoutPrevoteDeltaMs: BigInt(params.timeoutPrevoteDeltaMs),
260 timeoutPrecommitMs: BigInt(params.timeoutPrecommitMs),
261 timeoutPrecommitDeltaMs: BigInt(params.timeoutPrecommitDeltaMs),
262 timeoutRebroadcastMs: BigInt(params.timeoutRebroadcastMs),
263 targetBlockTimeMs: BigInt(params.targetBlockTimeMs),
264 })),
265 ])
266
267 return {
268 proxy: { admin },
269 implementation: { address: impl },
270 owner,
271 controller,
272 pauser,
273 feeParams,
274 consensusParams,
275 }
276}
277
278const queryValidatorManagerConfig = async (
279 hre: HardhatRuntimeEnvironment,

Callers 1

query-state.tsFile · 0.85

Calls 1

allMethod · 0.45

Tested by

no test coverage detected