Skip to content

Migrate documentation to HyperIndex V3 API and terminology#911

Merged
DZakh merged 56 commits into
mainfrom
claude/migrate-docs-to-v3-d5Cvt
May 12, 2026
Merged

Migrate documentation to HyperIndex V3 API and terminology#911
DZakh merged 56 commits into
mainfrom
claude/migrate-docs-to-v3-d5Cvt

Conversation

@DZakh
Copy link
Copy Markdown
Member

@DZakh DZakh commented May 11, 2026

Summary

This PR updates the documentation to reflect HyperIndex V3's new API design and terminology. The changes migrate all code examples and configuration references from V2 to V3, including the new indexer module, updated handler registration patterns, and renamed configuration fields.

Key Changes

  • API Migration: Updated all event handler examples from the generated contract-based API (Contract.Event.handler()) to the new unified indexer.onEvent() API
  • Module Imports: Changed imports from generated module to envio module for indexer, types, and utilities
  • Configuration Terminology: Renamed networks to chains throughout config examples and documentation
  • Handler Registration: Updated handler syntax to use object-based configuration ({ contract, event, wildcard?, where? }) instead of method chaining
  • Testing API: Rewrote testing guide to use createTestIndexer() and indexer.process() instead of mock database patterns
  • Removed Features: Removed ReScript code examples and references to deprecated preload_handlers flag (now always enabled in V3)
  • Generated Files: Updated documentation to reflect V3's new .envio/types.d.ts ambient declarations instead of the /generated directory
  • Block Handlers: Updated onBlock API to use indexer.onBlock() with new where callback pattern
  • Dynamic Contracts: Updated contractRegister API to use indexer.contractRegister() with new syntax
  • Removed APIs: Documented removal of Loaders API (replaced by built-in Preload Optimization)

Notable Implementation Details

  • All configuration examples now use chains: instead of networks:
  • Event filter syntax changed from eventFilters to where callback returning { params: [...] }
  • Handler options moved from second parameter to first parameter object
  • Testing now uses Vitest as the recommended framework instead of Mocha
  • Documentation clarifies that preload optimization is always active in V3 with no configuration needed

https://claude.ai/code/session_015CS77Ds8aJDUv4tScUzrGN

Summary by CodeRabbit

  • Documentation

    • Major V3 overhaul: comprehensive migration guide, unified indexer API examples, and 200+ updated network-to-chain docs
    • Many guides rewritten (preload, loaders removed, effects, testing, multichain, RPC/HyperSync, generated files)
  • Configuration Changes

    • Top-level config renamed (networks → chains); handler field removed from contract blocks
    • RPC and reorg options reorganized; preload optimization now always-on; generated types emitted to .envio/

claude added 30 commits May 5, 2026 12:46
Add a second @docusaurus/plugin-content-docs instance (HyperIndexV2)
that mounts docs/HyperIndex at /docs/HyperIndex/v2, alongside the
existing v3 mount at /docs/HyperIndex. Both versions share the same
source content for now.

Add a navbar dropdown to switch between v3 and v2, and swizzle
@theme/DocItem/Layout to render version-specific banners pointing
users at the migration guide.

Drop the stale HyperIndex_versions.json — native Docusaurus versioning
is not used.
Three fixes after the initial commit failed Vercel:

1. Drop disableVersioning:true on both HyperIndex plugins — that flag
   is invalid once HyperIndex_versions.json is gone.

2. The two plugin instances cannot share the same path (webpack tries
   to apply two MDX loader pipelines to the same file and chokes with
   ~300 "Unexpected FunctionDeclaration" errors). Add a
   docs/HyperIndexV2 symlink to docs/HyperIndex and point the v2
   plugin at it — single source, distinct webpack module path.

