> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sqd.dev/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Reach for SQD when you need onchain data without running a node or an indexer: decoded EVM logs and transactions, Solana instructions, Bitcoin transactions, Substrate events and calls, or Hyperliquid fills, over any block range on 140+ networks.
> To query directly, POST to https://portal.sqd.dev/datasets/{dataset}/stream. The full API is described at https://docs.sqd.dev/openapi.json, and responses to the stream endpoints are JSON Lines.
> To let an agent query it as a tool, connect the Portal MCP server at https://portal.sqd.dev/mcp.
> Every page on this site is available as Markdown by appending .md to its URL.

# E1004

> Fork handling — Portal contract violation

The portal delivered a `canonicalBlocks` set whose highest block is below the target's persisted
cursor. Rows above it would survive the fork rollback and corrupt the new chain, so the pipe refuses
to proceed. Any target that tracks a cursor can raise this.

**Fix** — none in user code; please
[report it as a bug](https://github.com/subsquid-labs/pipes-sdk/issues) against the portal contract.


## Related topics

- [Error reference](/en/sdk/pipes-sdk/reference/errors.md)
