Skip to content

Conversation

@stwiname
Copy link
Collaborator

@stwiname stwiname commented Nov 13, 2025

Description

Previously there was a hard coded list of subgraph network names to chain ids, now it will fetch the networks from a registry on github.

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Checklist

  • I have tested locally
  • I have performed a self review of my changes
  • Updated any relevant documentation
  • Linked to any relevant issues
  • I have added tests relevant to my changes
  • Any dependent changes have been merged and published in downstream modules
  • My code is up to date with the base branch
  • I have updated relevant changelogs. We suggest using chan

Summary by CodeRabbit

  • New Features

    • Added dynamic network mappings for subgraph migration, including support for additional networks (e.g., Lens).
  • Bug Fixes

    • Fixed transaction handler filtering for subgraph migrations.
  • Refactor

    • Chain ID resolution now uses an asynchronous, dynamic lookup against the Graph networks registry instead of static mappings.
  • Tests

    • Migration tests updated to handle asynchronous network resolution.
  • Chores

    • CI adjusted to disable Yarn hardened mode in PR checks.

@coderabbitai
Copy link

coderabbitai bot commented Nov 13, 2025

Walkthrough

Replaced a hard-coded network→chain-id mapping with runtime lookups from the Graph networks registry; converted related functions from synchronous to asynchronous and updated callers and tests accordingly. Minor type/refactor changes to Ethereum handler filters and CI env settings were also applied.

Changes

Cohort / File(s) Summary
Changelog
packages/cli/CHANGELOG.md
Added Unreleased entries: "Dynamic networks mapping for subgraph migration" and "Subgraph migration transaction handler filter".
Constants Removal
packages/cli/src/controller/migrate/constants.ts
Removed exported graphNetworkNameChainId hard-coded mapping for network names → chain IDs.
Network resolution logic
packages/cli/src/controller/migrate/migrate-controller.ts
Converted getChainIdByNetworkName from synchronous string return to Promise<string>; now fetches network info from the Graph networks registry and extracts CAIP2/chainId at runtime.
Manifest extraction
packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.ts
Made extractNetworkFromManifest async (Promise<ChainInfo>) and awaited getChainIdByNetworkName.
CLI command
packages/cli/src/commands/migrate.ts
Updated migrateSubgraphAdapter to await the asynchronous extractNetworkFromManifest.
Tests — migrate controller
packages/cli/src/controller/migrate/migrate-controller.spec.ts
Updated tests to async/await style and promise assertions (resolves/rejects); added a valid 'lens' case; adapted to async getChainIdByNetworkName.
Tests — manifest controller
packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.spec.ts
Updated tests to await extractNetworkFromManifest and use rejects.toThrow for async error assertions.
Ethereum handler filters
packages/cli/src/controller/migrate/manifest/ethereum.ts
Added imports for EthereumTransactionFilter/EthereumLogFilter; adjusted event and call handler filter shapes and added type assertions (field rename ffunction for call filters).
CI workflow
.github/workflows/pr.yml
Added YARN_ENABLE_HARDENED_MODE: 0 env var to code-style and coverage jobs.

Sequence Diagram

sequenceDiagram
    participant CLI as migrate.ts\n(migrateSubgraphAdapter)
    participant Manifest as migrate-manifest.controller.ts\n(extractNetworkFromManifest)
    participant Controller as migrate-controller.ts\n(getChainIdByNetworkName)
    participant Registry as Graph Networks\nRegistry (API)

    rect rgb(240, 250, 240)
    note over Controller,Registry: NEW — dynamic async resolution
    CLI->>Manifest: call extractNetworkFromManifest(manifest)
    activate Manifest
    Manifest->>Controller: await getChainIdByNetworkName(family, name)
    activate Controller
    Controller->>Registry: HTTP GET registry URL
    Registry-->>Controller: return network data (caip2Id / info)
    Controller-->>Controller: parse caip2Id → chainId
    Controller-->>Manifest: resolve chainId
    deactivate Controller
    Manifest-->>CLI: resolve ChainInfo
    deactivate Manifest
    end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Pay attention to:
    • packages/cli/src/controller/migrate/migrate-controller.ts: fetch URL, response parsing, and error messages.
    • Tests in migrate-controller.spec.ts and migrate-manifest.controller.spec.ts: ensure fetches are mocked and async assertions cover failure paths.
    • Search for remaining references to removed graphNetworkNameChainId.
    • Type changes in ethereum.ts (filter field rename and assertions).

