@gearbox-protocol/deploy-tools 4.7.0-next.3 → 4.7.0-next.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.mjs +55 -21
  2. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -347069,18 +347069,18 @@ var AddressProviderV1Visitor = class extends AbstractVisitor {
347069
347069
  // ../../packages/node/dist/tree/visitors/AddressProviderV3Visitor.js
347070
347070
  var AddressProviderV3Visitor = class extends AbstractVisitor {
347071
347071
  async _visit({ address, lastVisitBlock, discoveryBlock }, provider, block) {
347072
- const contract = IAddressProviderV3__factory.connect(address, provider);
347073
- const events = await contract.queryFilter(contract.filters.SetAddress(), lastVisitBlock ? lastVisitBlock + 1 : discoveryBlock, block);
347072
+ const ap = IAddressProviderV3__factory.connect(address, provider);
347073
+ const events = await ap.queryFilter(ap.filters.SetAddress(), lastVisitBlock ? lastVisitBlock + 1 : discoveryBlock, block);
347074
347074
  const result = [];
347075
347075
  for (const evt of events) {
347076
347076
  const { key, value, version: version5 } = evt.args;
347077
- let contract2 = decodeBytes32String2(key);
347078
- switch (contract2) {
347077
+ let contract = decodeBytes32String2(key);
347078
+ switch (contract) {
347079
347079
  case "ADDRESS_PROVIDER":
347080
347080
  if (value.toLowerCase() === address.toLowerCase()) {
347081
347081
  continue;
347082
347082
  }
347083
- contract2 = "ADDRESS_PROVIDER_V1";
347083
+ contract = "ADDRESS_PROVIDER_V1";
347084
347084
  break;
347085
347085
  case "CONTRACTS_REGISTER":
347086
347086
  break;
@@ -347105,20 +347105,26 @@ var AddressProviderV3Visitor = class extends AbstractVisitor {
347105
347105
  case "ZAPPER_REGISTER":
347106
347106
  break;
347107
347107
  case "DATA_COMPRESSOR":
347108
- contract2 = "DATA_COMPRESSOR_V1";
347108
+ contract = "DATA_COMPRESSOR_V1";
347109
347109
  break;
347110
347110
  case "PRICE_ORACLE":
347111
- contract2 = "PRICE_ORACLE_V2";
347111
+ contract = "PRICE_ORACLE_V2";
347112
347112
  break;
347113
347113
  case "CONTROLLER_TIMELOCK":
347114
- contract2 = "CONTROLLER_TIMELOCK_V3";
347114
+ contract = "CONTROLLER_TIMELOCK_V3";
347115
+ break;
347116
+ case "DEGEN_NFT":
347117
+ contract = "DEGEN_NFT";
347118
+ break;
347119
+ case "ZERO_PRICE_FEED":
347120
+ contract = "PRICE_FEED_ZERO_ORACLE";
347115
347121
  break;
347116
347122
  default:
347117
- throw new Error(`unknow address provider key '${contract2}'`);
347123
+ throw new Error(`unknown address provider key '${contract}'`);
347118
347124
  }
347119
347125
  const entry = {
347120
347126
  address: value.toLowerCase(),
347121
- contract: contract2,
347127
+ contract,
347122
347128
  discoveryBlock: evt.blockNumber,
347123
347129
  version: Number(version5)
347124
347130
  };
@@ -350370,6 +350376,7 @@ var CONTRACT_NAME_TO_TYPE = new Map([
350370
350376
  ["CurveCryptoLPPriceFeed", "PRICE_FEED_CURVE_CRYPTO_ORACLE"],
350371
350377
  ["DataCompressorV2_10", "DATA_COMPRESSOR_V210"],
350372
350378
  ["DataCompressorV3_00", "DATA_COMPRESSOR_V3"],
350379
+ ["DataCompressorV3", "DATA_COMPRESSOR_V3"],
350373
350380
  ["DegenNFTV2", "DEGEN_NFT"],
350374
350381
  ["FarmingPool", "ONE_INCH_FARMING_POOL"],
350375
350382
  ["GaugeV3", "GAUGE_V3"],
@@ -350504,7 +350511,7 @@ var UpdateParser = class extends ProviderBase {
350504
350511
  await this.init();
350505
350512
  const { batchDir, safeTxHashes } = opts;
350506
350513
  if (batchDir) {
350507
- await this.#parseBatchDir(batchDir);
350514
+ await this.#parseBatchDir(batchDir, opts.unsafeMainnetMeta);
350508
350515
  } else {
350509
350516
  await this.#parseSafeTxHashes(safeTxHashes);
350510
350517
  }
@@ -350518,18 +350525,23 @@ var UpdateParser = class extends ProviderBase {
350518
350525
  this.logger.warn("no safe transactions to parse");
350519
350526
  return;
350520
350527
  }
350528
+ await this.metaRepo.loadFromRepo();
350521
350529
  for (let i = 0; i < txs.length; i++) {
350522
350530
  const parsed = await this.#parseNormalizedBatch(normalizeSafeApiBatch(txs[i]), i, total);
350523
350531
  this.#output.batches.push(parsed);
350524
350532
  }
350525
350533
  }
350526
- async #parseBatchDir(dir) {
350534
+ async #parseBatchDir(dir, unsafeMainnetMeta = false) {
350527
350535
  const batchStat = await stat(dir);
350528
350536
  if (!batchStat.isDirectory()) {
350529
350537
  throw new Error(`'${dir}' is not a directory`);
350530
350538
  }
350531
350539
  const batches = await loadBatchDir(dir);
350532
350540
  await this.metaRepo.loadFromDir(dir);
350541
+ if (unsafeMainnetMeta) {
350542
+ this.logger.warn(`unsafe: loading mainnet metafiles from repo`);
350543
+ await this.metaRepo.loadFromRepo();
350544
+ }
350533
350545
  if (!batches?.length) {
350534
350546
  throw new Error(`no batch files found in ${dir}`);
350535
350547
  }
@@ -350616,8 +350628,8 @@ var ZeroLT = class extends ProviderBase {
350616
350628
  #dc210;
350617
350629
  #dc300;
350618
350630
  #configrator;
350619
- async setLtZero() {
350620
- this.logger.info("running zero lt script");
350631
+ async setLtZero(opts) {
350632
+ this.logger.info(`running zero lt script on with cm ${opts.cm}`);
350621
350633
  await this.init();
350622
350634
  const addressProvider = IAddressProviderV3__factory.connect(this.address("ADDRESS_PROVIDER"), this.provider);
350623
350635
  this.logger?.debug(`addressProvider: ${this.address("ADDRESS_PROVIDER")}`);
@@ -350631,10 +350643,7 @@ var ZeroLT = class extends ProviderBase {
350631
350643
  this.#acl = IACL__factory.connect(aclAddr, this.provider);
350632
350644
  this.#configrator = await this.#acl.owner();
350633
350645
  this.logger?.debug("configurator: ", this.#configrator);
350634
- const [cmV2s, cmV3s] = await Promise.all([
350635
- this.#dc210.getCreditManagersV2List(),
350636
- this.#dc300.getCreditManagersV3List()
350637
- ]);
350646
+ const [cmV2s, cmV3s] = await this.#loadCMs(opts.cm);
350638
350647
  this.logger.debug(`managers: ${cmV2s.length} v2, ${cmV3s.length} v3`);
350639
350648
  for (const i of cmV2s) {
350640
350649
  await this.#setOnV2(i);
@@ -350700,6 +350709,25 @@ var ZeroLT = class extends ProviderBase {
350700
350709
  }
350701
350710
  logger2.info("zero lt OK for CM " + cm.addr);
350702
350711
  }
350712
+ async #loadCMs(cmAddr) {
350713
+ if (!cmAddr) {
350714
+ return Promise.all([
350715
+ this.#dc210.getCreditManagersV2List(),
350716
+ this.#dc300.getCreditManagersV3List()
350717
+ ]);
350718
+ }
350719
+ const cm = ICreditManagerV3__factory.connect(cmAddr, this.provider);
350720
+ const v = await cm.version();
350721
+ if (v >= 200 && v <= 299) {
350722
+ const cmV2 = await this.#dc210.getCreditManagerData(cmAddr);
350723
+ return [[cmV2], []];
350724
+ }
350725
+ if (v >= 300 && v <= 399) {
350726
+ const cmV3 = await this.#dc300.getCreditManagerData(cmAddr);
350727
+ return [[], [cmV3]];
350728
+ }
350729
+ return [[], []];
350730
+ }
350703
350731
  };
350704
350732
 
350705
350733
  // src/commands/options.ts
@@ -351792,7 +351820,7 @@ function getRenderer(opts) {
351792
351820
  }
351793
351821
 
351794
351822
  // package.json
351795
- var version3 = "4.7.0-next.3";
351823
+ var version3 = "4.7.0-next.4";
351796
351824
 
351797
351825
  // src/version.ts
351798
351826
  var version_default = version3;
@@ -351811,6 +351839,12 @@ function parse() {
351811
351839
  "--safe-tx-hashes [hash...]",
351812
351840
  "Safe tx hashes to get from safe api and verify"
351813
351841
  )
351842
+ ).addOption(
351843
+ new Option(
351844
+ "--unsafe-mainnet-meta",
351845
+ // TODO: remove me when we fix audits in meta
351846
+ "Load meta from repo even when parsing batches from json"
351847
+ )
351814
351848
  ).addOption(new Option("--renderer [cli|html]", "cli or html")).addOption(
351815
351849
  new Option(
351816
351850
  "-i, --interactive",
@@ -352306,9 +352340,9 @@ function warpTime() {
352306
352340
 
352307
352341
  // src/commands/zero-lt.ts
352308
352342
  function zeroLT() {
352309
- return new Command().name("zero-lt").description("sets LTs to zero on credit managers").addOption(RpcURL(true)).action(async (opts) => {
352343
+ return new Command().name("zero-lt").description("sets LTs to zero on credit managers").addOption(RpcURL(true)).addOption(new Option("--cm [address]", "Single credit manager option")).action(async (opts) => {
352310
352344
  const zlt = new ZeroLT(opts);
352311
- await zlt.setLtZero();
352345
+ await zlt.setLtZero(opts);
352312
352346
  });
352313
352347
  }
352314
352348
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/deploy-tools",
3
3
  "description": "Gearbox deploy tools",
4
- "version": "4.7.0-next.3",
4
+ "version": "4.7.0-next.4",
5
5
  "homepage": "https://gearbox.fi",
6
6
  "keywords": [
7
7
  "gearbox"