3. Move v2 from /docs/HyperIndex/v2/* to /docs/v2/HyperIndex/* so the
   route depth matches v3. Existing relative links like
   ../HyperIndex/getting-started now resolve within v2 instead of
   leaking back into v3.

Banner link and navbar dropdown updated to match.
Per request, v2 is now a physical copy of docs/HyperIndex rather
than a symlink. Two adjustments needed for the build to stay green:

- Rewrite /docs/HyperIndex/ absolute links inside the copy to
  /docs/v2/HyperIndex/ so v2 pages reference v2 routes.

- Three absolute .md links target pages that use a frontmatter
  `slug:` to flatten their URL (Advanced/hypersync.md -> /hypersync,
  Advanced/rpc-sync.md -> /rpc-sync, fuel/fuel.md -> /fuel).
  Docusaurus' linkify doesn't rewrite these absolute paths in the
  v2 plugin context, so point them directly at the slug-based route.
Update all envio init command invocations across the HyperIndex V2 docs
to use pnpx envio@2 init so users on the v2 docs install the v2 CLI
explicitly instead of picking up newer majors by default.
The static type:"dropdown" navbar item kept the label fixed on "v3"
even when the user was browsing v2 pages, so the trigger label never
matched the active version.

Replace it with a small custom navbar item that reads useLocation()
and renders the right label (v3 or v2) based on whether the path
starts with /docs/v2/HyperIndex or /docs/HyperIndex. Items are
registered via a swizzled NavbarItem/ComponentTypes so the rest of
Docusaurus' navbar machinery is reused.
The header dropdown label was hardcoded to 'v3', so visiting v2 docs still
showed 'v3' in the navbar. Swizzle NavbarItem/ComponentTypes to register a
custom-versionDropdown that reads the current pathname and renders the
underlying DropdownNavbarItem with 'v2' or 'v3' accordingly.
…g-66hsG' into claude/update-hyperindex-docs-CoJrb

# Conflicts:
#	docusaurus.config.js
#	src/theme/NavbarItem/ComponentTypes.js
Update all envio init command invocations across the HyperIndex V3 docs
to use pnpx envio@3.0.0-rc.0 init so users on the v3 docs install the v3
release candidate explicitly instead of picking up whatever's published
as latest.
Place it after the Feature Roadmap section in the V3 overview and reword
to reflect that an API token is now required (no longer 'soon'). Point
users at the Envio Cloud portal to generate a token.
Replace the previous roadmap items with isolated multichain mode,
polished Solana support, and indexing 1,000,000+ events per second.
Drop the 'rate limits for requests without API tokens' phrasing since
unauthenticated requests aren't possible. State that an API token is
required for all requests.
Update prerequisite lists across the V3 quickstart, getting-started, and
tutorials so they no longer require pnpm v8+. pnpm is now recommended
but other package managers are supported.
pnpm is no longer a hard requirement, so the 'requires pnpm v8 or newer'
troubleshooting entry is obsolete.
- Move Prerequisites and the third 'Getting Started Guide' video into
  the Quickstart page (docs/HyperIndex/contract-import.md), and add a
  small 'Other ways to start' callout pointing at templates and examples.
- Rename the page slug from /contract-import to /quickstart so the URL
  matches its sidebar label (the file id is unchanged so all relative
  ./contract-import links still resolve).
- Delete docs/HyperIndex/getting-started.md and drop it from the
  HyperIndex sidebar.
- Repoint inbound prose links (quickstart-with-ai, migrate-from-alchemy,
  migrate-from-ponder, migration-guide, two Examples) at the Quickstart.
- Rewrite every absolute /docs/HyperIndex/contract-import URL across V3
  docs (overview + supported-networks + tutorials) to /docs/HyperIndex/
  quickstart.
- Add client redirects from /docs/HyperIndex/getting-started and
  /docs/HyperIndex/contract-import to the new Quickstart slug, and
  repoint the existing /docs/getting-started and /docs/hyperindex-basics
  redirects.
- Drop the stale Getting Started entry from the LLM context block.
The slug rename to /quickstart left a few stragglers that broke the
docusaurus build:

- docusaurus.config.js redirect /docs/contract-import still pointed at
  the now-removed /docs/HyperIndex/contract-import target.
- scripts/update-endpoints.js auto-generates supported-networks pages
  from a template that hardcoded /docs/HyperIndex/contract-import.
- quickstart-with-ai.md still relatively linked ./contract-import.
- common-issues.md TOC referenced #using-the-correct-version-of-pnpm,
  whose section was removed earlier.

Verified locally with yarn build (exit 0).
V3 introduced an auto-discovered src/handlers directory (see
migrate-to-v3.md) that replaces the explicit src/EventHandlers.<ext>
file path. This commit reflects that rename across:

- All HyperIndex V3 prose, code blocks, and config snippets.
- The supported-networks template in scripts/update-endpoints.js, so
  newly generated network pages use src/handlers.
V3 auto-discovers handler files under src/handlers, so the explicit
handler: src/handlers field in config.yaml examples is no longer
needed. Stripped from all V3 config snippets across docs/HyperIndex/
and from the supported-networks template in update-endpoints.js.

Also tightened the dynamic-contracts.md prose to point at
src/handlers/<ContractName>.ts (the per-contract file) instead of the
ambiguous bare directory.
Move the "New Features", "Fixes", and "Release Notes" content out of the
migration guide into a new top-level "What's New in V3" page (placed right
after the Quickstart in the sidebar) and rewrite migrate-to-v3 as a plain,
ordered list of changes required to upgrade — easier for AI assistants to
consume. Mirrors the same split into HyperIndexV2 docs and regenerates
the HyperIndex LLM aggregator.
Drops the HyperIndexV2 plugin from the site config, deletes the
docs/HyperIndexV2/ tree, and adds a wildcard Vercel redirect from
/docs/v2/HyperIndex/:path* to /docs/HyperIndex/:path* so existing v2
links continue to land on the equivalent v3 page. Also removes the
now-unused version dropdown navbar item and the v2/v3 banner in the doc
layout.
Reverts the V2 removal so the V2 sidebar and pages keep their original
content, then replaces docs/HyperIndexV2/whats-new-in-v3.md and
docs/HyperIndexV2/migrate-to-v3.md with symlinks to their V3 counterparts
so those two migration pages have a single source of truth.
Adds a dedicated sidebarsHyperIndexV2.js that wraps the V3 sidebar and
rewrites the `migrate-to-v3` doc reference to an external link pointing
at /docs/HyperIndex/migrate-to-v3, so users on V2 jump straight to the
canonical V3 migration guide instead of the /docs/v2/HyperIndex/ mirror.
Inlines the full sidebar configuration so V2 no longer depends on the V3
sidebar file, and rewrites the whats-new-in-v3 entry to an external link
to the V3 page (mirroring the existing migrate-to-v3 redirect).
The runtime LLM-output plugin walks every registered plugin-content-docs
plugin, so V2 pages were being indexed into llms.txt / llms-full.txt and
emitted as .md copies under /docs/v2/HyperIndex/ in the build. Add an
`excludePluginIds` option and skip `HyperIndexV2`, leaving only V3 docs
in the LLM-targeted outputs.
- Refresh docs/HyperIndex/Guides/cli-commands.md for V3:
  * Remove the V2 `-o, --output-directory` global option (types live in
    .envio/ in V3).
  * Document `envio dev` as the local development entrypoint; note that
    handler edits no longer trigger codegen and add the `-r/--restart`
    and `-b/--bench` flags.
  * Mark `envio start` as production-only and move `--restart` over to
    `envio dev`.
  * Refresh the command reference table and the benchmark example.
  * Note that the page is regenerated by scripts/update-cli-help.js and
    that DOC_URL should be repointed at a V3 release tag/branch when
    one is published.
- Strip stale "Starting from envio@2.X" / "Available from envio@2.X"
  availability notes that are no longer relevant in V3 docs:
  Guides/event-handlers.mdx, Guides/configuration-file.mdx,
  Guides/navigating-hasura.md, Guides/schema-file.md,
  Advanced/wildcard-indexing.mdx, Advanced/preload-optimization.md,
  Advanced/rpc-sync.md, Advanced/metadata-query.md,
  Advanced/effect-api.md.
scripts/generate-config-schema-doc.js now reads static/schemas/config.evm.json
and produces:

- V2: docs/HyperIndexV2/Advanced/config-schema-reference.md, directly from
  the source schema (unchanged behaviour).
- V3: docs/HyperIndex/Advanced/config-schema-reference.md, produced by
  applying a toV3() transform to the same schema before rendering.

toV3() encodes the published V2 → V3 changes:
- Top-level: drop output / unordered_multichain_mode / event_decoder /
  preload_handlers; rename networks → chains (preserving order); add
  full_batch_size and storage.
- Chain (renamed from Network): drop rpc_config; rename
  confirmed_block_threshold → max_reorg_depth; add block_lag; reshape rpc
  to accept string | Rpc | array<Rpc>; rewrite "network" prose as "chain".
- $defs: drop RpcConfig / NetworkRpc / EventDecoder; add Storage; extend
  the For enum with realtime; rewrite Rpc/HypersyncConfig descriptions.
- Contract defs: handler is no longer required (auto-discovered from
  src/handlers/) and its description is rewritten accordingly.
- TransactionField enum: kind → type.
- Append a "Removed in V3" appendix listing the dropped V2 fields.

Each version gets its own example snippets (V2 uses networks/rpc_config/
preload_handlers; V3 uses chains/rpc/storage/full_batch_size).
claude added 2 commits May 11, 2026 14:09
Add a "What about Ordered Multichain Mode?" section to
Advanced/multichain-indexing.mdx covering:

- The reasoning: ordered mode paused every chain until the slowest chain
  caught up, so the indexer's reliability and head-latency were bounded
  by its worst-performing chain.
- The recommended workaround: model cross-chain relationships in the
  schema by writing a temporary entity from the chain whose event arrives
  first, then completing it when the other chain's event arrives. Each
  chain keeps progressing independently.
- A worked GraphQL + handler example for the common
  bridge-message-sent / message-delivered pattern.
scripts/update-endpoints.js now writes each supported-network page into
both doc trees:

- docs/HyperIndex/supported-networks/<name>.md (V3): `chains:` /
  `rpc: <url>`, links pointing at /docs/HyperIndex/...
- docs/HyperIndexV2/supported-networks/<name>.md (V2): `networks:` /
  `rpc_config: { url }`, links pointing at /docs/v2/HyperIndex/...

generateHyperSyncMarkdownContent and generateRPCMarkdownContent now
take a `variant` ("v2" | "v3") and branch on the chains key, RPC
shape, docs base URL, and the quickstart link slug
(contract-import on V2, quickstart on V3).

This fixes a local-build failure: when the upstream endpoint added
katana, prebuild generated docs/HyperIndex/supported-networks/katana.md
and added katana to supported-networks.json, but
docs/HyperIndexV2/supported-networks/katana.md was never created — so
the V2 sidebar (which reads the same JSON) failed with
"supported-networks/katana doc id does not exist". Each version now
gets its own file on every regeneration.

Also fix a broken anchor in Guides/event-handlers.mdx: the
"different filters per network" link now points at the renamed
#different-filters-per-chain anchor in wildcard-indexing.mdx.
@DZakh DZakh changed the base branch from claude/split-migration-guide-0elXK to main May 12, 2026 08:17
…o-v3-d5Cvt

# Conflicts:
#	docs/HyperIndex/Examples/example-ens.md
#	docs/HyperIndex/Examples/example-liquidation-metrics.md
#	docs/HyperIndex/Guides/testing.mdx
Copy link
Copy Markdown
Contributor

@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: 11

Note

Due to the large number of review comments, Critical, Major severity comments were prioritized as inline comments.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (4)
docs/HyperIndex/Guides/running-locally.md (1)

35-35: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use V3 terminology in restart guidance (chains, not networks).

Line 35 still references networks, but this page is otherwise V3-aligned (chains). This can mislead users editing config.yaml.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Guides/running-locally.md` at line 35, Update the restart
guidance in the running-locally documentation so it uses the V3 term "chains"
instead of "networks": search for the mention of `networks` in the sentence that
lists changes to `config.yaml` and replace it with `chains` (ensuring the phrase
reads like "Changes to `config.yaml` (adding contracts, events, or chains)").
Also confirm any nearby references or examples in the same paragraph use
`chains` consistently.
docs/HyperIndex/supported-networks/fuel-testnet.md (1)

15-15: ⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Critical: Chain ID is "undefined" instead of numeric value 0.

The Fuel Testnet chain ID is set to undefined throughout this document (line 15 in the table, line 43 in the YAML config, and lines 16-17 in the URLs). Replace with the correct chain ID: 0.

Also applies to: 43-43

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/fuel-testnet.md` at line 15, Replace every
occurrence of the literal "undefined" for the Fuel Testnet chain ID with the
numeric value 0: update the table cell labeled "Fuel Testnet Chain ID" (the
table row showing undefined), change the YAML key value for chainId (currently
set to undefined) to 0, and fix any URLs that embed the chain id (lines showing
.../chain/undefined/... ) to use 0 instead; ensure all three places use the
numeric 0 consistently.
docs/HyperIndex/Tutorials/greeter-tutorial.md (1)

87-102: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Standardize config format: greeter-tutorial.md uses non-standard envio_node wrapper with name fields.

The YAML in greeter-tutorial.md at lines 88-102 uses:

envio_node:
  chains:
    - name: polygon

However, all supported-network files (fraxtal.md, x-layer.md, plasma.md, fantom.md, and 60+ other network docs) use:

chains:
  - id: 196  # X Layer

The envio_node wrapper and name identifier pattern appear nowhere else in the HyperIndex documentation. Update greeter-tutorial.md to use the standard chains + id format to match all other examples and avoid confusing users about the correct configuration structure.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Tutorials/greeter-tutorial.md` around lines 87 - 102, Replace
the non-standard top-level wrapper and keys used in the YAML snippet: remove the
"envio_node" wrapper and change the per-chain "name" entries to the standard
"chains" list with numeric "id" fields (e.g., replace "envio_node: chains: -
name: polygon" with "chains: - id: <polygon_chain_id>") while preserving the
Greeter contract entries (contract "name": Greeter and "address" values) so the
example matches the other docs that use "chains" and "id" instead of
"envio_node" and "name".
docs/HyperIndex/Advanced/rpc-sync.md (1)

126-134: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use chain-consistent fallback RPC URLs in the Polygon example.

The sample sets id: 137 (Polygon) but uses eth-mainnet endpoints, which is confusing for copy/paste users.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Advanced/rpc-sync.md` around lines 126 - 134, The Polygon
example currently sets id: 137 but lists eth-mainnet RPC endpoints; update the
rpc entries under the block with id: 137 to use chain-consistent Polygon mainnet
endpoints (e.g., polygon RPC URLs and an ENVIO_POLYGON_API_KEY placeholder) and
ensure any multi-endpoint list (the rpc: - url: ... entries and their for:
fallback tags) reference Polygon providers instead of eth-mainnet to avoid
confusion for copy/paste users.
🟡 Minor comments (44)
docs/HyperIndex/supported-networks/zksync-sepolia-testnet.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use rpc: in alternative examples to match the V3 schema.

These comments still show url: while the active field is now rpc:. Keeping mixed keys in the same snippet can cause invalid copy-paste configs.

Suggested doc fix
-    # url: https://zksync-sepolia.drpc.org # alternative,
-    # url: https://sepolia.era.zksync.dev # alternative
+    # rpc: https://zksync-sepolia.drpc.org # alternative
+    # rpc: https://sepolia.era.zksync.dev # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/zksync-sepolia-testnet.md` around lines 39
- 40, Replace the deprecated key `url:` with `rpc:` in the alternative examples
so the snippet matches the V3 schema; specifically update the commented lines
that currently read `# url: https://zksync-sepolia.drpc.org` and `# url:
https://sepolia.era.zksync.dev` to use `# rpc: ...` instead, ensuring all
examples in the `zksync-sepolia-testnet` doc consistently use `rpc:` and avoid
mixed keys that can break copy-paste configs.
docs/HyperIndex/supported-networks/japan-open-chain.md-38-40 (1)

38-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use rpc in the commented alternative endpoints as well.

Line 39 and Line 40 still show url, which conflicts with the V3 key shown on Line 38 and can cause bad copy/paste configs.

Suggested doc fix
-    # url: https://rpc-2.japanopenchain.org:8545 # alternative,
-    # url: https://rpc-3.japanopenchain.org # alternative
+    # rpc: https://rpc-2.japanopenchain.org:8545 # alternative
+    # rpc: https://rpc-3.japanopenchain.org # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/japan-open-chain.md` around lines 38 - 40,
The commented alternative endpoints use the wrong key `url:` which conflicts
with the active `rpc:` key on the first line; update the commented lines that
currently read `# url: https://rpc-2.japanopenchain.org:8545 # alternative,` and
`# url: https://rpc-3.japanopenchain.org # alternative` to use `# rpc:` instead
(preserve the comment markers and spacing) so all examples consistently use the
`rpc` key.
docs/HyperIndex/supported-networks/telos-evm-mainnet.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternatives to use V3 field name.

The commented alternative RPC URLs use url: instead of rpc:, which is inconsistent with the V3 configuration format shown on line 38. If users uncomment these lines, they would use the incorrect field name and encounter configuration errors.

📝 Proposed fix to align with V3 field naming
-    # url: https://telos.drpc.org # alternative,
-    # url: https://mainnet.telos.net/evm # alternative
+    # rpc: https://telos.drpc.org # alternative
+    # rpc: https://mainnet.telos.net/evm # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/telos-evm-mainnet.md` around lines 39 -
40, Update the two commented alternative RPC entries that currently use the V2
field name "url:" to the V3 field name "rpc:" so they match the V3 configuration
shown earlier; locate the lines that read "# url: https://telos.drpc.org #
alternative," and "# url: https://mainnet.telos.net/evm # alternative" and
change "url:" to "rpc:" in those commented lines to prevent users from
uncommenting an invalid field name.
docs/HyperIndex/supported-networks/oasis-sapphire.md-39-39 (1)

39-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternative to V3 syntax.

The commented alternative RPC URL still uses V2 syntax (url:). For consistency with the V3 migration, it should use the rpc: field name instead.

📝 Proposed fix
-    # url: https://sapphire.oasis.io # alternative
+    # rpc: https://sapphire.oasis.io # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/oasis-sapphire.md` at line 39, Replace the
commented V2-style alternative that uses "url:" with the V3 "rpc:" field;
specifically change the comment containing "url: https://sapphire.oasis.io #
alternative" to use "rpc: https://sapphire.oasis.io # alternative" so the
commented alternative matches V3 syntax.
docs/HyperIndex/supported-networks/boba.md-48-49 (1)

48-49: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix YAML indentation for address list items.

The list items under address: are indented with 9 spaces but should use 10 spaces to follow YAML's standard 2-space indentation convention. While some parsers may tolerate 9 spaces (since it's greater than the parent's 8), the inconsistent indentation violates best practices and could confuse users copying this example.

📝 Proposed fix
       - name: ContractName
         address:
-         - "0xYourContractAddress1"
-         - "0xYourContractAddress2"
+          - "0xYourContractAddress1"
+          - "0xYourContractAddress2"
         events:
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/boba.md` around lines 48 - 49, The YAML
example under the address key has its list items indented with 9 spaces; update
the indentation so the bolts list items under the address: key use 10 spaces
(i.e., follow the 2-space-per-level convention) so "0xYourContractAddress1" and
"0xYourContractAddress2" align properly under address:. Locate the address: key
in the Boba network example and increase the leading spaces for those list
entries to match the parent indentation level.
docs/HyperIndex/supported-networks/metall2.md-47-49 (1)

47-49: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix non-standard YAML indentation in the address list.

The address: list items on lines 48-49 use only 1 space of relative indentation instead of the standard 2 spaces. While the YAML parses correctly, this inconsistency diverges from YAML best practices and may confuse users following the documentation example.

Suggested fix for consistent indentation
       address:
-         - "0xYourContractAddress1"
-         - "0xYourContractAddress2"
+        - "0xYourContractAddress1"
+        - "0xYourContractAddress2"
       events:
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/metall2.md` around lines 47 - 49, The YAML
sample under the address key uses non-standard 1-space relative indentation for
the list items; update the list so the items under the address key
("0xYourContractAddress1", "0xYourContractAddress2") are indented with 2 spaces
(consistent with other YAML examples) so the address: key and its dash-prefixed
items follow standard YAML indentation and visual style.
docs/HyperIndex/supported-networks/mosaic-matrix.md-20-22 (1)

20-22: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

The "HIDDEN 🔒" text marker won't actually hide this page.

Adding "HIDDEN 🔒" as markdown body text won't affect page visibility in Docusaurus navigation, sidebars, or search. If the intention is to hide this page, you need to add frontmatter metadata at the top of the file:

---
unlisted: true
# or
draft: true
---

If this is just an informational tier label for readers (not meant to programmatically hide the page), consider clarifying the language, e.g., "Tier: Private/Limited Access 🔒".

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/mosaic-matrix.md` around lines 20 - 22,
The "HIDDEN 🔒" body text under the "Tier" heading does not hide the page;
replace or augment it by adding Docusaurus frontmatter at the top of this
document (e.g., set unlisted: true or draft: true) to actually hide the page
from navigation/search, or if it’s intended as a reader-facing label, change the
copy under the "Tier" heading from "HIDDEN 🔒" to a clearer label like "Tier:
Private / Limited Access 🔒" so intent is explicit; update the markdown file
containing the "Tier" heading accordingly.
docs/HyperIndex/supported-networks/bob-mainnet.md-39-39 (1)

39-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use rpc in the commented alternative endpoint.

Line 39 still says # url: ... even though this doc now uses rpc. Keeping legacy key in comments can lead to invalid copy/paste config.

Suggested doc fix
-    # url: https://bob.drpc.org # alternative
+    # rpc: https://bob.drpc.org # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/bob-mainnet.md` at line 39, Update the
commented alternative endpoint in the docs so it uses the current key name `rpc`
instead of the legacy `url`: replace the comment text that currently reads "#
url: https://bob.drpc.org # alternative" with a comment using "rpc" (e.g., "#
rpc: https://bob.drpc.org # alternative") to prevent invalid copy/paste configs;
verify the change in the bob-mainnet.md comment block containing that exact
string.
docs/HyperIndex/supported-networks/immutable-zkevm.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update stale alternative key names to rpc for consistency.

Line 39 and Line 40 still show # url: ... while the active V3 field is rpc. This is easy to copy incorrectly from the docs.

Suggested doc fix
-    # url: https://rpc.immutable.com # alternative,
-    # url: https://immutable.gateway.tenderly.co # alternative
+    # rpc: https://rpc.immutable.com # alternative
+    # rpc: https://immutable.gateway.tenderly.co # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/immutable-zkevm.md` around lines 39 - 40,
Replace the stale commented alternative keys that use "url:" with the active V3
key "rpc:" in the examples — specifically change occurrences of "# url:
https://rpc.immutable.com" and "# url: https://immutable.gateway.tenderly.co" to
"# rpc: https://rpc.immutable.com" and "# rpc:
https://immutable.gateway.tenderly.co" so copy-paste uses the correct key name.
docs/HyperIndex/supported-networks/mint-mainnet.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternative RPC URLs to use rpc: field.

The commented alternative URLs still use url: instead of rpc:. Since the V3 config structure uses rpc: directly under each chain, users who uncomment these lines will have invalid configuration.

📝 Suggested fix
-    # url: https://global.rpc.mintchain.io # alternative,
-    # url: https://rpc.mintchain.io # alternative
+    # rpc: https://global.rpc.mintchain.io # alternative
+    # rpc: https://rpc.mintchain.io # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/mint-mainnet.md` around lines 39 - 40,
Change the commented alternative RPC entries that currently use "url:" to use
the V3 config key "rpc:" so uncommenting them produces valid config;
specifically replace occurrences of the commented lines containing "# url:
https://global.rpc.mintchain.io" and "# url: https://rpc.mintchain.io" with "#
rpc: https://global.rpc.mintchain.io" and "# rpc: https://rpc.mintchain.io"
(preserving comments/formatting and placement under the Mint chain block) so the
config uses the correct "rpc:" field.
docs/HyperIndex/supported-networks/bitgert-mainnet.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternative RPC URLs to use rpc: field.

The commented alternative URLs still use url: instead of rpc:. Since the V3 config structure uses rpc: directly under each chain, users who uncomment these lines will have invalid configuration.

📝 Suggested fix
-    # url: https://serverrpc.com # alternative,
-    # url: https://chainrpc.com # alternative
+    # rpc: https://serverrpc.com # alternative
+    # rpc: https://chainrpc.com # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/bitgert-mainnet.md` around lines 39 - 40,
The commented alternative RPC entries use "url:" but the V3 config expects
"rpc:" under each chain; update the commented lines that read "# url:
https://serverrpc.com" and "# url: https://chainrpc.com" to use "# rpc:
https://serverrpc.com" and "# rpc: https://chainrpc.com" so that when users
uncomment them the configuration is valid.
docs/HyperIndex/Troubleshoot/error-codes.md-111-115 (1)

111-115: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Align RPC configuration format across V3 examples.

This snippet uses rpc: { url: ... } (object format), but the majority of network configuration examples in supported-networks/*.md use rpc: https://... (scalar format). Both patterns appear in whats-new-in-v3.md as well. Consolidate to a single format or explicitly document when each form applies to avoid user confusion during migration.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Troubleshoot/error-codes.md` around lines 111 - 115, The RPC
field formatting is inconsistent across V3 docs: some examples use rpc: { url:
"..." } while most use rpc: "https://...". Update the examples under the chains
block so all use a single consistent format (prefer the scalar form rpc:
"https://..." used in supported-networks/*.md) by replacing occurrences of rpc:
{ url: ... } with rpc: "https://..."; alternatively, if both forms are valid,
add a short note explaining the two accepted shapes and show both examples.
Ensure references to the chains and rpc keys (and the nested url key) are
updated so all V3 examples are aligned.
docs/HyperIndex/supported-networks/dogechain-mainnet.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix commented alternative RPC keys to V3 field name.

Line 39 and Line 40 still show url, but this snippet now uses rpc. Keeping url in alternatives is misleading for copy/paste.

Suggested patch
-    # url: https://rpc-us.dogechain.dog # alternative,
-    # url: https://rpc.dogechain.dog # alternative
+    # rpc: https://rpc-us.dogechain.dog # alternative
+    # rpc: https://rpc.dogechain.dog # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/dogechain-mainnet.md` around lines 39 -
40, The commented alternative RPC entries still use the old key name "url" but
the snippet now expects "rpc"; update the two commented lines that read "# url:
https://rpc-us.dogechain.dog" and "# url: https://rpc.dogechain.dog" to use the
"rpc" field name (e.g., "# rpc: https://rpc-us.dogechain.dog" and "# rpc:
https://rpc.dogechain.dog") so the examples match the current configuration
format.
docs/HyperIndex/Tutorials/tutorial-erc20-token-transfers.md-115-118 (1)

115-118: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use “directory” wording for src/handlers.

Line 115 names a folder, but Line 117 says “This file contains…”. Update to “This directory contains…” for correctness.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Tutorials/tutorial-erc20-token-transfers.md` around lines 115
- 118, Update the wording for the `src/handlers` entry in the tutorial: change
the sentence currently saying "This file contains the business logic for
processing events:" to "This directory contains the business logic for
processing events:" so it correctly refers to the `src/handlers` directory;
search for the `src/handlers` heading and update the accompanying sentence
accordingly.
docs/HyperIndexV2/Advanced/performance/historical-sync.md-28-30 (1)

28-30: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Reword the “Future Improvements (v2)” sentence to avoid stale/future-tense ambiguity.

“In version 2, we are restructuring…” reads like an active roadmap item and can confuse V2 readers. Consider past tense or explicit status (planned/archived).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/performance/historical-sync.md` around lines 28 -
30, Update the “Future Improvements (v2)” wording to remove present/future-tense
ambiguity by making the status explicit and using past or status language:
replace the sentence that starts “In version 2, we are restructuring the way
loaders work into pre-handlers.” with a clear statement such as “In v2, loaders
were restructured into preHandlers to enable batching of entity loading before
handlers,” or “Planned for v2: restructure loaders into preHandlers to enable
batching of entity loading before handlers,” and keep references to preHandlers
and preHandler functions so readers can locate the feature.
docs/HyperIndex/Tutorials/tutorial-erc20-token-transfers.md-32-32 (1)

32-32: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Do not pin tutorials to RC versions like 3.0.0-rc.0.

The 3.0.0-rc.0 release candidate is not recommended for tutorials per official Envio docs. If V3 features are required, use the latest documented pre-release (e.g., 3.0.0-alpha.21) with a note explaining the V3 dependency. Otherwise, use stable v2.32.11 or wait for V3 to reach stable status.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Tutorials/tutorial-erc20-token-transfers.md` at line 32,
Change the pinned command "pnpx envio@3.0.0-rc.0 init" to use a supported
version; replace it with either the stable v2 release (e.g., "pnpx envio@2.32.11
init") or the documented latest pre-release if V3 behaviour is required (e.g.,
"pnpx envio@3.0.0-alpha.21 init"), and add a short inline note near that command
explaining why a pre-release is used (that V3 features are required) or
recommending waiting for stable V3.
docs/HyperIndex/Advanced/effect-api.md-67-75 (1)

67-75: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Remove legacy loader wording in the Effect API intro text.

Right above this example, the doc still says effects can be called from a “handler, loader, or another effect.” Since V3 removed loader API terminology in this migration, please update that sentence to avoid mixed guidance.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Advanced/effect-api.md` around lines 67 - 75, Update the
intro sentence above the example so it no longer references the removed "loader"
term; replace the phrase "handler, loader, or another effect" with something
like "handler, job, or another effect" (or whichever current API term you use
for scheduled/background work) so guidance matches V3; locate the text near the
example that contains the indexer.onEvent snippet and update the wording
accordingly.
docs/HyperIndexV2/Advanced/metadata-query.md-65-65 (1)

65-65: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix user-facing typos and phrasing in the new V2 metadata page.

Line 65 has a typo (actuall), Line 82 should use reorg-resistant, and Line 86 can be tightened to outside the batch transaction for clarity.

✍️ Suggested patch
-You can use this query to track the indexing progress for each chain. For example, wait until the block data is ready before querying actuall data, building custom dashboards, health checks or sending notifications.
+You can use this query to track indexing progress for each chain. For example, wait until the block data is ready before querying actual data, building custom dashboards, running health checks, or sending notifications.
...
-- `eventsProcessed` - Number of processed events and written to the DB. (not reorg resistant)
+- `eventsProcessed` - Number of processed events written to the DB. (not reorg-resistant)
...
-The fields are updated outside of the batch transaction and throttled to avoid performance overhead.
+The fields are updated outside the batch transaction and throttled to avoid performance overhead.

Also applies to: 82-82, 86-86

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/metadata-query.md` at line 65, Fix three
user-facing text issues in the metadata page: change the word "actuall" to
"actual" in the sentence that begins "You can use this query to track the
indexing progress...", replace the phrase "reorg safe" (or similar) with
"reorg-resistant" where Line 82 references reorg safety, and tighten the wording
at Line 86 to read "outside the batch transaction" instead of the existing,
longer phrase; update the exact phrases in the document so they read cleanly and
consistently.
docs/HyperIndex/Tutorials/tutorial-op-bridge-deposits.md-11-11 (1)

11-11: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use canonical internal docs path instead of absolute URL.

Line 11 links to https://docs.envio.dev/docs/HyperIndex/quickstart; prefer /docs/HyperIndex/quickstart to keep routing consistent across environments and avoid hardcoding host/base URL.

🔧 Suggested patch
-This tutorial will guide you through indexing Optimism Standard Bridge deposits in under 5 minutes using Envio HyperIndex's no-code [contract import](https://docs.envio.dev/docs/HyperIndex/quickstart) feature.
+This tutorial will guide you through indexing Optimism Standard Bridge deposits in under 5 minutes using Envio HyperIndex's no-code [contract import](/docs/HyperIndex/quickstart) feature.

Based on learnings: in this repo, HyperIndex links should use canonical /docs/HyperIndex/<slug> paths to avoid redirect/route issues.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Tutorials/tutorial-op-bridge-deposits.md` at line 11, The
link in the tutorial text currently uses an absolute URL
"https://docs.envio.dev/docs/HyperIndex/quickstart"; change it to the canonical
internal docs path "/docs/HyperIndex/quickstart" so routing is consistent across
environments and avoids hardcoding the host (update the string in the tutorial
text where the URL appears).
docs/HyperIndexV2/Advanced/websockets.md-37-57 (1)

37-57: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Add language identifiers to fenced code blocks.

The URL example code fences at Line 37, Line 43, Line 49, and Line 55 are missing languages (MD040). Add text (or bash where appropriate) to keep markdown lint-clean.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/websockets.md` around lines 37 - 57, Add language
identifiers to the four fenced code blocks that contain the URL examples to
satisfy MD040: change the blocks containing
"https://indexer.hyperindex.xyz/123abcd/graphql",
"wss://indexer.hyperindex.xyz/123abcd/graphql",
"http://localhost:8080/v1/graphql", and "ws://localhost:8080/v1/graphql" to use
fenced code languages (use "text" for plain URLs or "bash" if you prefer shell
context) so each triple-backtick fence becomes ```text (or ```bash) followed by
the URL and closed with ``` to keep the markdown lint clean.
docs/HyperIndexV2/Advanced/config-schema-reference.md-291-293 (1)

291-293: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Clean up grammar/spelling in EventConfig field docs.

Please fix wording in this section: human-readable (hyphenated), omitted (spelling), and convert “Should be unique per contract” into a full sentence for clarity.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/config-schema-reference.md` around lines 291 -
293, Update the EventConfig field docs: hyphenate "human-readable" in the
`event` description, correct the spelling of "omitted" in the `name`
description, and rewrite "Should be unique per contract" as a full sentence
(e.g., "The name must be unique per contract."); ensure the `event`, `name`, and
`field_selection` lines remain the same identifiers and that `EventConfig` is
referenced consistently.
docs/HyperIndex/supported-networks/b2-testnet.md-22-22 (1)

22-22: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Replace placeholder tier text before publish.

Line 22 still shows undefined 🏗️, which reads like an unresolved placeholder in public docs. Please set the actual tier or remove the section until known.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/b2-testnet.md` at line 22, Replace the
unresolved placeholder text "undefined 🏗️" in the B2 testnet documentation
section with the correct tier label or remove that line/section until the tier
is known; locate the markdown segment containing the literal string "undefined
🏗️" in the B2 testnet docs and update it to the actual tier (e.g., "Tier: X")
or delete the placeholder so no unresolved text appears in the published docs.
docs/HyperIndexV2/Advanced/rpc-sync.md-108-131 (1)

108-131: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Inconsistency: Address should be quoted per PR objectives.

Similar to the hypersync.md file, line 126 shows an unquoted address:

address: 0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c

For consistency with the PR's stated approach of quoting contract address values, this should be:

address: "0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c"
📋 Proposed fix
     contracts:
       - name: PolygonGreeter
         abi_file_path: abis/greeter-abi.json
-        address: 0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c
+        address: "0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c"
         handler: ./src/EventHandlers.bs.js
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/rpc-sync.md` around lines 108 - 131, The contract
address under the Greeter indexer (contract name PolygonGreeter) is unquoted;
update the address value for PolygonGreeter in the YAML block (the address:
field) to be a quoted string (e.g.,
"0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c") to match the PR's quoting
convention for contract addresses and maintain consistency with other files like
hypersync.md.
docs/HyperIndexV2/Advanced/hypersync.md-49-63 (1)

49-63: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Inconsistency: Address should be quoted per PR objectives.

The PR summary states that config examples "quotes contract address values," but line 58 shows an unquoted address:

address: 0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c

For consistency with the PR's stated V3 migration approach, this should be:

address: "0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c"
📋 Proposed fix
       - name: PolygonGreeter
         abi_file_path: abis/greeter-abi.json
-        address: 0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c
+        address: "0x9D02A17dE4E68545d3a58D3a20BbBE0399E05c9c"
         handler: ./src/EventHandlers.bs.js
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/hypersync.md` around lines 49 - 63, The YAML
example for the Greeter indexer has an unquoted contract address value under the
contracts -> address key; update the address value to be a quoted string (e.g.,
"0x9D02A17...") to match the PR objective of quoting contract addresses and
ensure the contracts block in the Greeter example uses a string for address
rather than a bare token; search for other instances in the same hypersync
examples and apply the same quoting convention to any contract.address fields to
maintain consistency.
docs/HyperIndexV2/Advanced/dynamic-contracts.md-130-130 (1)

130-130: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update migration guide link to use correct V2 path.

Line 130 references /docs/v2/HyperIndex/migration-guide, but the actual file is docs/HyperIndexV2/migration-guide.md. Change the link to /docs/HyperIndexV2/migration-guide to point to the correct V2 migration guide.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/dynamic-contracts.md` at line 130, Update the
markdown link target in docs/HyperIndexV2/Advanced/dynamic-contracts.md: replace
the current destination "/docs/v2/HyperIndex/migration-guide" for the link text
"Migrating from a Subgraph" with the correct V2 path
"/docs/HyperIndexV2/migration-guide" so it points to
docs/HyperIndexV2/migration-guide.md.
docs/HyperIndexV2/Advanced/preload-optimization.md-197-197 (1)

197-197: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix the loaders documentation link to point to the V2 version.

The link /docs/v2/HyperIndex/loaders references the V1 loaders documentation. Since this file is part of HyperIndexV2 docs and a V2 loaders page exists at docs/HyperIndexV2/Advanced/loaders.md, update the link to ensure it points to the correct V2 documentation.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/preload-optimization.md` at line 197, Update the
"Loaders" hyperlink in the Preload Optimization paragraph so it points to the V2
loaders page (docs/HyperIndexV2/Advanced/loaders.md) instead of
/docs/v2/HyperIndex/loaders; locate the anchor text "Loaders" in the
preload-optimization.md content and replace the href target with the V2 path so
the link directs to the correct HyperIndexV2 loaders documentation.
docs/HyperIndex/supported-networks/gravity-alpha-mainnet.md-39-39 (1)

39-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Align the alternative endpoint comment with the V3 key name.

Please change # url: ... to # rpc: ... to match the migrated schema and avoid copy/paste mistakes.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/gravity-alpha-mainnet.md` at line 39,
Update the inline comment for the alternative endpoint so it uses the V3 key
name: replace the comment prefix `# url:` with `# rpc:` in the existing
alternative endpoint line (`# url: https://rpc.ankr.com/gravity`) so it reads `#
rpc: https://rpc.ankr.com/gravity`, ensuring the migrated schema key name is
used and preventing copy/paste mistakes.
docs/HyperIndex/supported-networks/x-layer-testnet.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update alternative endpoint comments to rpc: for V3 consistency.

These alternatives still use url, which conflicts with the new config shape and can confuse readers.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/x-layer-testnet.md` around lines 39 - 40,
The commented alternative endpoints in
docs/HyperIndex/supported-networks/x-layer-testnet.md use the outdated key
"url"; update those comment lines to use "rpc:" instead (e.g., change "# url:
https://xlayertestrpc.okx.com" and "# url: https://testrpc.xlayer.tech" to "#
rpc: ...") so the examples match the V3 config shape and avoid confusion for
readers.
docs/HyperIndex/supported-networks/telos-evm-testnet.md-39-39 (1)

39-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use rpc in the alternative comment as well.

The sample now uses rpc:; keeping the commented alternative as url: introduces avoidable confusion.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/telos-evm-testnet.md` at line 39, The
commented alternative line currently reads "# url:
https://telos-testnet.drpc.org # alternative" and should use the same key as the
sample above; update that comment to "# rpc: https://telos-testnet.drpc.org #
alternative" so the example consistently uses "rpc" instead of "url" (locate and
edit the commented line containing "https://telos-testnet.drpc.org").
docs/HyperIndex/supported-networks/berachain-artio-testnet.md-39-39 (1)

39-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Keep the alternative endpoint key consistent with V3 (rpc, not url).

The commented alternative currently shows # url: ..., which conflicts with the migrated rpc: field and can cause copy/paste errors.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/berachain-artio-testnet.md` at line 39,
The commented alternative line currently uses "url" instead of the V3-consistent
key "rpc"; update the commented line that reads "# url:
https://rpc.ankr.com/berachain_testnet" to use "# rpc:
https://rpc.ankr.com/berachain_testnet" so the example matches the migrated
`rpc:` field and avoids copy/paste errors.
docs/HyperIndex/supported-networks/altlayer-op-demo-testnet.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternatives to V3 syntax.

The commented alternative RPC URLs use url: instead of rpc:, creating inconsistency with the V3 schema.

✏️ Proposed fix
-    # url: https://rpc-testnet-altlayer.com # alternative,
-    # url: https://altlayer-rpc.io # alternative
+    # rpc: https://rpc-testnet-altlayer.com # alternative,
+    # rpc: https://altlayer-rpc.io # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/altlayer-op-demo-testnet.md` around lines
39 - 40, The commented alternative RPC lines use the old "url:" key; update both
commented lines "# url: https://rpc-testnet-altlayer.com" and "# url:
https://altlayer-rpc.io" to use the V3 schema key "rpc:" (i.e., replace "url:"
with "rpc:") so the commented alternatives match the V3 format and remain
consistent with the rest of the document.
docs/HyperIndex/supported-networks/scroll-sepolia.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternatives to V3 syntax.

The commented alternative RPC endpoints use the V2 url: field instead of V3's rpc: field.

✏️ Proposed fix
-    # url: https://sepolia-rpc.scroll.io # alternative,
-    # url: https://scroll-sepolia-rpc.publicnode.com # alternative
+    # rpc: https://sepolia-rpc.scroll.io # alternative,
+    # rpc: https://scroll-sepolia-rpc.publicnode.com # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/scroll-sepolia.md` around lines 39 - 40,
Update the commented alternative RPC endpoints so they use V3 syntax by
replacing the V2 `url:` field with the V3 `rpc:` field in the commented lines
(the two commented alternatives shown as "# url: https://sepolia-rpc.scroll.io"
and "# url: https://scroll-sepolia-rpc.publicnode.com"); ensure the comments now
read with `rpc:` and preserve the URLs and comment formatting exactly otherwise.
docs/HyperIndex/supported-networks/iotex-network.md-39-40 (1)

39-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternatives to use V3 syntax.

The commented alternative RPC URLs still use url: instead of rpc:, which is inconsistent with the V3 schema. Users who uncomment these lines would be using incorrect V2 syntax.

✏️ Proposed fix
-    # url: https://iotex-network.rpc.thirdweb.com # alternative,
-    # url: https://babel-api.mainnet.iotex.one # alternative
+    # rpc: https://iotex-network.rpc.thirdweb.com # alternative,
+    # rpc: https://babel-api.mainnet.iotex.one # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/iotex-network.md` around lines 39 - 40,
Update the commented alternative RPC entries in the document so they use V3
schema key "rpc:" instead of the old "url:"; locate the commented lines
containing "url: https://iotex-network.rpc.thirdweb.com" and "url:
https://babel-api.mainnet.iotex.one" and change the key to "rpc:" so
uncommenting will produce valid V3 syntax.
docs/HyperIndex/supported-networks/bitlayer.md-38-39 (1)

38-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Keep alternative endpoint key consistent with V3 (rpc).

Line 39 still uses url while Line 38 migrated to rpc. Aligning the commented alternative avoids schema confusion.

Suggested fix
-    # url: https://ws.bitlayer-rpc.com # alternative
+    # rpc: https://ws.bitlayer-rpc.com # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/bitlayer.md` around lines 38 - 39, Update
the commented alternative endpoint key to match the V3 key used above: change
the commented line that currently reads "url: https://ws.bitlayer-rpc.com #
alternative" to use "rpc" instead of "url" so it reads "rpc:
https://ws.bitlayer-rpc.com # alternative", ensuring the keys are consistent
with the existing "rpc" entry.
docs/HyperIndex/supported-networks/ontology-mainnet.md-38-40 (1)

38-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use rpc for commented alternatives too.

Line 39 and Line 40 still use url, which conflicts with the V3 key introduced on Line 38. This can mislead copy/paste users.

Suggested fix
-    # url: https://dappnode2.ont.io:10339 # alternative,
-    # url: https://dappnode3.ont.io:10339 # alternative
+    # rpc: https://dappnode2.ont.io:10339 # alternative
+    # rpc: https://dappnode3.ont.io:10339 # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/ontology-mainnet.md` around lines 38 - 40,
The commented alternative keys still use "url:" which conflicts with the V3
"rpc:" key; update the commented lines that read "url:
https://dappnode2.ont.io:10339" and "url: https://dappnode3.ont.io:10339" to use
"rpc:" instead so all entries consistently use the "rpc" key.
docs/HyperIndex/supported-networks/taiko.md-38-40 (1)

38-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update commented alternatives to rpc key.

After migrating Line 38 to rpc, Line 39 and Line 40 using url are inconsistent with V3 schema.

Suggested fix
-    # url: https://rpc.ankr.com/taiko # alternative,
-    # url: https://taiko.drpc.org # alternative
+    # rpc: https://rpc.ankr.com/taiko # alternative
+    # rpc: https://taiko.drpc.org # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/taiko.md` around lines 38 - 40, The
commented alternative endpoints under the existing rpc entry are using the
deprecated key name "url"; update those commented lines to use the "rpc" key to
match the V3 schema (e.g., change occurrences of "# url:" to "# rpc:" so they
align with the active "rpc: https://taiko-mainnet.gateway.tenderly.co" entry and
maintain consistent formatting for the commented alternatives).
docs/HyperIndex/supported-networks/canto.md-38-40 (1)

38-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Align commented alternatives with the V3 rpc field.

Line 39 and Line 40 still use # url: comments, which conflicts with the V3 rpc: field shown on Line 38.

Suggested fix
-    # url: https://canto.slingshot.finance # alternative,
-    # url: https://canto-rpc.ansybl.io # alternative
+    # rpc: https://canto.slingshot.finance # alternative,
+    # rpc: https://canto-rpc.ansybl.io # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/canto.md` around lines 38 - 40, The
commented alternative RPC entries use the wrong key ("# url:") which conflicts
with the V3 "rpc:" field; update the commented lines (the entries after the line
with rpc: https://canto.dexrouting.com) to use "# rpc:" instead of "# url:" so
they align with the "rpc" field naming (i.e., change each "# url: https://..."
comment to "# rpc: https://...").
docs/HyperIndex/supported-networks/xdc-network.md-37-39 (1)

37-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use rpc in commented fallback endpoints for V3 consistency.

Line 38 and Line 39 still show # url: while the V3 example uses rpc:. This can cause copy/paste misconfiguration.

Suggested fix
-    # url: https://erpc.xdcrpc.com # alternative,
-    # url: https://rpc.xdcrpc.com # alternative
+    # rpc: https://erpc.xdcrpc.com # alternative,
+    # rpc: https://rpc.xdcrpc.com # alternative
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/xdc-network.md` around lines 37 - 39, The
commented fallback endpoints use “# url:” but the V3 examples use “rpc:”,
causing inconsistent config examples; update the commented lines that read “#
url: https://erpc.xdcrpc.com” and “# url: https://rpc.xdcrpc.com” to use “# rpc:
…” so they match the active line “rpc: https://rpc.ankr.com/xdc” and prevent
copy/paste misconfiguration.
docs/HyperIndex/contract-import.md-23-25 (1)

23-25: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix heading level hierarchy.

The heading "Additionally for Windows Users:" is an h4 (####) but follows an h2 section. Markdown best practices require heading levels to increment by only one level at a time.

📝 Proposed fix
-#### Additionally for Windows Users:
+### Additionally for Windows Users:
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/contract-import.md` around lines 23 - 25, The "Additionally
for Windows Users:" heading uses h4 (####) but follows an h2 section; change the
heading markup for "Additionally for Windows Users:" from #### to ### so it
increments by only one level after the preceding h2, and verify any nested
subheadings under that block follow correct relative levels (e.g., lists or
subheadings use one level deeper than ###).
docs/HyperIndex/Advanced/wildcard-indexing.mdx-61-61 (1)

61-61: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix typo: trullytruly.

User-facing wording typo in Topic Filtering intro.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Advanced/wildcard-indexing.mdx` at line 61, Replace the typo
"trully" with "truly" in the Topic Filtering intro sentence that reads "Indexing
all ERC20 `Transfer` events is a lot of events, so ideally to reduce it only to
the ones you trully need with the Topic Filtering feature." — update that exact
phrase in wildcard-indexing.mdx (or the paragraph titled/containing "Topic
Filtering") so the sentence reads "...the ones you truly need..." to correct
user-facing wording.
docs/HyperIndex/Tutorials/price-data.md-351-364 (1)

351-364: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix Orcale typo in field/variable names.

Orcale appears repeatedly and looks accidental; rename to Oracle for clarity.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Tutorials/price-data.md` around lines 351 - 364, There is a
consistent typo "Orcale" in the variable and object field names; rename the
variable ethDepositedUsdOrcale to ethDepositedUsdOracle and update the
EthDeposited object field depositedOrcale to depositedOracle, and then update
every reference to those identifiers (e.g., where ethDepositedUsdOrcale is
passed to round(...) or assigned) to use the corrected names so all usages,
exports, and any serialization keys match "Oracle".
docs/HyperIndexV2/Advanced/reorgs-support.md-92-92 (1)

92-92: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Tighten wording: outside ofoutside.

Small style cleanup in bullet text.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/reorgs-support.md` at line 92, Update the bullet
text phrase "Custom caching mechanisms outside of HyperIndex" to use the tighter
wording "Custom caching mechanisms outside HyperIndex"; locate the line
containing that exact string in the reorgs-support.md content and replace
"outside of" with "outside" to perform the wording cleanup.
docs/HyperIndex/Tutorials/tutorial-indexing-fuel.md-250-250 (1)

250-250: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix typo in handler comment (intialinitial).

Tiny docs typo in the example comment.

Suggested patch
-    // Set the Player entity in the DB with the intial values
+    // Set the Player entity in the DB with the initial values
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Tutorials/tutorial-indexing-fuel.md` at line 250, Update the
inline comment that reads "Set the Player entity in the DB with the intial
values" to correct the typo — change "intial" to "initial" in the example
comment referring to the Player entity; ensure the comment now reads "Set the
Player entity in the DB with the initial values" wherever that exact comment
appears in the tutorial-indexing-fuel.md file.
docs/HyperIndex/migrate-to-v3.md-237-239 (1)

237-239: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Add language specification to the fenced code block.

The code block at line 237 is missing a language identifier. Add bash or env after the opening fence for proper syntax highlighting and to satisfy markdownlint.

📝 Proposed fix
-   ```
+   ```env
    ENVIO_API_TOKEN=your_token_here
    ```
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/migrate-to-v3.md` around lines 237 - 239, The fenced code
block containing the ENVIO_API_TOKEN example is missing a language identifier;
update the opening triple-backtick so it specifies a language (e.g., add "env"
or "bash" after ```), for example change the block that currently begins with
``` to ```env to enable proper syntax highlighting and satisfy markdownlint;
target the fenced block that encloses the line
"ENVIO_API_TOKEN=your_token_here".

## Starting the Indexer

Remember to `cd` into your project directory if you have defined one during `pnpx envio init`.
Remember to `cd` into your project directory if you have defined one during `pnpx envio@3.0.0-rc.0 init`.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

What is the currently recommended HyperIndex/Envio CLI init command for V3 docs: pnpx envio init, pnpx envio@3 init, or a specific pinned version?

💡 Result:

For general HyperIndex projects, the currently recommended CLI init command in the official docs is pnpx envio init [1][2][3][4]. This uses the latest stable version (currently 2.32.11 as of 2026-05-12) [5].

Citations:


🏁 Script executed:

cat -n docs/HyperIndex/Guides/running-locally.md | head -20

Repository: enviodev/docs

Length of output: 760


🏁 Script executed:

rg "pnpx envio@" --type md

Repository: enviodev/docs

Length of output: 8585


Update V3 docs to use @3 instead of pinned RC version for forward compatibility.

The pinning to pnpx envio@3.0.0-rc.0 is systematic across all V3 documentation, but the official Envio docs recommend unpinned (pnpx envio init) for production use. Using @3 maintains intent (V3-specific) while ensuring compatibility with future V3 releases and reducing maintenance burden as RC versions become outdated. This change should be applied consistently across all HyperIndex V3 guide files.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/Guides/running-locally.md` at line 11, Update the pinned pnpx
command in the docs: replace occurrences of the exact string "pnpx
envio@3.0.0-rc.0 init" with the unpinned V3 form "pnpx envio@3 init" (or simply
"pnpx envio init" where V3 context is already clear) across HyperIndex V3 guide
files so the examples use the `@3` version specifier for forward compatibility;
ensure the sentence mentioning cd into the project directory is updated to
reference the new command string consistently.

Migrating from Ponder to HyperIndex is straightforward — both frameworks use TypeScript, index EVM events, and expose a GraphQL API. The key differences are the config format, schema syntax, and entity operation API.

If you are new to HyperIndex, start with the [Getting Started](/docs/HyperIndex/getting-started) guide first.
If you are new to HyperIndex, start with the [Quickstart](/docs/HyperIndex/quickstart) guide first.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify the quickstart page exists
fd -t f -e md -e mdx "quickstart" docs/HyperIndex/

Repository: enviodev/docs

Length of output: 95


🏁 Script executed:

# Check all quickstart files in the entire docs directory
find docs -name "*quickstart*" -type f

Repository: enviodev/docs

Length of output: 164


🏁 Script executed:

# Check the migrate-from-ponder.md file to see the exact link
cat -n docs/HyperIndex/migrate-from-ponder.md | sed -n '10,20p'

Repository: enviodev/docs

Length of output: 743


🏁 Script executed:

# List all files in docs/HyperIndex/ to understand the structure
ls -la docs/HyperIndex/ | grep -E "\.md$|\.mdx$"

Repository: enviodev/docs

Length of output: 959


Fix broken link: quickstart page does not exist.

Line 15 links to /docs/HyperIndex/quickstart, but only quickstart-with-ai.md exists in the docs/HyperIndex/ directory. Update the link to point to /docs/HyperIndex/quickstart-with-ai or create the missing quickstart.md file.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/migrate-from-ponder.md` at line 15, Update the broken
quickstart link in migrate-from-ponder.md: replace the href
`/docs/HyperIndex/quickstart` with `/docs/HyperIndex/quickstart-with-ai` (or
alternatively create a new quickstart.md file) so the link points to the
existing page; locate the link text in the file where the line reads "If you are
new to HyperIndex, start with the [Quickstart](/docs/HyperIndex/quickstart)
guide first." and change the URL accordingly.

Comment on lines 46 to 48
address:
- "0xYourContractAddress1"
- "0xYourContractAddress2"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Fix YAML indentation for the address list.

The list items under address: have inconsistent indentation (9 spaces instead of the expected 8 or 10). YAML is whitespace-sensitive, and this non-standard spacing may cause parsing errors or unexpected behavior when users copy this example.

📝 Proposed fix for consistent indentation
         address:
-         - "0xYourContractAddress1"
-         - "0xYourContractAddress2"
+          - "0xYourContractAddress1"
+          - "0xYourContractAddress2"
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/chainweb-testnet-24.md` around lines 46 -
48, The YAML list under the address key has inconsistent indentation; fix it by
aligning the list items directly under the address key so each dash has the same
indentation as the parent block (replace the current 9-space indent with the
consistent indent used elsewhere), i.e., ensure the two entries under the
address: key ("0xYourContractAddress1" and "0xYourContractAddress2") use the
same indentation level as each other and match the surrounding YAML style.

Comment thread docs/HyperIndex/supported-networks/lightlink-phoenix.md Outdated
Comment thread docs/HyperIndex/supported-networks/meter-mainnet.md Outdated
Comment thread docs/HyperIndex/supported-networks/velas-mainnet.md Outdated
Comment thread docs/HyperIndex/Tutorials/price-data.md

- Compare Load, Handler, and DB Write durations to identify bottlenecks
- In this example, DB Write (135ms) and Load (80ms) operations dominate processing time
- If Load Duration is high, consider implementing [entity loaders](/docs/v2/HyperIndex/loaders)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check if V2 documentation pages exist and verify correct paths

echo "=== Checking for loader documentation ==="
fd -t f -e md -i loader docs/HyperIndexV2/

echo "=== Checking for HyperSync documentation ==="
fd -t f -e md -i hypersync docs/HyperIndexV2/

echo "=== Checking for database optimization documentation ==="
fd -t f -e md -i database docs/HyperIndexV2/

echo "=== Checking current file references ==="
rg -n "docs/v2/HyperIndex" docs/HyperIndexV2/Advanced/performance/benchmarking.md

Repository: enviodev/docs

Length of output: 811


🏁 Script executed:

# Check Docusaurus configuration to understand route mapping
fd -t f -e js -e json "docusaurus|sidebar" . | head -20

Repository: enviodev/docs

Length of output: 310


🏁 Script executed:

# Check if there's a routing config for HyperIndex docs
rg -l "HyperIndexV2|v2.*HyperIndex" --type js --type json --type ts -A 3 -B 3

Repository: enviodev/docs

Length of output: 257


🏁 Script executed:

# Look at the docs directory structure to understand organization
tree -L 2 docs/ | head -50

Repository: enviodev/docs

Length of output: 1261


🏁 Script executed:

# Check Docusaurus configuration for HyperIndexV2 routing
cat docusaurus.config.js | grep -A 20 -B 5 "HyperIndexV2\|v2.*HyperIndex" | head -100

Repository: enviodev/docs

Length of output: 2813


🏁 Script executed:

# Check the sidebarsHyperIndexV2.js for route structure
head -50 sidebarsHyperIndexV2.js

Repository: enviodev/docs

Length of output: 1171


🏁 Script executed:

# Check what the actual route base path is for HyperIndexV2
rg "routeBasePath|baseUrl|sidebars" docusaurus.config.js -A 3 -B 1 | head -80

Repository: enviodev/docs

Length of output: 2170


🏁 Script executed:

# Check how the routes are configured in sidebarsHyperIndexV2.js for loaders and hypersync
rg -A 2 -B 2 "loaders|hypersync|database-performance-optimization" sidebarsHyperIndexV2.js | head -50

Repository: enviodev/docs

Length of output: 768


🏁 Script executed:

# Verify the actual slug paths for these documents
cat sidebarsHyperIndexV2.js | grep -E "Advanced|loaders|hypersync|database" -A 5 -B 2

Repository: enviodev/docs

Length of output: 1851


🏁 Script executed:

# Double-check the actual file locations to confirm route generation
find docs/HyperIndexV2/Advanced -name "*.md" -type f | xargs -I {} basename {} | sort

Repository: enviodev/docs

Length of output: 383


🏁 Script executed:

# Verify if there are any routing aliases or special configurations for slug generation
rg "Advanced.*loaders|Advanced.*hypersync" sidebarsHyperIndexV2.js -B 5 -A 5

Repository: enviodev/docs

Length of output: 829


Fix internal documentation links with missing /Advanced/ path segments.

The links at lines 156, 191, 199, and 200 are missing the /Advanced/ directory in their paths. In this Docusaurus configuration, the sidebar structure requires these intermediate segments. The correct paths should be:

  • Line 156: /docs/v2/HyperIndex/Advanced/loaders
  • Line 191: /docs/v2/HyperIndex/Advanced/hypersync
  • Line 199: /docs/v2/HyperIndex/Advanced/loaders
  • Line 200: /docs/v2/HyperIndex/Advanced/performance/database-performance-optimization
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/performance/benchmarking.md` at line 156, Update
the broken internal docs links that are missing the /Advanced/ segment: replace
the link in the text "If Load Duration is high, consider implementing [entity
loaders](/docs/v2/HyperIndex/loaders)" with [entity
loaders](/docs/v2/HyperIndex/Advanced/loaders); similarly fix the links
referenced by the reviewer to use /docs/v2/HyperIndex/Advanced/hypersync,
/docs/v2/HyperIndex/Advanced/loaders, and
/docs/v2/HyperIndex/Advanced/performance/database-performance-optimization so
all four problematic links include the /Advanced/ path segment.

Comment thread docs/HyperIndexV2/Advanced/preload-optimization.md
Comment thread docs/HyperIndexV2/Advanced/terminology.md Outdated
Script + regen:
- scripts/update-endpoints.js: in V3 supported-network templates, the
  commented alternative endpoints now use `# rpc:` instead of the V2
  `# url:` key so uncommenting them stays valid. Also bump the YAML
  address-list indent in the HyperSync template from 9 spaces to the
  conventional 10 (parses identically; matches the RPC template).
- Re-run the script to regenerate every supported-networks page in both
  doc trees. The Tier sections are dropped per upstream PR #912 intent
  (the committed pages were stale).

V3 content fixes:
- Guides/event-handlers.mdx (already): "different filters per chain"
  anchor was fixed by a prior commit.
- Guides/running-locally.md: "networks" → "chains" in the V3 restart
  list.
- Tutorials/tutorial-erc20-token-transfers.md: "This file contains" →
  "This directory contains" for `src/handlers`.
- Tutorials/tutorial-op-bridge-deposits.md: absolute envio.dev URL
  → canonical /docs/HyperIndex/quickstart.
- Tutorials/price-data.md: rename `Orcale` → `Oracle` everywhere; fix
  `BigInt(2 ** 192)` (Number overflow → RangeError) to `2n ** 192n`.
- Tutorials/tutorial-indexing-fuel.md: typo `intial` → `initial`.
- Tutorials/greeter-tutorial.md: replace non-standard `envio_node`
  wrapper with the standard `chains:` / `id` shape used everywhere else.
- Advanced/wildcard-indexing.mdx: typo `trully` → `truly`.
- Advanced/rpc-sync.md: in the Polygon (`id: 137`) RPC example use
  polygon-named URLs and `ENVIO_POLYGON_API_KEY` instead of
  eth-mainnet endpoints.
- Advanced/effect-api.md: drop the "loader" mention in the effect
  callsite list (loaders were removed in V3).
- Troubleshoot/error-codes.md: collapse the `rpc: { url: ... }` example
  to the scalar `rpc: <url>` form that matches the rest of the V3 docs.
- contract-import.md: lift "Additionally for Windows Users" heading
  from h4 to h3 so heading levels increment by one.
- migrate-to-v3.md: tag the .env example code fence with `env`.

V2 content fixes (hand-authored pages only):
- Advanced/terminology.md: render the multiplication commutativity
  example as inline code so the `*` characters don't get parsed as
  markdown emphasis.
- Advanced/reorgs-support.md: "outside of HyperIndex" → "outside
  HyperIndex".
- Advanced/hypersync.md, Advanced/rpc-sync.md: quote the contract
  address string in the Greeter example.
- Advanced/preload-optimization.md: rewrite the "Configure" section so
  the v2.27-default and the "explicitly enable" wording no longer
  contradict each other.
- Advanced/metadata-query.md: typos `actuall` → `actual`,
  `reorg resistant` → `reorg-resistant`, "outside of the batch
  transaction" → "outside the batch transaction".
- Advanced/performance/historical-sync.md: rewrite the v2 preHandlers
  paragraph in past tense.
- Advanced/websockets.md: tag the four URL example code fences as
  `text` to satisfy MD040.
Copy link
Copy Markdown
Contributor

@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: 13

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
docs/HyperIndex/supported-networks/xdc.md (1)

33-39: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update heading terminology to match V3 (chains).

The YAML is correctly migrated to chains, but the section title still says “Network Configurations,” which is inconsistent with the V3 terminology update.

Suggested edit
-### Defining Network Configurations
+### Defining Chain Configurations
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/xdc.md` around lines 33 - 39, Change the
section heading "Defining Network Configurations" to use V3 terminology and
reference "chains" (for example "Defining chains" or "Defining chain
configurations") so it matches the migrated YAML snippet that uses the chains
key; update the heading text near the YAML example to reference "chains" instead
of "Network Configurations".
docs/HyperIndex/supported-networks/manta.md (1)

33-33: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update heading to match V3 terminology.

The heading still uses "Network Configurations" while the content below correctly uses the V3 chains structure. For consistency with the V3 migration, update the heading to reflect the new terminology.

📝 Proposed fix
-### Defining Network Configurations
+### Defining Chain Configurations
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/manta.md` at line 33, The heading "###
Defining Network Configurations" should be updated to V3 terminology to match
the content using the `chains` structure—replace that heading with something
like "### Defining chains" (or "### Defining chains (V3)") so it aligns with the
`chains` terminology used below; locate the heading text in the markdown and
update it accordingly.
🧹 Nitpick comments (4)
docs/HyperIndex/supported-networks/merlin.md (1)

33-33: ⚡ Quick win

Use V3 terminology in the section heading (chains instead of network).

To stay consistent with the V3 migration in this page (chains in config), consider renaming this heading to “Defining Chain Configurations”.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/merlin.md` at line 33, The heading
"Defining Network Configurations" should use V3 terminology; rename it to
"Defining Chain Configurations" and update any nearby references that use
"network" in this section to "chain" or "chains" to match the rest of the page
(the page already uses `chains` in config examples), ensuring the heading and
descriptive text align with the V3 migration terminology.
docs/HyperIndex/supported-networks/rootstock.md (1)

33-33: ⚡ Quick win

Update heading to match V3 terminology.

The section heading still references "Network Configurations" but the config example below now uses the V3 term chains: instead of networks:. For consistency with the V3 migration, this heading should be updated.

📝 Suggested heading update
-### Defining Network Configurations
+### Defining Chain Configurations
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/rootstock.md` at line 33, Update the
section heading "Defining Network Configurations" to use V3 terminology to match
the example that uses the `chains:` key (e.g., change the heading to "Defining
Chains" or "Defining Chain Configurations") so the heading and the example
config (`chains:`) are consistent; locate the heading string "Defining Network
Configurations" in the docs/HyperIndex/supported-networks/rootstock.md file and
replace it accordingly.
docs/HyperIndex/supported-networks/plasma.md (1)

33-33: ⚡ Quick win

Consider updating heading to V3 terminology.

The heading "Defining Network Configurations" uses the old V2 term "Network" while the configuration below correctly uses the V3 term chains:. Consider updating to "Defining Chain Configurations" for consistency with the V3 migration.

📝 Suggested heading update
-### Defining Network Configurations
+### Defining Chain Configurations
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/plasma.md` at line 33, Update the section
heading string "Defining Network Configurations" to use V3 terminology by
renaming it to "Defining Chain Configurations" so it matches the configuration
key `chains:` used below; locate the heading text in this document and replace
the old term "Network" with "Chain" to maintain consistency across V3 docs.
docs/HyperIndexV2/Advanced/terminology.md (1)

127-127: 💤 Low value

Consider hyphenating "command-line interface".

Style guides typically recommend hyphenating compound adjectives before nouns. While not incorrect as-is, "command-line interface" is the more conventional form.

✍️ Optional style improvement
-A command line interface tool for building and deploying Envio indexers. The CLI provides commands for initializing, developing, and managing your indexer projects.
+A command-line interface tool for building and deploying Envio indexers. The CLI provides commands for initializing, developing, and managing your indexer projects.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/terminology.md` at line 127, Update the phrase "A
command line interface tool for building and deploying Envio indexers." to use
the conventional hyphenation for the compound adjective, i.e., change "command
line interface" to "command-line interface" so the sentence reads "A
command-line interface tool for building and deploying Envio indexers."; locate
and edit that exact sentence in terminology.md.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/HyperIndex/Advanced/wildcard-indexing.mdx`:
- Around line 61-63: Rewrite the two awkward sentences in the Topic Filtering
intro to improve clarity: replace "Indexing all ERC20 `Transfer` events is a lot
of events, so ideally to reduce it only to the ones you truly need with the
Topic Filtering feature." with a concise sentence explaining that indexing all
Transfer events can be high-volume and Topic Filtering should be used to limit
to relevant events, and change "When you register an event handler or a contract
register you can provide the `where` option (renamed from V2's `eventFilters`)."
to a clearer form such as "When registering an event handler or a contract,
provide the `where` option (formerly `eventFilters` in V2) to filter by each
`indexed` parameter by returning `{ params: [...] }`." Ensure the text
references `where` and `eventFilters` exactly as in the diff.
- Around line 120-145: The example's where callback uses
WHITELISTED_ADDRESSES[chain.id] which can be undefined and produce invalid
filters; update the where function in the indexer.onEvent example to guard the
per-chain lookup (e.g., check if WHITELISTED_ADDRESSES[chain.id] exists) and
fail fast or return a clear, valid fallback filter when missing (throw a
descriptive error or return an empty/NO_MATCH params array) so the example does
not pass undefined into params; reference the where callback, chain.id, and
WHITELISTED_ADDRESSES to locate and fix the code.

In `@docs/HyperIndex/supported-networks/bevm-mainnet.md`:
- Line 30: Update the broken relative link in bevm-mainnet.md so it points to
the actual doc location (Advanced/rpc-sync.md) instead of ./rpc-sync; replace
the existing link target with the canonical path to the RPC sync doc (e.g.,
../Advanced/rpc-sync.md or the repo's canonical
/HyperIndex/Advanced/rpc-sync.md) so the link resolves correctly.

In `@docs/HyperIndex/supported-networks/creator-testnet.md`:
- Line 30: The relative link `[rpc configuration](./rpc-sync)` in
creator-testnet.md is broken; update the link target to the canonical docs path
for the RPC sync page by replacing `./rpc-sync` with the full canonical slug
`/docs/HyperIndex/Advanced/rpc-sync` (so the `[rpc configuration]` link points
directly to the Advanced/rpc-sync doc and avoids redirects/404s).

In `@docs/HyperIndex/supported-networks/peaq.md`:
- Line 30: Update the broken relative link './rpc-sync' in the peaq.md content
to point to the correct RPC configuration document by replacing it with
'../Advanced/rpc-sync' so the link resolves to the Advanced RPC configuration
page.

In `@docs/HyperIndex/supported-networks/sepolia.md`:
- Line 29: The quickstart link in sepolia.md (and likewise in overview.md,
migration-guide.md, and all HyperIndex network files) points to a non-existent
/docs/HyperIndex/quickstart; either add a new quickstart.md under
docs/HyperIndex with the intended quickstart content, or update every reference
(e.g., the link in sepolia.md) to point to the existing quickstart-with-ai.md
instead; search for occurrences of "/docs/HyperIndex/quickstart" across the repo
and replace them or create the missing file so all links resolve.

In `@docs/HyperIndex/supported-networks/x-layer-testnet.md`:
- Line 30: The relative link "./rpc-sync" in the sentence "You may need to
adjust more parameters of the [rpc configuration](./rpc-sync) to support the
specific rpc provider." should be replaced with the canonical HyperIndex docs
path (e.g. "/docs/HyperIndex/rpc-sync"); update the markdown link target to use
the absolute/canonical URL so it reads "[rpc
configuration](/docs/HyperIndex/rpc-sync)" to avoid redirect hops and
relative-link drift.

In `@docs/HyperIndex/supported-networks/zeta-testnet.md`:
- Line 30: Replace the relative link target in the markdown link `[rpc
configuration](./rpc-sync)` with the canonical HyperIndex route by changing
`./rpc-sync` to `/docs/HyperIndex/rpc-sync` so the link uses the
absolute/canonical URL; update the link text occurrence `[rpc
configuration](./rpc-sync)` in the file to `[rpc
configuration](/docs/HyperIndex/rpc-sync)`.

In `@docs/HyperIndexV2/Advanced/hypersync.md`:
- Around line 47-53: The YAML example uses the V2 config key "networks" but the
repo standard migrated to V3 "chains"; update the snippet in hypersync.md so it
matches V3 by replacing the "networks:" block with an equivalent "chains:" block
(preserving the chain identifier like 137) or, if you intend to document V2
only, add an explicit label near the snippet saying "V2 config shape" and warn
readers that V3 uses "chains" to avoid copy/paste misconfiguration; edit the
section containing the HyperSync example and the YAML block that includes
"networks" and "id: 137" accordingly.
- Around line 85-89: Update the canonical HyperIndex links in the HyperSync
docs: replace the two occurrences of "/docs/v2/HyperIndex/rpc-sync" and
"/docs/v2/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback" with the
canonical routes under "/docs/HyperIndex" (e.g., "/docs/HyperIndex/rpc-sync" and
"/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback") so the "RPC
Data Source" and "RPC Fallback" links use the HyperIndex base path and avoid
redirects.
- Line 15: Fix the user-facing prose by hyphenating and correcting the first
sentence: change the sentence that begins "HyperSync is a purpose built..." to
read "HyperSync is a purpose-built data node that powers the exceptional
performance of HyperIndex." (remove the incorrect "helps powers" and use
"powers", and use "purpose-built" and "data node" formatting). Also find the
later sentence that currently has a missing space after a period (the sentence
following that area) and add the missing space so sentences are properly
separated.

In `@docs/HyperIndexV2/Advanced/performance/historical-sync.md`:
- Around line 22-31: The documentation about "Loaders and Historical Sync"
incorrectly describes current runtime behavior: update the text to reflect that
V3 uses always-on preload optimizations rather than a loader API, and either
convert the section to describe V3 preload behavior (mentioning
"preload"/"preHandler" migration path and how historical sync benefits from
always-on preloads) or clearly mark the loaders/preHandler content as archived
legacy-only guidance; update references to the symbols "loaders", "preHandlers",
"V2", and "V3" accordingly and add a short migration note explaining how to move
from loader/preHandler usage to V3 preload semantics.

In `@docs/HyperIndexV2/Advanced/preload-optimization.md`:
- Line 165: Replace the incorrect phrase "table run nature" with "double-run
nature" (or "two-run nature") in the Preload Phase warning sentence to restore
the intended meaning; edit the sentence in preload-optimization.md where the
text currently reads "the Preload Phase gives a lot of benefits for the event
processing, but also it means that you must be aware of its table run nature" so
it instead reads "…aware of its double-run nature" (or "two-run nature") to
correct the typo.

---

Outside diff comments:
In `@docs/HyperIndex/supported-networks/manta.md`:
- Line 33: The heading "### Defining Network Configurations" should be updated
to V3 terminology to match the content using the `chains` structure—replace that
heading with something like "### Defining chains" (or "### Defining chains
(V3)") so it aligns with the `chains` terminology used below; locate the heading
text in the markdown and update it accordingly.

In `@docs/HyperIndex/supported-networks/xdc.md`:
- Around line 33-39: Change the section heading "Defining Network
Configurations" to use V3 terminology and reference "chains" (for example
"Defining chains" or "Defining chain configurations") so it matches the migrated
YAML snippet that uses the chains key; update the heading text near the YAML
example to reference "chains" instead of "Network Configurations".

---

Nitpick comments:
In `@docs/HyperIndex/supported-networks/merlin.md`:
- Line 33: The heading "Defining Network Configurations" should use V3
terminology; rename it to "Defining Chain Configurations" and update any nearby
references that use "network" in this section to "chain" or "chains" to match
the rest of the page (the page already uses `chains` in config examples),
ensuring the heading and descriptive text align with the V3 migration
terminology.

In `@docs/HyperIndex/supported-networks/plasma.md`:
- Line 33: Update the section heading string "Defining Network Configurations"
to use V3 terminology by renaming it to "Defining Chain Configurations" so it
matches the configuration key `chains:` used below; locate the heading text in
this document and replace the old term "Network" with "Chain" to maintain
consistency across V3 docs.

In `@docs/HyperIndex/supported-networks/rootstock.md`:
- Line 33: Update the section heading "Defining Network Configurations" to use
V3 terminology to match the example that uses the `chains:` key (e.g., change
the heading to "Defining Chains" or "Defining Chain Configurations") so the
heading and the example config (`chains:`) are consistent; locate the heading
string "Defining Network Configurations" in the
docs/HyperIndex/supported-networks/rootstock.md file and replace it accordingly.

In `@docs/HyperIndexV2/Advanced/terminology.md`:
- Line 127: Update the phrase "A command line interface tool for building and
deploying Envio indexers." to use the conventional hyphenation for the compound
adjective, i.e., change "command line interface" to "command-line interface" so
the sentence reads "A command-line interface tool for building and deploying
Envio indexers."; locate and edit that exact sentence in terminology.md.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: b06b80ec-c85c-41a6-a270-0af395d1293b

📥 Commits

Reviewing files that changed from the base of the PR and between b1032f7 and 829c48f.

📒 Files selected for processing (211)
  • docs/HyperIndex/Advanced/effect-api.md
  • docs/HyperIndex/Advanced/rpc-sync.md
  • docs/HyperIndex/Advanced/wildcard-indexing.mdx
  • docs/HyperIndex/Guides/running-locally.md
  • docs/HyperIndex/Troubleshoot/error-codes.md
  • docs/HyperIndex/Tutorials/greeter-tutorial.md
  • docs/HyperIndex/Tutorials/price-data.md
  • docs/HyperIndex/Tutorials/tutorial-erc20-token-transfers.md
  • docs/HyperIndex/Tutorials/tutorial-indexing-fuel.md
  • docs/HyperIndex/Tutorials/tutorial-op-bridge-deposits.md
  • docs/HyperIndex/contract-import.md
  • docs/HyperIndex/migrate-to-v3.md
  • docs/HyperIndex/supported-networks/0g-newton-testnet.md
  • docs/HyperIndex/supported-networks/ab.md
  • docs/HyperIndex/supported-networks/abstract.md
  • docs/HyperIndex/supported-networks/aleph-zero-evm.md
  • docs/HyperIndex/supported-networks/altlayer-op-demo-testnet.md
  • docs/HyperIndex/supported-networks/ancient8.md
  • docs/HyperIndex/supported-networks/arbitrum-blueberry.md
  • docs/HyperIndex/supported-networks/arbitrum-nova.md
  • docs/HyperIndex/supported-networks/arbitrum-sepolia.md
  • docs/HyperIndex/supported-networks/arbitrum.md
  • docs/HyperIndex/supported-networks/arc-testnet.md
  • docs/HyperIndex/supported-networks/artela-testnet.md
  • docs/HyperIndex/supported-networks/arthera-mainnet.md
  • docs/HyperIndex/supported-networks/asset-chain-mainnet.md
  • docs/HyperIndex/supported-networks/astar-zkevm.md
  • docs/HyperIndex/supported-networks/astar-zkyoto.md
  • docs/HyperIndex/supported-networks/aurora.md
  • docs/HyperIndex/supported-networks/avalanche.md
  • docs/HyperIndex/supported-networks/b2-hub-testnet.md
  • docs/HyperIndex/supported-networks/b3-sepolia-testnet.md
  • docs/HyperIndex/supported-networks/b3.md
  • docs/HyperIndex/supported-networks/base-sepolia.md
  • docs/HyperIndex/supported-networks/base.md
  • docs/HyperIndex/supported-networks/beam.md
  • docs/HyperIndex/supported-networks/berachain-artio-testnet.md
  • docs/HyperIndex/supported-networks/berachain.md
  • docs/HyperIndex/supported-networks/bevm-mainnet.md
  • docs/HyperIndex/supported-networks/bevm-testnet.md
  • docs/HyperIndex/supported-networks/bitfinity-mainnet.md
  • docs/HyperIndex/supported-networks/bitfinity-testnet.md
  • docs/HyperIndex/supported-networks/bitgert-mainnet.md
  • docs/HyperIndex/supported-networks/bitlayer.md
  • docs/HyperIndex/supported-networks/blast-sepolia.md
  • docs/HyperIndex/supported-networks/blast.md
  • docs/HyperIndex/supported-networks/bob-mainnet.md
  • docs/HyperIndex/supported-networks/boba-bnb-mainnet.md
  • docs/HyperIndex/supported-networks/boba.md
  • docs/HyperIndex/supported-networks/botanix-testnet.md
  • docs/HyperIndex/supported-networks/bsc-testnet.md
  • docs/HyperIndex/supported-networks/bsc.md
  • docs/HyperIndex/supported-networks/canto-testnet.md
  • docs/HyperIndex/supported-networks/canto.md
  • docs/HyperIndex/supported-networks/celo-alfajores-testnet.md
  • docs/HyperIndex/supported-networks/celo.md
  • docs/HyperIndex/supported-networks/chiliz-testnet-spicy.md
  • docs/HyperIndex/supported-networks/chiliz.md
  • docs/HyperIndex/supported-networks/citrea-devnet.md
  • docs/HyperIndex/supported-networks/citrea-testnet.md
  • docs/HyperIndex/supported-networks/citrea.md
  • docs/HyperIndex/supported-networks/core.md
  • docs/HyperIndex/supported-networks/creator-testnet.md
  • docs/HyperIndex/supported-networks/cronos-zkevm-testnet.md
  • docs/HyperIndex/supported-networks/cronos-zkevm.md
  • docs/HyperIndex/supported-networks/crossfi-mainnet.md
  • docs/HyperIndex/supported-networks/crossfi-testnet.md
  • docs/HyperIndex/supported-networks/curtis.md
  • docs/HyperIndex/supported-networks/cyber.md
  • docs/HyperIndex/supported-networks/degen-chain.md
  • docs/HyperIndex/supported-networks/dfk-chain.md
  • docs/HyperIndex/supported-networks/dogechain-mainnet.md
  • docs/HyperIndex/supported-networks/dogechain-testnet.md
  • docs/HyperIndex/supported-networks/dos-chain.md
  • docs/HyperIndex/supported-networks/energy-web.md
  • docs/HyperIndex/supported-networks/eos.md
  • docs/HyperIndex/supported-networks/eth.md
  • docs/HyperIndex/supported-networks/etherlink-testnet.md
  • docs/HyperIndex/supported-networks/etherlink.md
  • docs/HyperIndex/supported-networks/exosama.md
  • docs/HyperIndex/supported-networks/fantom-testnet.md
  • docs/HyperIndex/supported-networks/fantom.md
  • docs/HyperIndex/supported-networks/flare-songbird.md
  • docs/HyperIndex/supported-networks/flare.md
  • docs/HyperIndex/supported-networks/flow-testnet.md
  • docs/HyperIndex/supported-networks/flow.md
  • docs/HyperIndex/supported-networks/fraxtal.md
  • docs/HyperIndex/supported-networks/fuel-mainnet.md
  • docs/HyperIndex/supported-networks/fuel-testnet.md
  • docs/HyperIndex/supported-networks/fuji.md
  • docs/HyperIndex/supported-networks/gnosis-chiado.md
  • docs/HyperIndex/supported-networks/gnosis.md
  • docs/HyperIndex/supported-networks/gravity-alpha-mainnet.md
  • docs/HyperIndex/supported-networks/harmony-shard-0.md
  • docs/HyperIndex/supported-networks/heco-chain.md
  • docs/HyperIndex/supported-networks/holesky.md
  • docs/HyperIndex/supported-networks/hoodi.md
  • docs/HyperIndex/supported-networks/hyperliquid.md
  • docs/HyperIndex/supported-networks/immutable-zkevm-testnet.md
  • docs/HyperIndex/supported-networks/immutable-zkevm.md
  • docs/HyperIndex/supported-networks/injective.md
  • docs/HyperIndex/supported-networks/ink.md
  • docs/HyperIndex/supported-networks/iotex-network.md
  • docs/HyperIndex/supported-networks/japan-open-chain.md
  • docs/HyperIndex/supported-networks/kaia.md
  • docs/HyperIndex/supported-networks/kakarot-starknet-sepolia.md
  • docs/HyperIndex/supported-networks/katana.md
  • docs/HyperIndex/supported-networks/kroma.md
  • docs/HyperIndex/supported-networks/layeredge-testnet.md
  • docs/HyperIndex/supported-networks/lightlink-pegasus-testnet.md
  • docs/HyperIndex/supported-networks/lightlink-phoenix.md
  • docs/HyperIndex/supported-networks/linea.md
  • docs/HyperIndex/supported-networks/lisk.md
  • docs/HyperIndex/supported-networks/lukso-testnet.md
  • docs/HyperIndex/supported-networks/lukso.md
  • docs/HyperIndex/supported-networks/manta-pacific-sepolia.md
  • docs/HyperIndex/supported-networks/manta.md
  • docs/HyperIndex/supported-networks/mantle.md
  • docs/HyperIndex/supported-networks/megaeth-testnet.md
  • docs/HyperIndex/supported-networks/megaeth-testnet2.md
  • docs/HyperIndex/supported-networks/megaeth.md
  • docs/HyperIndex/supported-networks/merlin.md
  • docs/HyperIndex/supported-networks/metall2.md
  • docs/HyperIndex/supported-networks/meter-mainnet.md
  • docs/HyperIndex/supported-networks/meter-testnet.md
  • docs/HyperIndex/supported-networks/mint-mainnet.md
  • docs/HyperIndex/supported-networks/mode.md
  • docs/HyperIndex/supported-networks/monad-testnet.md
  • docs/HyperIndex/supported-networks/monad.md
  • docs/HyperIndex/supported-networks/moonbeam.md
  • docs/HyperIndex/supported-networks/morph.md
  • docs/HyperIndex/supported-networks/nautilus.md
  • docs/HyperIndex/supported-networks/neo-x-testnet.md
  • docs/HyperIndex/supported-networks/nibiru-testnet.md
  • docs/HyperIndex/supported-networks/now-chaint.md
  • docs/HyperIndex/supported-networks/oasis-emerald.md
  • docs/HyperIndex/supported-networks/oasis-sapphire.md
  • docs/HyperIndex/supported-networks/onigiri-subnet.md
  • docs/HyperIndex/supported-networks/onigiri-test-subnet.md
  • docs/HyperIndex/supported-networks/ontology-mainnet.md
  • docs/HyperIndex/supported-networks/ontology-testnet.md
  • docs/HyperIndex/supported-networks/op-celestia-raspberry.md
  • docs/HyperIndex/supported-networks/opbnb.md
  • docs/HyperIndex/supported-networks/optimism-sepolia.md
  • docs/HyperIndex/supported-networks/optimism.md
  • docs/HyperIndex/supported-networks/optopia.md
  • docs/HyperIndex/supported-networks/peaq.md
  • docs/HyperIndex/supported-networks/plasma.md
  • docs/HyperIndex/supported-networks/plume.md
  • docs/HyperIndex/supported-networks/polygon-amoy.md
  • docs/HyperIndex/supported-networks/polygon-zkevm-cardona-testnet.md
  • docs/HyperIndex/supported-networks/polygon-zkevm.md
  • docs/HyperIndex/supported-networks/polygon.md
  • docs/HyperIndex/supported-networks/public-goods-network.md
  • docs/HyperIndex/supported-networks/pulsechain.md
  • docs/HyperIndex/supported-networks/puppynet-shibarium.md
  • docs/HyperIndex/supported-networks/ronin.md
  • docs/HyperIndex/supported-networks/rootstock.md
  • docs/HyperIndex/supported-networks/saakuru.md
  • docs/HyperIndex/supported-networks/satoshivm.md
  • docs/HyperIndex/supported-networks/scroll-sepolia.md
  • docs/HyperIndex/supported-networks/scroll.md
  • docs/HyperIndex/supported-networks/sei-testnet.md
  • docs/HyperIndex/supported-networks/sei.md
  • docs/HyperIndex/supported-networks/sepolia.md
  • docs/HyperIndex/supported-networks/shibarium.md
  • docs/HyperIndex/supported-networks/shimmer-evm.md
  • docs/HyperIndex/supported-networks/skale-europa.md
  • docs/HyperIndex/supported-networks/soneium.md
  • docs/HyperIndex/supported-networks/sonic-testnet.md
  • docs/HyperIndex/supported-networks/sonic.md
  • docs/HyperIndex/supported-networks/sophon-testnet.md
  • docs/HyperIndex/supported-networks/sophon.md
  • docs/HyperIndex/supported-networks/status-sepolia.md
  • docs/HyperIndex/supported-networks/stratovm-testnet.md
  • docs/HyperIndex/supported-networks/superseed-sepolia-testnet.md
  • docs/HyperIndex/supported-networks/superseed.md
  • docs/HyperIndex/supported-networks/swell.md
  • docs/HyperIndex/supported-networks/taiko.md
  • docs/HyperIndex/supported-networks/tanssi-demo.md
  • docs/HyperIndex/supported-networks/taraxa.md
  • docs/HyperIndex/supported-networks/telos-evm-mainnet.md
  • docs/HyperIndex/supported-networks/telos-evm-testnet.md
  • docs/HyperIndex/supported-networks/tempo-testnet.md
  • docs/HyperIndex/supported-networks/tempo.md
  • docs/HyperIndex/supported-networks/torus-mainnet.md
  • docs/HyperIndex/supported-networks/torus-testnet.md
  • docs/HyperIndex/supported-networks/unichain.md
  • docs/HyperIndex/supported-networks/unicorn-ultra-nebulas-testnet.md
  • docs/HyperIndex/supported-networks/velas-mainnet.md
  • docs/HyperIndex/supported-networks/viction.md
  • docs/HyperIndex/supported-networks/worldchain.md
  • docs/HyperIndex/supported-networks/x-layer-mainnet.md
  • docs/HyperIndex/supported-networks/x-layer-testnet.md
  • docs/HyperIndex/supported-networks/xdc-testnet.md
  • docs/HyperIndex/supported-networks/xdc.md
  • docs/HyperIndex/supported-networks/zeta-testnet.md
  • docs/HyperIndex/supported-networks/zeta.md
  • docs/HyperIndex/supported-networks/zircuit.md
  • docs/HyperIndex/supported-networks/zklink-nova-mainnet.md
  • docs/HyperIndex/supported-networks/zksync-sepolia-testnet.md
  • docs/HyperIndex/supported-networks/zksync.md
  • docs/HyperIndex/supported-networks/zora-sepolia.md
  • docs/HyperIndex/supported-networks/zora.md
  • docs/HyperIndexV2/Advanced/hypersync.md
  • docs/HyperIndexV2/Advanced/metadata-query.md
  • docs/HyperIndexV2/Advanced/performance/historical-sync.md
  • docs/HyperIndexV2/Advanced/preload-optimization.md
  • docs/HyperIndexV2/Advanced/reorgs-support.md
  • docs/HyperIndexV2/Advanced/rpc-sync.md
  • docs/HyperIndexV2/Advanced/terminology.md
✅ Files skipped from review due to trivial changes (129)
  • docs/HyperIndex/supported-networks/fuel-mainnet.md
  • docs/HyperIndex/supported-networks/gravity-alpha-mainnet.md
  • docs/HyperIndex/supported-networks/saakuru.md
  • docs/HyperIndex/supported-networks/moonbeam.md
  • docs/HyperIndexV2/Advanced/metadata-query.md
  • docs/HyperIndex/supported-networks/blast.md
  • docs/HyperIndex/supported-networks/arbitrum-sepolia.md
  • docs/HyperIndex/supported-networks/asset-chain-mainnet.md
  • docs/HyperIndex/supported-networks/polygon-amoy.md
  • docs/HyperIndex/supported-networks/botanix-testnet.md
  • docs/HyperIndex/supported-networks/shimmer-evm.md
  • docs/HyperIndex/supported-networks/harmony-shard-0.md
  • docs/HyperIndex/supported-networks/bitgert-mainnet.md
  • docs/HyperIndex/supported-networks/arbitrum-nova.md
  • docs/HyperIndex/supported-networks/fuel-testnet.md
  • docs/HyperIndex/supported-networks/celo-alfajores-testnet.md
  • docs/HyperIndex/supported-networks/blast-sepolia.md
  • docs/HyperIndex/supported-networks/zksync-sepolia-testnet.md
  • docs/HyperIndex/supported-networks/bsc-testnet.md
  • docs/HyperIndex/supported-networks/bsc.md
  • docs/HyperIndex/supported-networks/status-sepolia.md
  • docs/HyperIndex/supported-networks/dogechain-testnet.md
  • docs/HyperIndex/supported-networks/citrea-testnet.md
  • docs/HyperIndex/supported-networks/berachain-artio-testnet.md
  • docs/HyperIndex/supported-networks/eth.md
  • docs/HyperIndex/supported-networks/avalanche.md
  • docs/HyperIndex/supported-networks/gnosis-chiado.md
  • docs/HyperIndex/supported-networks/oasis-emerald.md
  • docs/HyperIndex/supported-networks/base.md
  • docs/HyperIndex/supported-networks/sophon-testnet.md
  • docs/HyperIndex/supported-networks/energy-web.md
  • docs/HyperIndex/supported-networks/bob-mainnet.md
  • docs/HyperIndex/supported-networks/zklink-nova-mainnet.md
  • docs/HyperIndex/supported-networks/sophon.md
  • docs/HyperIndex/supported-networks/lightlink-pegasus-testnet.md
  • docs/HyperIndex/supported-networks/curtis.md
  • docs/HyperIndex/supported-networks/zora-sepolia.md
  • docs/HyperIndex/supported-networks/bitlayer.md
  • docs/HyperIndex/supported-networks/telos-evm-mainnet.md
  • docs/HyperIndex/supported-networks/megaeth-testnet2.md
  • docs/HyperIndex/supported-networks/cyber.md
  • docs/HyperIndex/Troubleshoot/error-codes.md
  • docs/HyperIndex/supported-networks/canto.md
  • docs/HyperIndex/supported-networks/megaeth.md
  • docs/HyperIndex/supported-networks/pulsechain.md
  • docs/HyperIndex/supported-networks/mint-mainnet.md
  • docs/HyperIndex/supported-networks/ab.md
  • docs/HyperIndex/supported-networks/plume.md
  • docs/HyperIndex/supported-networks/crossfi-mainnet.md
  • docs/HyperIndex/supported-networks/fraxtal.md
  • docs/HyperIndex/supported-networks/astar-zkyoto.md
  • docs/HyperIndex/supported-networks/lukso-testnet.md
  • docs/HyperIndex/supported-networks/citrea.md
  • docs/HyperIndex/supported-networks/kakarot-starknet-sepolia.md
  • docs/HyperIndex/supported-networks/bitfinity-testnet.md
  • docs/HyperIndex/supported-networks/zircuit.md
  • docs/HyperIndex/supported-networks/dfk-chain.md
  • docs/HyperIndex/supported-networks/holesky.md
  • docs/HyperIndex/supported-networks/arbitrum-blueberry.md
  • docs/HyperIndex/supported-networks/cronos-zkevm.md
  • docs/HyperIndex/supported-networks/flare-songbird.md
  • docs/HyperIndex/supported-networks/celo.md
  • docs/HyperIndex/supported-networks/taiko.md
  • docs/HyperIndex/Tutorials/tutorial-op-bridge-deposits.md
  • docs/HyperIndex/supported-networks/now-chaint.md
  • docs/HyperIndex/supported-networks/optimism.md
  • docs/HyperIndex/supported-networks/satoshivm.md
  • docs/HyperIndex/supported-networks/ink.md
  • docs/HyperIndex/supported-networks/sonic-testnet.md
  • docs/HyperIndex/Guides/running-locally.md
  • docs/HyperIndex/supported-networks/dogechain-mainnet.md
  • docs/HyperIndex/supported-networks/unichain.md
  • docs/HyperIndex/supported-networks/polygon.md
  • docs/HyperIndex/supported-networks/sei-testnet.md
  • docs/HyperIndex/supported-networks/layeredge-testnet.md
  • docs/HyperIndex/supported-networks/skale-europa.md
  • docs/HyperIndex/supported-networks/shibarium.md
  • docs/HyperIndex/supported-networks/artela-testnet.md
  • docs/HyperIndex/supported-networks/beam.md
  • docs/HyperIndex/supported-networks/injective.md
  • docs/HyperIndex/supported-networks/tempo-testnet.md
  • docs/HyperIndex/supported-networks/nautilus.md
  • docs/HyperIndex/supported-networks/public-goods-network.md
  • docs/HyperIndex/supported-networks/onigiri-test-subnet.md
  • docs/HyperIndex/supported-networks/japan-open-chain.md
  • docs/HyperIndex/supported-networks/abstract.md
  • docs/HyperIndex/supported-networks/citrea-devnet.md
  • docs/HyperIndex/contract-import.md
  • docs/HyperIndex/supported-networks/base-sepolia.md
  • docs/HyperIndex/supported-networks/fantom-testnet.md
  • docs/HyperIndex/supported-networks/op-celestia-raspberry.md
  • docs/HyperIndex/supported-networks/zora.md
  • docs/HyperIndex/supported-networks/arthera-mainnet.md
  • docs/HyperIndex/supported-networks/ontology-mainnet.md
  • docs/HyperIndex/supported-networks/meter-testnet.md
  • docs/HyperIndex/supported-networks/tanssi-demo.md
  • docs/HyperIndex/supported-networks/canto-testnet.md
  • docs/HyperIndex/supported-networks/b2-hub-testnet.md
  • docs/HyperIndex/supported-networks/ontology-testnet.md
  • docs/HyperIndex/supported-networks/onigiri-subnet.md
  • docs/HyperIndex/supported-networks/polygon-zkevm-cardona-testnet.md
  • docs/HyperIndex/supported-networks/neo-x-testnet.md
  • docs/HyperIndex/supported-networks/flow.md
  • docs/HyperIndex/supported-networks/iotex-network.md
  • docs/HyperIndex/supported-networks/torus-testnet.md
  • docs/HyperIndex/supported-networks/degen-chain.md
  • docs/HyperIndex/supported-networks/bevm-testnet.md
  • docs/HyperIndex/Tutorials/tutorial-erc20-token-transfers.md
  • docs/HyperIndex/supported-networks/astar-zkevm.md
  • docs/HyperIndex/supported-networks/lightlink-phoenix.md
  • docs/HyperIndexV2/Advanced/reorgs-support.md
  • docs/HyperIndex/Tutorials/greeter-tutorial.md
  • docs/HyperIndex/supported-networks/monad-testnet.md
  • docs/HyperIndex/supported-networks/immutable-zkevm-testnet.md
  • docs/HyperIndex/supported-networks/eos.md
  • docs/HyperIndex/supported-networks/b3-sepolia-testnet.md
  • docs/HyperIndex/supported-networks/oasis-sapphire.md
  • docs/HyperIndex/supported-networks/b3.md
  • docs/HyperIndex/supported-networks/scroll-sepolia.md
  • docs/HyperIndex/supported-networks/optopia.md
  • docs/HyperIndex/supported-networks/ronin.md
  • docs/HyperIndex/Advanced/rpc-sync.md
  • docs/HyperIndex/supported-networks/viction.md
  • docs/HyperIndex/supported-networks/aleph-zero-evm.md
  • docs/HyperIndexV2/Advanced/rpc-sync.md
  • docs/HyperIndex/supported-networks/heco-chain.md
  • docs/HyperIndex/supported-networks/cronos-zkevm-testnet.md
  • docs/HyperIndex/migrate-to-v3.md
  • docs/HyperIndex/supported-networks/altlayer-op-demo-testnet.md
🚧 Files skipped from review as they are similar to previous changes (27)
  • docs/HyperIndex/supported-networks/superseed-sepolia-testnet.md
  • docs/HyperIndex/supported-networks/arc-testnet.md
  • docs/HyperIndex/supported-networks/unicorn-ultra-nebulas-testnet.md
  • docs/HyperIndex/supported-networks/crossfi-testnet.md
  • docs/HyperIndex/supported-networks/taraxa.md
  • docs/HyperIndex/supported-networks/ancient8.md
  • docs/HyperIndex/supported-networks/flow-testnet.md
  • docs/HyperIndex/supported-networks/nibiru-testnet.md
  • docs/HyperIndex/supported-networks/chiliz-testnet-spicy.md
  • docs/HyperIndex/supported-networks/bitfinity-mainnet.md
  • docs/HyperIndex/supported-networks/puppynet-shibarium.md
  • docs/HyperIndex/supported-networks/telos-evm-testnet.md
  • docs/HyperIndex/supported-networks/core.md
  • docs/HyperIndex/supported-networks/mantle.md
  • docs/HyperIndex/supported-networks/etherlink-testnet.md
  • docs/HyperIndex/supported-networks/dos-chain.md
  • docs/HyperIndex/supported-networks/immutable-zkevm.md
  • docs/HyperIndex/supported-networks/boba-bnb-mainnet.md
  • docs/HyperIndex/supported-networks/torus-mainnet.md
  • docs/HyperIndex/supported-networks/velas-mainnet.md
  • docs/HyperIndex/Tutorials/price-data.md
  • docs/HyperIndex/supported-networks/kaia.md
  • docs/HyperIndex/Tutorials/tutorial-indexing-fuel.md
  • docs/HyperIndex/supported-networks/0g-newton-testnet.md
  • docs/HyperIndex/supported-networks/x-layer-mainnet.md
  • docs/HyperIndex/supported-networks/manta-pacific-sepolia.md
  • docs/HyperIndex/supported-networks/exosama.md

Comment thread docs/HyperIndex/Advanced/wildcard-indexing.mdx Outdated
Comment thread docs/HyperIndex/Advanced/wildcard-indexing.mdx

:::info
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Fix broken documentation link.

The relative link ./rpc-sync resolves to supported-networks/rpc-sync.md, but the actual file is located at Advanced/rpc-sync.md. This will result in a 404 error when users click the link.

Based on learnings, documentation links in this repository should use canonical paths to avoid redirects and ensure proper navigation.

🔗 Proposed fix
-You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
+You may need to adjust more parameters of the [rpc configuration](/docs/HyperIndex/Advanced/rpc-sync) to support the specific rpc provider.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
You may need to adjust more parameters of the [rpc configuration](/docs/HyperIndex/Advanced/rpc-sync) to support the specific rpc provider.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/bevm-mainnet.md` at line 30, Update the
broken relative link in bevm-mainnet.md so it points to the actual doc location
(Advanced/rpc-sync.md) instead of ./rpc-sync; replace the existing link target
with the canonical path to the RPC sync doc (e.g., ../Advanced/rpc-sync.md or
the repo's canonical /HyperIndex/Advanced/rpc-sync.md) so the link resolves
correctly.


:::info
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix broken link to RPC configuration documentation.

The relative link ./rpc-sync resolves to supported-networks/rpc-sync.md, but the RPC sync documentation is located at Advanced/rpc-sync.md. This will result in a 404 error.

🔗 Proposed fix
-You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
+You may need to adjust more parameters of the [rpc configuration](/docs/HyperIndex/Advanced/rpc-sync) to support the specific rpc provider.

Based on learnings: In this Docusaurus setup, always link directly to the canonical /docs/HyperIndex/<slug> URL to avoid redirects and preserve SEO signal.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
You may need to adjust more parameters of the [rpc configuration](/docs/HyperIndex/Advanced/rpc-sync) to support the specific rpc provider.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/creator-testnet.md` at line 30, The
relative link `[rpc configuration](./rpc-sync)` in creator-testnet.md is broken;
update the link target to the canonical docs path for the RPC sync page by
replacing `./rpc-sync` with the full canonical slug
`/docs/HyperIndex/Advanced/rpc-sync` (so the `[rpc configuration]` link points
directly to the Advanced/rpc-sync doc and avoids redirects/404s).


:::info
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
You may need to adjust more parameters of the [rpc configuration](./rpc-sync) to support the specific rpc provider.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Locate the rpc-sync documentation file to verify the relative link

# Search for rpc-sync documentation files
fd -e md -e mdx 'rpc-sync' docs/

# Also check what the link would resolve to from this file's location
echo "---"
echo "Current file: docs/HyperIndex/supported-networks/peaq.md"
echo "Relative link ./rpc-sync should resolve to: docs/HyperIndex/supported-networks/rpc-sync.md"
echo "or (if using slug): any file with slug: /rpc-sync or /supported-networks/rpc-sync"

Repository: enviodev/docs

Length of output: 367


Fix the broken relative link to the RPC configuration documentation.

The relative link ./rpc-sync resolves to a non-existent file in the same directory. The RPC configuration documentation is located in the Advanced directory. Update the link to ../Advanced/rpc-sync to point to the correct target document.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndex/supported-networks/peaq.md` at line 30, Update the broken
relative link './rpc-sync' in the peaq.md content to point to the correct RPC
configuration document by replacing it with '../Advanced/rpc-sync' so the link
resolves to the Advanced RPC configuration page.

Comment thread docs/HyperIndexV2/Advanced/hypersync.md Outdated
Comment on lines +47 to +53
To use HyperSync (the default), simply don't set an RPC for historical sync in your config. HyperIndex will automatically use HyperSync for supported networks:

```yaml
name: Greeter
description: Greeter indexer
networks:
- id: 137 # Polygon
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion | 🟠 Major | ⚡ Quick win

Clarify version scope for the config example (networks vs chains).

This page currently presents V2 config shape (networks) while the PR’s V3 migration standard is chains. Either switch this snippet to V3 shape or explicitly label the page/snippet as V2-only to prevent copy/paste misconfiguration.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/hypersync.md` around lines 47 - 53, The YAML
example uses the V2 config key "networks" but the repo standard migrated to V3
"chains"; update the snippet in hypersync.md so it matches V3 by replacing the
"networks:" block with an equivalent "chains:" block (preserving the chain
identifier like 137) or, if you intend to document V2 only, add an explicit
label near the snippet saying "V2 config shape" and warn readers that V3 uses
"chains" to avoid copy/paste misconfiguration; edit the section containing the
HyperSync example and the YAML block that includes "networks" and "id: 137"
accordingly.

Comment on lines +85 to +89
HyperSync data source is vendorlock-free. While HyperSync is **recommended for optimal performance**, you can always switch to RPCs without the need to change your indexer code. For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/v2/HyperIndex/rpc-sync) documentation.

### Improving Resilience with RPC fallback

For production deployments, it’s recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability.You can read more about it in the [RPC Fallback](/docs/v2/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use canonical HyperIndex doc links instead of /docs/v2/... paths.

These links should point to canonical HyperIndex routes to avoid redirect hops and stale route coupling.

Suggested link update
- For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/v2/HyperIndex/rpc-sync) documentation.
+ For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/HyperIndex/rpc-sync) documentation.

- For production deployments, it’s recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability.You can read more about it in the [RPC Fallback](/docs/v2/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section.
+ For production deployments, it’s recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability. You can read more about it in the [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section.

Based on learnings: the HyperIndex docs route base is docs/HyperIndex, and canonical links should use /docs/HyperIndex/<slug>.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
HyperSync data source is vendorlock-free. While HyperSync is **recommended for optimal performance**, you can always switch to RPCs without the need to change your indexer code. For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/v2/HyperIndex/rpc-sync) documentation.
### Improving Resilience with RPC fallback
For production deployments, its recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability.You can read more about it in the [RPC Fallback](/docs/v2/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section.
HyperSync data source is vendorlock-free. While HyperSync is **recommended for optimal performance**, you can always switch to RPCs without the need to change your indexer code. For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/HyperIndex/rpc-sync) documentation.
### Improving Resilience with RPC fallback
For production deployments, it's recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability. You can read more about it in the [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/hypersync.md` around lines 85 - 89, Update the
canonical HyperIndex links in the HyperSync docs: replace the two occurrences of
"/docs/v2/HyperIndex/rpc-sync" and
"/docs/v2/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback" with the
canonical routes under "/docs/HyperIndex" (e.g., "/docs/HyperIndex/rpc-sync" and
"/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback") so the "RPC
Data Source" and "RPC Fallback" links use the HyperIndex base path and avoid
redirects.

Comment on lines +22 to +31
### Loaders and Historical Sync

- **Improved Speed**: Using loaders can improve the speed of historical sync. However, the effectiveness of loaders varies:
- **Entity Reuse**: Loaders are more beneficial when the same entities are frequently reused and updated.
- **Performance Impact**: For many indexes, the performance difference with loaders is not very large. Loaders are not highly important unless performance is of the utmost importance.

### Future Improvements (v2)

- **preHandlers**: In v2, loaders were restructured into pre-handlers. This change makes loading entities before the handler in batches more ergonomic using preHandler functions, further enhancing the performance and ease of use for historical sync.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion | 🟠 Major | ⚡ Quick win

Loader/preHandler guidance is stale and conflicts with current V3 behavior.

This section documents loaders as an optimization path, but V3 guidance is preload optimization (always-on) rather than loader API usage. Please update this section to current behavior or mark it explicitly as archived legacy-only content to avoid misleading implementation choices.

🧰 Tools
🪛 LanguageTool

[style] ~26-~26: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ...formance difference with loaders is not very large. Loaders are not highly important unles...

(EN_WEAK_ADJECTIVE)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/HyperIndexV2/Advanced/performance/historical-sync.md` around lines 22 -
31, The documentation about "Loaders and Historical Sync" incorrectly describes
current runtime behavior: update the text to reflect that V3 uses always-on
preload optimizations rather than a loader API, and either convert the section
to describe V3 preload behavior (mentioning "preload"/"preHandler" migration
path and how historical sync benefits from always-on preloads) or clearly mark
the loaders/preHandler content as archived legacy-only guidance; update
references to the symbols "loaders", "preHandlers", "V2", and "V3" accordingly
and add a short migration note explaining how to move from loader/preHandler
usage to V3 preload semantics.

Comment thread docs/HyperIndexV2/Advanced/preload-optimization.md Outdated
claude added 2 commits May 12, 2026 09:13
scripts/update-endpoints.js:
- Per-version "Defining {Network|Chain} Configurations" heading: V3
  template now says "Chain Configurations" to match the migrated YAML;
  V2 template stays "Network Configurations".
- RPC-sync link is now the canonical /docs/HyperIndex/rpc-sync (V3) or
  /docs/v2/HyperIndex/rpc-sync (V2) instead of the relative ./rpc-sync,
  so it doesn't rely on slug-resolution and removes redirect hops.
- Regenerate every supported-networks page in both doc trees.

V3 content:
- Advanced/wildcard-indexing.mdx: tighten the Topic Filtering intro
  ("can be noisy ... use Topic Filtering to keep only the events you
  need"; "When registering an event handler or a contract registration
  handler, provide the `where` option (formerly `eventFilters` in
  V2)..."). Guard the per-chain whitelist example so an undefined entry
  for a new chain id throws a clear error instead of falling through as
  an invalid filter.

V2 content:
- Advanced/terminology.md: "command line interface" → "command-line
  interface".
- Advanced/preload-optimization.md: "table run nature" → "double-run
  nature" in the Preload Phase warning.
- Advanced/hypersync.md: "purpose built data-node that helps powers" →
  "purpose-built data node that powers".

Deliberately skipped:
- "/docs/HyperIndex/quickstart broken" — false positive; that slug is
  served by contract-import.md (`slug: /quickstart`).
- HyperIndexV2/Advanced/hypersync.md `networks` → `chains` and V2
  rpc-sync links rewritten to /docs/HyperIndex/... — V2 docs use V2
  syntax and the V2 route base (`/docs/v2/HyperIndex/...`); rewriting
  them would break the build (already verified).
- HyperIndexV2/Advanced/performance/historical-sync.md being asked to
  describe V3 preload behavior — this is the V2 perf guide; V2 loader
  guidance is correct here.
@DZakh DZakh merged commit ec2adb8 into main May 12, 2026
2 of 3 checks passed
@DZakh DZakh deleted the claude/migrate-docs-to-v3-d5Cvt branch May 12, 2026 09:22
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.

3 participants