Skip to content

docs(errors): document IE072–IE090 and fill in/correct IE001–IE071 - #1251

Merged
tmigone merged 2 commits into
mainfrom
add-error-codes
Aug 6, 2026
Merged

docs(errors): document IE072–IE090 and fill in/correct IE001–IE071#1251
tmigone merged 2 commits into
mainfrom
add-error-codes

Conversation

@brandonleekramer

Copy link
Copy Markdown
Member

Summary

docs/errors.md had drifted out of date: it stopped at IE071, and many
existing entries were stubbed with TODO for their solution (and a few for
their summary). This PR brings the reference in line with the current
IndexerErrorCode enum and fills in the gaps.

All new content is grounded in the codebase — summaries come from
INDEXER_ERROR_MESSAGES in packages/indexer-common/src/errors.ts, and each
description/solution is derived from where the code is actually thrown
(packages/indexer-common/**, packages/indexer-agent/**,
packages/indexer-cli/**). Nothing was invented; where a code carries no
actionable guidance in the source, that is stated plainly rather than guessed.

Only docs/errors.md is changed.

What changed

  • Added IE072–IE090 (19 new codes), matching the existing
    Summary / Description / Solution format — covering the Graph Horizon
    provision, allocation, present-POI, collect-rewards and over-allocation
    paths, plus batch-tx, subgraph-features and network-contract errors.
  • Filled in TODO solutions for the many existing codes that had none,
    based on their throw sites (connectivity/DB/RPC guidance, gas/nonce handling,
    POI resolution, etc.).
  • Added the missing IE037–IE040 summaries (previously blank/TODO):
    failed to query disputable allocations, query epochs, store POI disputes,
    and fetch POI disputes.
  • Flagged legacy codes that are still defined in the enum but no longer
    thrown by the current codebase — the pre-TAP Scalar-Receipt, Vector-transfer,
    state-channel and query-fee-voucher flows (IE003, IE016, IE022, IE023,
    IE029–IE031, IE033, IE044–IE049, IE052–IE054, IE056) — so operators aren't
    sent chasing errors the software can't emit.
  • Fixed typos and a self-referential reference (e.g. nubernumber,
    and the IE009 solution that told readers to grep for IE010).
  • Restructured IE035 into a proper summary + description.

Notes for reviewers

  • IE088 (Failed to present POI) is defined in the enum but is not thrown
    anywhere in the current code — the presentPOI resolver surfaces the
    underlying error, and a transaction that never mines is reported as IE089.
    It's documented as reserved and routed to IE062 / IE065 / IE089 rather
    than given a fabricated cause.
  • IE090 exists in the enum (Failed to reallocate: indexer is overallocated) and is now documented as well.
  • The "legacy" framing reflects two facts: these codes have no throw site in
    the current tree, and their summaries name payment mechanisms that TAP
    replaced. Happy to soften the wording to just "no longer emitted by current
    versions" if maintainers prefer to avoid the TAP attribution.

Verification

  • Codes run IE001–IE090 with no gaps or duplicates.
  • Every intra-doc cross-reference anchor resolves.
  • No remaining TODO placeholders.

brandonleekramer and others added 2 commits August 5, 2026 16:52
Append entries for IE072 through IE090 to docs/errors.md, matching the
existing Summary/Description/Solution format. Details sourced from the
indexer codebase (packages/indexer-common).

IE088 (present POI) is defined in the IndexerErrorCode enum but is not
raised on its own; the entry documents that present-POI failures surface
as IE062, IE065, or IE089.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K8moxDbc6s6j152GWUCCgC
Replace TODO solutions with guidance grounded in the indexer codebase,
add the missing IE037-IE040 summaries (from IndexerErrorCode messages),
fix typos (nuber, self-referential grep code), restructure IE035, and
mark codes that are defined but no longer thrown by the current codebase
(legacy Scalar-Receipt, Vector transfer, state-channel and query-fee
voucher flows superseded by TAP) so operators aren't sent chasing them.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K8moxDbc6s6j152GWUCCgC
@github-project-automation github-project-automation Bot moved this to 🗃️ Inbox in Indexer Aug 5, 2026
@github-project-automation github-project-automation Bot moved this from 🗃️ Inbox to ✅ Approved in Indexer Aug 6, 2026
@tmigone
tmigone merged commit 0e8b103 into main Aug 6, 2026
11 checks passed
@tmigone
tmigone deleted the add-error-codes branch August 6, 2026 17:27
@github-project-automation github-project-automation Bot moved this from ✅ Approved to 🚗 Merged in Indexer Aug 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🚗 Merged

Development

Successfully merging this pull request may close these issues.

2 participants