Poem

🐰 I hopped from maps of old and gray,
to fetch new paths along the way.
Async carrots, registry treats,
no more hard-coded, dusty sheets.
Promise nibbles — migration's bright day! 🥕

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 14.29% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: replacing hard-coded network mappings with dynamic fetching from a registry for subgraph migration.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch migrate-dynamic-network-list

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b2a3ee2 and 03c13ae.

📒 Files selected for processing (2)
  • packages/cli/CHANGELOG.md (1 hunks)
  • packages/cli/src/controller/migrate/manifest/ethereum.ts (3 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • packages/cli/CHANGELOG.md
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: Coverage report
  • GitHub Check: code-style
🔇 Additional comments (3)
packages/cli/src/controller/migrate/manifest/ethereum.ts (3)

11-12: LGTM: Type imports support type safety improvements.

These imports enable the satisfies type assertions added for event and call handler filters.


47-49: LGTM: Type assertion ensures filter conforms to EthereumLogFilter.

The satisfies operator provides compile-time type safety while preserving the existing topics structure.


57-59: Field rename verified and properly implemented.

The source type definition in types.ts line 55 confirms that callHandlers has a function property. The migration code in ethereum.ts line 58 correctly accesses this as h.function, and the type assertion validates the filter structure. No references to an old f field exist in the codebase—the rename is complete and consistent.


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
packages/cli/src/controller/migrate/migrate-controller.ts (1)

71-83: Handle non-200 responses from the registry

Right now we call res.json() even if GitHub replies with a 404/403/5xx body. That ends up throwing a JSON parse error and we rethrow the generic “Could not find chainId” message, masking the real failure reason. It would be safer to gate on res.ok (and validate that caip2Id is present) so we surface the actual status code and avoid parsing arbitrary HTML/text responses. Suggested shape:

   const res = await fetch(url);
+  if (!res.ok) {
+    throw new Error(
+      `Failed to load registry entry for ${graphFamily}/${chainName}: ${res.status} ${res.statusText}`
+    );
+  }
-  const data = (await res.json()) as {caip2Id: string};
+  const data = (await res.json()) as {caip2Id?: string};
+  if (typeof data.caip2Id !== 'string') {
+    throw new Error(`Malformed registry entry for ${graphFamily}/${chainName}`);
+  }

This gives callers actionable diagnostics and prevents us from treating a throttling page as valid JSON.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 71913be and bf3b7ca.

📒 Files selected for processing (7)
  • packages/cli/CHANGELOG.md (1 hunks)
  • packages/cli/src/commands/migrate.ts (1 hunks)
  • packages/cli/src/controller/migrate/constants.ts (0 hunks)
  • packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.spec.ts (1 hunks)
  • packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.ts (2 hunks)
  • packages/cli/src/controller/migrate/migrate-controller.spec.ts (1 hunks)
  • packages/cli/src/controller/migrate/migrate-controller.ts (1 hunks)
💤 Files with no reviewable changes (1)
  • packages/cli/src/controller/migrate/constants.ts
🧰 Additional context used
🧬 Code graph analysis (4)
packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.ts (2)
packages/cli/src/controller/migrate/types.ts (2)
  • SubgraphProject (60-73)
  • ChainInfo (17-20)
packages/cli/src/controller/migrate/migrate-controller.ts (1)
  • getChainIdByNetworkName (66-86)
packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.spec.ts (1)
packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.ts (1)
  • extractNetworkFromManifest (52-68)
packages/cli/src/commands/migrate.ts (1)
packages/cli/src/controller/migrate/manifest/migrate-manifest.controller.ts (1)
  • extractNetworkFromManifest (52-68)
packages/cli/src/controller/migrate/migrate-controller.spec.ts (1)
packages/cli/src/controller/migrate/migrate-controller.ts (1)
  • getChainIdByNetworkName (66-86)

@github-actions
Copy link
Contributor

github-actions bot commented Nov 13, 2025

Coverage report for .

Caution

Test run failed

St.
Category Percentage Covered / Total
🟢 Statements
87.55% (+17.44% 🔼)
70961/81051
🟢 Branches
80.62% (+2.33% 🔼)
3370/4180
🟡 Functions
66.16% (+3.66% 🔼)
1263/1909
🟢 Lines
87.55% (+17.44% 🔼)
70961/81051
Show new covered files 🐣
St.
File Statements Branches Functions Lines
🔴
... / utils.ts
46.2% 74.07% 35.71% 46.2%
🔴
... / build-manifest.ts
42.47% 100% 25% 42.47%
🟡
... / build.ts
68.82% 70% 75% 68.82%
🟡
... / import-abi.ts
71.28% 48% 75% 71.28%
🔴
... / mcp.ts
33.33% 100% 0% 33.33%
🟢
... / migrate.ts
81.37% 30% 75% 81.37%
🔴
... / add-deployment-boost.ts
45.54% 100% 0% 45.54%
🔴
... / connect-wallet.ts
50.68% 100% 25% 50.68%
🔴
... / create-api-key.ts
50.68% 100% 25% 50.68%
🔴
... / create-deployment.ts
41.73% 100% 0% 41.73%
🔴
... / create-flex-plan.ts
38.64% 100% 25% 38.64%
🔴
... / create-project.ts
32.35% 100% 0% 32.35%
🔴
... / disconnect-wallet.ts
41.46% 100% 25% 41.46%
🔴
... / list-account-boosts.ts
42.05% 100% 25% 42.05%
🔴
... / list-api-keys.ts
47.95% 100% 25% 47.95%
🔴
... / list-deployment-boosts.ts
42.86% 100% 25% 42.86%
🔴
... / list-deployment-indexers.ts
39.76% 100% 25% 39.76%
🔴
... / list-deployments.ts
42.03% 100% 25% 42.03%
🔴
... / list-flex-plans.ts
37.23% 100% 25% 37.23%
🔴
... / list-projects.ts
42.39% 100% 25% 42.39%
🔴
... / remove-api-key.ts
46.15% 100% 25% 46.15%
🔴
... / remove-deployment-boost.ts
47.47% 100% 0% 47.47%
🔴
... / stop-flex-plan.ts
45.12% 100% 25% 45.12%
🔴
... / swap-deployment-boost.ts
46.85% 100% 0% 46.85%
🔴
... / create-deployment.ts
34.01% 100% 25% 34.01%
🔴
... / create-multichain-deployment.ts
30.99% 100% 25% 30.99%
🔴
... / create-project.ts
52.27% 100% 25% 52.27%
🔴
... / delete-deployment.ts
55.56% 100% 25% 55.56%
🔴
... / delete-project.ts
46.55% 100% 25% 46.55%
🔴
... / promote-deployment.ts
57.58% 100% 25% 57.58%
🟢
... / migrate-abis.controller.ts
95% 87.5% 100% 95%
🟢
... / constants.ts
100% 100% 100% 100%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / ethereum.ts
82.72% 83.33% 100% 82.72%
🟢
... / migrate-manifest.controller.ts
88.31% 73.33% 88.89% 88.31%
🟢
... / migrate-mapping.controller.ts
100% 100% 100% 100%
🟢
... / migrate-controller.ts
90.63% 83.33% 100% 90.63%
🟢
... / migrate.fixtures.ts
100% 100% 100% 100%
🟢
... / migrate-schema.controller.ts
97.23% 79.75% 100% 97.23%
🔴
... / types.ts
0% 0% 0% 0%
🟢
... / base-types.ts
100% 100% 100% 100%
🟢
... / deployments.generated.ts
100% 100% 100% 100%
🟢
... / deploymentsBooster.generated.ts
100% 100% 100% 100%
🔴
... / flexPlan.generated.ts
0% 0% 0% 0%
🟢
... / projects.generated.ts
100% 100% 100% 100%
🔴
... / constants.ts
40.24% 100% 0% 40.24%
🔴
... / client.ts
29.08% 100% 0% 29.08%
🔴
... / consumer-host-service-api.ts
44.1% 100% 0% 44.1%
🟡
... / schemas.ts
63.93% 100% 20% 63.93%
🔴
... / contract-errors.ts
0% 0% 0% 0%
🔴
... / json-file-store.ts
42.37% 100% 0% 42.37%
🔴
... / list-account-boosts.ts
41.18% 100% 0% 41.18%
🔴
... / list-deployment-boosts.ts
38.33% 100% 0% 38.33%
🔴
... / list-deployment-indexers.ts
46.6% 100% 0% 46.6%
🔴
... / list-deployments.ts
38.33% 100% 0% 38.33%
🔴
... / list-flex-plans.ts
45% 100% 0% 45%
🔴
... / list-projects.ts
46.55% 100% 0% 46.55%
🔴
... / utils.ts
18.18% 100% 0% 18.18%
🔴
... / walletconnect-signer.ts
24.53% 100% 0% 24.53%
🟢
... / createProject.fixtures.ts
95% 81.82% 100% 95%
🟢
... / config.ts
100% 100% 100% 100%
🟢
... / index.ts
100% 100% 100% 100%
🟡
... / moduleLoader.ts
60% 33.33% 100% 60%
🟢
... / types.ts
100% 100% 100% 100%
🟢
... / env.ts
93.75% 75% 100% 93.75%
🟢
... / etherscan.ts
88.75% 72.22% 100% 88.75%
🟢
... / jsonToTable.ts
93.44% 90.91% 100% 93.44%
🟢
... / networkFamily.ts
92.59% 88.89% 100% 92.59%
🟢
... / IPFSHTTPClientLite.ts
95.59% 80% 88.89% 95.59%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / utils.ts
92% 66.67% 100% 92%
🟢
... / admin.controller.ts
98.52% 96% 78.57% 98.52%
🟢
... / blockRange.ts
88.89% 100% 80% 88.89%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / blockchain.service.ts
100% 100% 100% 100%
🟢
... / SubqueryProject.ts
96.53% 83.33% 83.33% 96.53%
🟡
... / factory.ts
78.31% 66.67% 100% 78.31%
🟢
... / core.module.ts
100% 100% 100% 100%
🟢
... / dictionary.fixtures.ts
100% 100% 100% 100%
🟢
... / GlobalData.entity.ts
100% 100% 100% 100%
🟢
... / monitor.service.ts
93.97% 85.88% 96.97% 93.97%
🟢
... / multiChainRewind.service.ts
98.02% 91.67% 100% 98.02%
🔴
... / sandbox.service.ts
49.32% 50% 33.33% 49.32%
🟢
... / baseCache.service.ts
94.59% 91.67% 83.33% 94.59%
🟢
... / baseStoreModel.service.ts
93.22% 84.62% 100% 93.22%
🟢
... / cacheable.ts
89.29% 75% 100% 89.29%
🟢
... / csvStore.ts
91.67% 73.68% 100% 91.67%
🟢
... / exporter.ts
91.67% 71.43% 71.43% 91.67%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / global.ts
97.5% 92.59% 87.5% 97.5%
🔴
... / index.ts
0% 0% 0% 0%
🟢
... / index.ts
100% 100% 100% 100%
🟡
... / cacheMetadata.ts
79.57% 63.41% 92.86% 79.57%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / metadata.ts
86.75% 100% 66.67% 86.75%
🟢
... / utils.ts
100% 100% 100% 100%
🟢
... / cacheModel.ts
87.05% 82.72% 89.47% 87.05%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / model.ts
89.94% 73.91% 100% 89.94%
🟢
... / utils.ts
100% 100% 100% 100%
🟢
... / cachePoi.ts
95.79% 89.47% 100% 95.79%
🟢
... / index.ts
100% 100% 100% 100%
🔴
... / poi.ts
54.46% 71.43% 44.44% 54.46%
🟢
... / setValueModel.ts
85.26% 83.78% 78.57% 85.26%
🟢
... / storeCache.service.ts
84.18% 75.76% 83.33% 84.18%
🟡
... / storeModel.service.ts
74.73% 53.85% 71.43% 74.73%
🟢
... / types.ts
100% 100% 100% 100%
🟢
... / utils.ts
93.33% 66.67% 100% 93.33%
🟢
... / worker.core.module.ts
100% 100% 0% 100%
🔴
... / worker.monitor.service.ts
58.14% 100% 0% 58.14%
🟢
... / meta.controller.ts
86.67% 100% 0% 86.67%
🟡
... / meta.module.ts
60% 100% 0% 60%
🟢
... / process.ts
80.65% 57.14% 80% 80.65%
🔴
... / foreceClean.init.ts
47.62% 100% 0% 47.62%
🔴
... / reindex.init.ts
33.33% 100% 0% 33.33%
🟢
... / testing.core.module.ts
100% 100% 100% 100%
🟢
... / env.ts
87.76% 66.67% 100% 87.76%
🟢
... / autoQueue.ts
95.34% 90.2% 87.5% 95.34%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / queue.ts
87.5% 92.86% 83.33% 87.5%
🟢
... / rampQueue.ts
95.74% 91.67% 100% 95.74%
🟢
... / string.ts
100% 95.45% 100% 100%
🟡
... / blockchain.service.ts
63.13% 100% 57.14% 63.13%
🔴
... / datasourceProcessors.ts
0% 0% 0% 0%
🔴
... / index.ts
0% 0% 0% 0%
🔴
... / types.ts
0% 0% 0% 0%
🔴
... / networking.ts
31.58% 100% 0% 31.58%
Show files with reduced coverage 🔻
St.
File Statements Branches Functions Lines
🟡
... / index.ts
71.58% (-20.36% 🔻)
66.67% (+41.67% 🔼)
75% (-25% 🔻)
71.58% (-20.36% 🔻)
🔴
... / add.ts
48.44% (-13.63% 🔻)
100%
25% (+25% 🔼)
48.44% (-13.63% 🔻)
🟢
... / publish.ts
80.49% (-8.85% 🔻)
53.33% (-3.81% 🔻)
75% (-25% 🔻)
80.49% (-8.85% 🔻)
🔴
... / add-chain-controller.ts
40.07% (-0% 🔻)
66.67% 30%
40.07% (-0% 🔻)
🟢
... / build-controller.ts
90% (-1.3% 🔻)
59.09% (+1.95% 🔼)
100%
90% (-1.3% 🔻)
🟢
... / codegen-controller.ts
88.19% (-1.2% 🔻)
82.05% (+6.47% 🔼)
100%
88.19% (-1.2% 🔻)
🔴
... / deploy-controller.ts
54.19% (+16.73% 🔼)
72.73% (-5.05% 🔻)
56.25% (+31.25% 🔼)
54.19% (+16.73% 🔼)
🟢
... / generate-controller.ts
95.66% (-1.99% 🔻)
90.91% (-3.12% 🔻)
95.65% (-4.35% 🔻)
95.66% (-1.99% 🔻)
🟡
... / init-controller.ts
76.09% (+5.6% 🔼)
67.65% (-0.35% 🔻)
61.11% (+7.78% 🔼)
76.09% (+5.6% 🔼)
🟢
... / project-controller.ts
83.13% (-14.13% 🔻)
42.86% (-17.14% 🔻)
75% (-25% 🔻)
83.13% (-14.13% 🔻)
🟢
... / publish-controller.ts
82.63% (+2.38% 🔼)
67.5% (-3.61% 🔻)
100%
82.63% (+2.38% 🔼)
🟢
... / http.ts
90.63% (-2.92% 🔻)
75% (+8.33% 🔼)
100%
90.63% (-2.92% 🔻)
🟡
... / utils.ts
76.15% (-4.93% 🔻)
84.48% (+3.78% 🔼)
83.87% (+6.6% 🔼)
76.15% (-4.93% 🔻)
🟡
... / models.ts
76.67% (-22.78% 🔻)
92.31%
0% (-100% 🔻)
76.67% (-22.78% 🔻)
🟢
... / ProjectManifestVersioned.ts
82.19% (-2.74% 🔻)
87.5% (-12.5% 🔻)
53.85% (-4.49% 🔻)
82.19% (-2.74% 🔻)
🔴
... / model.ts
57.71% (-40% 🔻)
100%
33.33% (-38.1% 🔻)
57.71% (-40% 🔻)
🟡
... / models.ts
76.47% (-23.53% 🔻)
100%
0% (-100% 🔻)
76.47% (-23.53% 🔻)
🟡
... / load.ts
64.29% (+5.1% 🔼)
31.25% (-24.31% 🔻)
83.33% (+16.67% 🔼)
64.29% (+5.1% 🔼)
🟢
... / local-reader.ts
100% (+13.95% 🔼)
100% (+37.5% 🔼)
83.33% (-16.67% 🔻)
100% (+13.95% 🔼)
🟢
... / reader.ts
81.58% (-7.89% 🔻)
57.14% (-17.86% 🔻)
100%
81.58% (-7.89% 🔻)
🟢
... / base.ts
86.92% (-11.08% 🔻)
87.5% (-12.5% 🔻)
44.44% (-35.56% 🔻)
86.92% (-11.08% 🔻)
🔴
... / models.ts
56.89% (-43.11% 🔻)
100%
0% (-100% 🔻)
56.89% (-43.11% 🔻)
🟢
... / NodeConfig.ts
89.23% (+0.62% 🔼)
81.43% (+1.8% 🔼)
85.19% (-0.86% 🔻)
89.23% (+0.62% 🔼)
🟢
... / ProjectUpgrade.service.ts
93.92% (+6.85% 🔼)
90.53% (-0.83% 🔻)
96% (+4.7% 🔼)
93.92% (+6.85% 🔼)
🟡
... / configure.module.ts
76.89% (-7.68% 🔻)
54.76% (-9.24% 🔻)
100%
76.89% (-7.68% 🔻)
🟢
... / db.module.ts
89.63% (+1.35% 🔼)
62.5% (-20.83% 🔻)
80%
89.63% (+1.35% 🔼)
🟢
... / migration.ts
86.56% (+4.28% 🔼)
82.61% (+2.88% 🔼)
90% (-0.48% 🔻)
86.56% (+4.28% 🔼)
🟢
... / sequelizeUtil.ts
81.08% (-9.99% 🔻)
69.23% (-1.14% 🔻)
62.5%
81.08% (-9.99% 🔻)
🟢
... / base-block-dispatcher.ts
84.85% (+37.5% 🔼)
83.67% (-16.33% 🔻)
78.26% (+68.26% 🔼)
84.85% (+37.5% 🔼)
🟢
... / worker-block-dispatcher.ts
92.72% (+42.51% 🔼)
87.1% (-12.9% 🔻)
94.12% (+66.84% 🔼)
92.72% (+42.51% 🔼)
🟢
... / coreDictionary.ts
94.87% (-5.13% 🔻)
87.5% (-6.94% 🔻)
87.5% (-12.5% 🔻)
94.87% (-5.13% 🔻)
🟢
... / dictionary.service.ts
85.71% (+0.57% 🔼)
83.78% (-1.93% 🔻)
90.91%
85.71% (+0.57% 🔼)
🟢
... / utils.ts
92.59% (-3.7% 🔻)
69.23% (-24.89% 🔻)
100%
92.59% (-3.7% 🔻)
🟢
... / dictionaryV1.ts
91.74% (-1.49% 🔻)
76.6% (-1.67% 🔻)
100%
91.74% (-1.49% 🔻)
🔴
... / ds-processor.service.ts
41.52% (-20.57% 🔻)
73.33% (-1.67% 🔻)
63.64% (-23.86% 🔻)
41.52% (-20.57% 🔻)
🟢
... / dynamic-ds.service.ts
90.85% (+0.65% 🔼)
63.64% (-3.03% 🔻)
90% (+4.29% 🔼)
90.85% (+0.65% 🔼)
🟢
... / inMemoryCache.service.ts
100% 100%
75% (-25% 🔻)
100%
🔴
... / indexer.manager.ts
32.75% (-0.46% 🔻)
100%
10% (-2.5% 🔻)
32.75% (-0.46% 🔻)
🟢
... / PoiBlock.ts
80.65% (-17.74% 🔻)
57.89% (-38.66% 🔻)
75% (-25% 🔻)
80.65% (-17.74% 🔻)
🟡
... / poi.service.ts
68.28% (+44.36% 🔼)
57.69% (-42.31% 🔻)
88.89% (+60.32% 🔼)
68.28% (+44.36% 🔼)
🔴
... / store.ts
45.98% (+13.77% 🔼)
62.5% (-37.5% 🔻)
33.33% (+33.33% 🔼)
45.98% (+13.77% 🔼)
🔴
... / testing.service.ts
27.22% (-1.35% 🔻)
100% 0%
27.22% (-1.35% 🔻)
🟢
... / unfinalizedBlocks.service.ts
84.71% (+0.73% 🔼)
95% (-1.72% 🔻)
95.45% (+3.79% 🔼)
84.71% (+0.73% 🔼)
🟡
... / worker.builder.ts
79.15% (-0.04% 🔻)
65.38%
70.59% (-9.41% 🔻)
79.15% (-0.04% 🔻)
🟢
... / worker.service.ts
93.16% (+48.52% 🔼)
86.67% (-13.33% 🔻)
100% (+100% 🔼)
93.16% (+48.52% 🔼)
🔴
... / worker.ts
42.13% (-0.32% 🔻)
100% 0%
42.13% (-0.32% 🔻)
🟡
... / worker.unfinalizedBlocks.service.ts
64.91% (-35.09% 🔻)
100%
0% (-100% 🔻)
64.91% (-35.09% 🔻)
🔴
... / event.listener.ts
53.54% (-27.27% 🔻)
100%
0% (-25% 🔻)
53.54% (-27.27% 🔻)
🔴
... / health.controller.ts
55.17% 100%
0% (-50% 🔻)
55.17%
🔴
... / health.service.ts
51.32% (-6.22% 🔻)
100%
0% (-20% 🔻)
51.32% (-6.22% 🔻)
🟡
... / meta.service.ts
68.52% (-1.01% 🔻)
100% (+20% 🔼)
0% (-40% 🔻)
68.52% (-1.01% 🔻)
🔴
... / ready.controller.ts
56.52% 100%
0% (-50% 🔻)
56.52%
🟡
... / ready.service.ts
75% (-16.67% 🔻)
100%
0% (-66.67% 🔻)
75% (-16.67% 🔻)
🟡
... / blocks.ts
69.7% (-30.3% 🔻)
84.62% (-4.27% 🔻)
75% (-25% 🔻)
69.7% (-30.3% 🔻)
🟡
... / project.ts
72.94% (-0.44% 🔻)
74.58%
76.47% (-1.31% 🔻)
72.94% (-0.44% 🔻)
🟢
... / promise.ts
94.92% (+3.15% 🔼)
100% (+13.64% 🔼)
71.43% (-14.29% 🔻)
94.92% (+3.15% 🔼)
🟡
... / reindex.ts
73.33% (+39.29% 🔼)
10% (-90% 🔻)
100% (+100% 🔼)
73.33% (+39.29% 🔼)
🔴
... / yargs.ts
44.68% (-0.81% 🔻)
100% 14.29%
44.68% (-0.81% 🔻)
🟢
... / api.service.ts
86.71% (+3.2% 🔼)
78.33% (+6.11% 🔼)
80% (-6.67% 🔻)
86.71% (+3.2% 🔼)
🟢
... / apiPromise.connection.ts
80% (+10.92% 🔼)
61.54% (-18.46% 🔻)
66.67% (+23.81% 🔼)
80% (+10.92% 🔼)
🔴
... / index.ts
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
🟢
... / substrateDictionary.service.ts
98.15% (+7.58% 🔼)
66.67% (-6.06% 🔻)
100% (+20% 🔼)
98.15% (+7.58% 🔼)
🔴
... / types.ts
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
🟢
... / substrateDictionaryV1.ts
85.33% (-0.15% 🔻)
78.72% (+8.96% 🔼)
84.62% (+1.28% 🔼)
85.33% (-0.15% 🔻)
🟡
... / substrateDictionaryV2.ts
73.03% (-2.48% 🔻)
75% 33.33%
73.03% (-2.48% 🔻)
🔴
... / indexer.manager.ts
47.96% (-9.58% 🔻)
100%
16.67% (+7.58% 🔼)
47.96% (-9.58% 🔻)
🟢
... / runtimeService.ts
95.29% (+3.09% 🔼)
81.82% (-7.07% 🔻)
100% (+20% 🔼)
95.29% (+3.09% 🔼)
🟡
... / types.ts
70.45% (-14.84% 🔻)
100% 0%
70.45% (-14.84% 🔻)
🟢
... / project.ts
88.73% (-0.16% 🔻)
68.18% 87.5%
88.73% (-0.16% 🔻)
🟢
... / buffer.ts
90.24% (-9.76% 🔻)
91.3% (-8.7% 🔻)
90.48% (+6.27% 🔼)
90.24% (-9.76% 🔻)
🟢
... / builder.ts
93.02% (+0.25% 🔼)
82.14% (-0.62% 🔻)
100%
93.02% (+0.25% 🔼)

Test suite run failed

Failed tests: 1/711. Failed suites: 1/116.
  ● etherscan api › Deployment information › can get the deploy height of a contract

    Etherscan API error: Free API access is temporarily unavailable due to unusually high network activity. To maintain uninterrupted service, we recommend upgrading to a paid plan: https://etherscan.io/apis

      24 |       return undefined;
      25 |     }
    > 26 |     throw new Error(`Etherscan API error: ${data.result}`);
         |           ^
      27 |   }
      28 |
      29 |   return data.result;

      at runRequest (packages/cli/src/utils/etherscan.ts:26:11)
      at fetchContractDeployHeight (packages/cli/src/utils/etherscan.ts:69:18)
      at Object.<anonymous> (packages/cli/src/utils/etherscan.spec.ts:41:22)

Report generated by 🧪jest coverage report action from 03c13ae

@stwiname stwiname merged commit b237529 into main Nov 13, 2025
3 of 4 checks passed
@stwiname stwiname deleted the migrate-dynamic-network-list branch November 13, 2025 07:58
@coderabbitai coderabbitai bot mentioned this pull request Nov 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants