Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 0 additions & 12 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -376,10 +376,6 @@
},
"navbar": {
"links": [
{
"label": "Developer Hub",
"href": "https://www.sei.io/developers"
},
{
"label": "GitHub",
"href": "https://github.com/sei-protocol"
Expand Down Expand Up @@ -411,10 +407,6 @@
{
"header": "Developers",
"items": [
{
"label": "Developer Hub",
"href": "https://www.sei.io/developers"
},
{
"label": "GitHub",
"href": "https://github.com/sei-protocol"
Expand Down Expand Up @@ -1672,9 +1664,5 @@
},
"icons": {
"library": "fontawesome"
},
"banner": {

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[suggestion] The PR description says the notice "was rendering twice on /" — but that only argues for removing one of the two copies. This banner was site-wide; the <Danger> in index.mdx was homepage-only. Removing both means the IBC-disabled warning now appears on no page outside the SIP-03 guide and a handful of deep pages (cosmos-sdk/index.mdx, learn/dev-interoperability.mdx, learn/sip-03-exchange-migration.mdx).

Given the content — Prop 121 passed 2026-07-31, roughly a week ago, and IBC-bridged holdings (USDC.n, USDT.kava, ATOM, WBTC) are no longer redeemable on their origin chain — that's a material loss of reach for a funds-affecting notice. Keeping this banner and removing only the homepage <Danger> fixes the duplication without the reach regression; the banner is already dismissible: true, so returning readers aren't penalized.

If dropping the site-wide banner is a deliberate editorial call rather than a side effect of de-duplicating, worth saying so in the description, since the current rationale doesn't cover it.

"content": "**IBC is disabled on Sei in both directions** [Proposal #121](https://seistream.app/proposals/121) passed on July 31, 2026 and disabled outbound IBC transfers. Inbound IBC was already disabled by [Proposal #116](https://seistream.app/proposals/116) and [Proposal #120](https://seistream.app/proposals/120). No asset can be bridged into or out of Sei over IBC. If you hold [USDC.n](https://seiscan.io/address/0x3894085Ef7Ff0f0aeDf52E2A2704928d1Ec074F1) (USDC via Noble), [USDT.kava](https://seiscan.io/address/0xb75d0b03c06a926e488e2659df1a861f860bd3d1) (Kava USDT), ATOM, WBTC, or any other IBC asset on Sei, it can no longer be redeemed on its origin chain. The balance still exists on Sei and can still be transferred within Sei. See the [SIP-03 Migration Guide](/learn/sip-03-migration) for what changed, the full list of affected assets, and what remains possible.",
"dismissible": true
}
}
2 changes: 0 additions & 2 deletions evm/differences-with-ethereum.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,6 @@

[Proposal 115](https://seistream.app/proposals/115) further disables CosmWasm code uploads and contract instantiations chain-wide — no new CosmWasm contracts can be deployed. Only `execute` and `query` against pre-existing CosmWasm contracts remain available.

**IBC is now disabled in both directions.** [Proposal 116](https://seistream.app/proposals/116) and [Proposal 120](https://seistream.app/proposals/120) set the `ibc` module's `InboundEnabled` parameter to `false`, and [Proposal 121](https://seistream.app/proposals/121) set `OutboundEnabled` to `false` on July 31, 2026. No asset can be bridged into or out of Sei over IBC, and IBC assets already on Sei can no longer be redeemed on their origin chain. See the [SIP-03 Migration Guide](/learn/sip-03-migration) for the full explanation and the list of affected assets.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[blocker] This removal isn't mentioned in the PR description — in fact the description asserts this page still carries the IBC notice. This is the only place in the entire evm/ tree that stated "IBC is now disabled in both directions" alongside the Prop 115 CosmWasm notice, and it's the page developers hit when asking "how does Sei differ from Ethereum?"

The surrounding <Danger> block is being kept for Prop 115, so retaining one sentence here costs nothing structurally. Suggest keeping it, or at minimum reducing it to a pointer:

IBC is disabled in both directions — see the SIP-03 Migration Guide.

If the intent really is to drop it, that should be called out in the description so the approving reviewer is signing off on it.


</Danger>

- **Sei is a dual-execution environment (EVM and Cosmos-SDK).** This means:
Expand All @@ -50,7 +48,7 @@
- User accounts on Sei have [two addresses](/learn/accounts) derived from the same public key (Cosmos Bech32 and EVM-compatible 0x…)
- Interoperability between EVM and Cosmos-SDK modules is governed and navigated via [precompiles](/evm/precompiles/example-usage) and [pointer contracts](/learn/pointers)

## Sei EVM Release

Check warning on line 51 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L51

Use sentence case for headings: 'Sei EVM Release'.

Sei EVM was originally deployed at the following block heights and versions:

Expand All @@ -66,7 +64,7 @@
- **Height:** `79123881`
- **Changelog:** https://github.com/sei-protocol/sei-chain/blob/main/CHANGELOG.md#v552

## Opcode Differences

Check warning on line 67 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L67

Use sentence case for headings: 'Opcode Differences'.

| Opcode | Sei EVM | Ethereum | Notes |
| --- | --- | --- | --- |
Expand All @@ -80,7 +78,7 @@
| Blob‑related opcodes | Not supported (Pectra without blobs) | Supported post‑Cancun (EIP‑4844) | Blob transactions are not enabled on Sei. |


### PREVRANDAO

Check warning on line 81 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L81

Use sentence case for headings: 'PREVRANDAO'.

Since Sei doesn't rely on the same pseudo‑randomness way of determining the next
validator like Proof of Stake (PoS) Ethereum does, it doesn't have the
Expand All @@ -94,19 +92,19 @@
Coinbase address on Sei is always set to (the EVM address of) the global fee
collector.

## State Root

Check warning on line 95 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L95

Use sentence case for headings: 'State Root'.

Since Sei uses AVL-tree instead of Merkle Patricia Trie (MPT) for data storage,
Sei doesn't have per-account state root. The global state root is the AVL-tree
root which is also not equivalent to Ethereum's overall state root (which is a
MPT root)

## Block Hash

Check warning on line 102 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L102

Use sentence case for headings: 'Block Hash'.

The block hash on Sei is computed based on the block header in Tendermint data
format, and is different from Ethereum's block Hash as a result.

## Base Fee & Tips

Check warning on line 107 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L107

Use sentence case for headings: 'Base Fee & Tips'.

Sei supports all non‑blob transaction types, including the Pectra `SetCode` transaction (EIP‑7702). However for a legacy (non EIP‑1559) type
transaction, you must specify a gas price at or above Sei's governance-set minimum gas price (currently `50 gwei` on mainnet). Query the live value with `eth_gasPrice` rather than hard-coding it. In addition to this, excess
Expand All @@ -131,7 +129,7 @@
value: '"0.007500000000000000"'
```

## Non-EVM Transactions

Check warning on line 132 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L132

Use sentence case for headings: 'Non-EVM Transactions'.

On Sei there exists non-EVM transactions which may update states accessible by
EVM transactions. The simplest example would be bank balances, which may be
Expand All @@ -145,7 +143,7 @@
committed (~400 ms) — meaning that commitment levels of "safe", "latest",
"justified", and "finalized" on Ethereum are all the same thing on Sei.

## Pending State

Check warning on line 146 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L146

Use sentence case for headings: 'Pending State'.

On Ethereum the block proposer would execute its proposed block first (and
update its local state) before broadcasting the proposal to others (the updated
Expand All @@ -156,7 +154,7 @@
the same time), so Sei does not have a window when "pending state"
exists.

## Gas Model & Fees

Check warning on line 157 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L157

Use sentence case for headings: 'Gas Model & Fees'.

Sei does not implement base‑fee burning. There is no base‑fee burn; all transaction fees accrue to validators. Fees are calculated as:

Expand All @@ -178,7 +176,7 @@

</Info>

## SSTORE Gas Cost

Check warning on line 179 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L179

Use sentence case for headings: 'SSTORE Gas Cost'.

On Sei, the `SSTORE` opcode gas cost is configurable as an on-chain parameter, meaning it can be adjusted via governance proposal without requiring a chain upgrade. This provides flexibility to tune storage costs based on EVM state size and network conditions.

Expand All @@ -192,7 +190,7 @@

<Info>Since `SSTORE` is a governance-controlled parameter, this value may change in the future through a governance proposal.</Info>

## ERC Token Standards Compatibility

Check warning on line 193 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L193

Use sentence case for headings: 'ERC Token Standards Compatibility'.

Sei’s EVM fully supports the common token standards:

Expand All @@ -202,7 +200,7 @@

Existing OpenZeppelin contracts and tools work unchanged.

## Testing & Migration Checklist

Check warning on line 203 in evm/differences-with-ethereum.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/differences-with-ethereum.mdx#L203

Use sentence case for headings: 'Testing & Migration Checklist'.

- ✅ Re‑deploy your Solidity code to Sei testnet; most contracts need no changes.
- ✅ If you used SELFDESTRUCT, refactor to a soft‑close pattern.
Expand Down
1 change: 0 additions & 1 deletion evm/evm-parity/evm-compatibility.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
description: 'EVM feature support on Sei — what works, what differs from Ethereum, and what is not available'
---

# EVM Compatibility

Check warning on line 7 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L7

Use sentence case for headings: 'EVM Compatibility'.

This page documents Sei's EVM feature support. Each row shows whether a capability works as on standard Ethereum, behaves differently in a documented way, or is not available on Sei.

Standard EVM tooling — viem, wagmi, ethers, Foundry, Hardhat — works on Sei for all rows marked **Supported**. Where Sei differs from Ethereum, the difference is noted so you can account for it in your application.

## Status Legend

Check warning on line 13 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L13

Use sentence case for headings: 'Status Legend'.

| Status | Meaning |
| --- | --- |
Expand All @@ -29,7 +29,7 @@
| EIP-4844 blob transactions (type 3) | Not supported | Sei runs Pectra without blob transactions. [See Transaction Types.](/evm/evm-parity/transaction-types) |
| EIP-7702 set-code transactions (type 4) | Supported | |

## Account and State

Check warning on line 32 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L32

Use sentence case for headings: 'Account and State'.

| Feature | Sei status | Notes |
| --- | --- | --- |
Expand All @@ -39,7 +39,7 @@
| `eth_getStorageAt` | Supported — differences | SSTORE cost is governance-adjustable; do not hard-code gas assumptions. [See Gas and Fees.](/evm/evm-parity/gas-and-fees) |
| `eth_getProof` | Supported — differences | Returns IAVL proof data rather than Ethereum Merkle Patricia Trie proofs. Proof verification logic must account for this. [See State Proofs.](/evm/evm-parity/state-proofs) |

## Blocks and Finality

Check warning on line 42 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L42

Use sentence case for headings: 'Blocks and Finality'.

| Feature | Sei status | Notes |
| --- | --- | --- |
Expand All @@ -48,7 +48,7 @@
| Finality tags (`latest`, `safe`, `finalized`) | Supported — differences | Sei has instant finality. All three tags refer to the same commitment level. [See Finality.](/evm/evm-parity/finality) |
| Pending block state | Supported — differences | Ethereum-style pending state visibility is not guaranteed. Do not rely on pending transaction ordering. [See Finality.](/evm/evm-parity/finality) |

## Logs, Filters, and Subscriptions

Check warning on line 51 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L51

Use sentence case for headings: 'Logs, Filters, and Subscriptions'.

| Feature | Sei status | Notes |
| --- | --- | --- |
Expand All @@ -56,7 +56,7 @@
| Filter lifecycle (`eth_newFilter`, `eth_getFilterChanges`, `eth_getFilterLogs`, `eth_uninstallFilter`) | Supported | |
| WebSocket subscriptions (`eth_subscribe`) | Supported | [See WebSocket Connections.](/evm/evm-parity/websocket) |

## Execution and Simulation

Check warning on line 59 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L59

Use sentence case for headings: 'Execution and Simulation'.

| Feature | Sei status | Notes |
| --- | --- | --- |
Expand All @@ -74,7 +74,7 @@
| EIP-712 typed data signing (`eth_signTypedData_v4`) | Supported | Depends on the connected wallet exposing the method. [See Signing.](/evm/evm-parity/signing) |
| EIP-1271 contract signature validation | Supported | [See Signing.](/evm/evm-parity/signing) |

## Token Standards

Check warning on line 77 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L77

Use sentence case for headings: 'Token Standards'.

| Feature | Sei status | Notes |
| --- | --- | --- |
Expand All @@ -82,19 +82,19 @@
| ERC-721 | Supported | |
| ERC-1155 | Supported | |

## Account Abstraction

Check warning on line 85 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L85

Use sentence case for headings: 'Account Abstraction'.

| Feature | Sei status | Notes |
| --- | --- | --- |
| ERC-4337 | Supported | Requires a compatible bundler. Sei EVM is ERC-4337 compatible. |

## Name Services

Check warning on line 91 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L91

Use sentence case for headings: 'Name Services'.

| Feature | Sei status | Notes |
| --- | --- | --- |
| ENS | Not supported | Sei does not run Ethereum mainnet ENS. Application-level name services can be deployed as contracts. |

## Sei Extensions

Check warning on line 97 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L97

Use sentence case for headings: 'Sei Extensions'.

These capabilities are Sei-specific and have no standard Ethereum equivalent. They are exposed through `@sei-js` packages layered on top of standard EVM tooling.

Expand All @@ -103,9 +103,8 @@
| Sei precompiles (staking, governance, distribution, oracle, P256, JSON, CosmWasm bridge) | EVM contracts at deterministic addresses. ABIs and contract addresses are exported from `@sei-js/precompiles` for use with any standard EVM library. |
| Pointer contracts (CW20 ↔ ERC-20, CW721 ↔ ERC-721) | Bridge between CosmWasm and EVM token standards. Standard ERC interfaces work against pointer contracts. |
| Native address association (EVM ↔ Cosmos address) | Links an EVM address and a Cosmos address for the same account. Required before some Sei-native flows. |
| TokenFactory native token creation | Create native Sei tokens that are usable across EVM and CosmWasm without a wrapper contract. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[blocker] Unrelated deletion — nothing in the PR title or description covers removing TokenFactory from the Sei Extensions table, and it has no connection to IBC banners or the Developer Hub link.

After this change, TokenFactory is not documented anywhere in the MDX tree: grep -rni 'tokenfactory' --include='*.mdx' . returns only redirect entries in docs.json (/dev-tutorials/tokenfactory-tutorial/cosmos-sdk, /cosmos-sdk/tokenfactory-allowlist/learn/dev-token-standards), pointing at pages that no longer describe it. The tokenfactory module isn't disabled by Prop 115/116/120/121 as far as the docs record, so this reads as accidental rather than intentional.

Either restore the row, or — if TokenFactory is genuinely being deprecated — do that in a dedicated PR with a replacement note on /learn/dev-token-standards so the redirect target still answers the question.


## Unsupported RPC Methods

Check warning on line 107 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L107

Use sentence case for headings: 'Unsupported RPC Methods'.

The following JSON-RPC methods are either not available on Sei or will return errors:

Expand All @@ -116,7 +115,7 @@
| `eth_blobBaseFee` | Sei runs Pectra without blob transaction support. This method does not exist on Sei. |
| `engine_getBlobsV1` | Blob data availability endpoints are not supported. |

### Pending State

Check warning on line 118 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L118

Use sentence case for headings: 'Pending State'.

| Method | Behavior on Sei |
| --- | --- |
Expand All @@ -125,13 +124,13 @@
| `eth_newPendingTransactionFilter` | The filter can be created but will not reliably emit pending transactions. Use `eth_newBlockFilter` or WebSocket block subscriptions instead. |
| `eth_subscribe("newPendingTransactions")` | Supported at the RPC level but Sei does not guarantee Ethereum-style pending transaction visibility. Treat results as best-effort. |

### Proof Verification

Check warning on line 127 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L127

Use sentence case for headings: 'Proof Verification'.

| Method | Behavior on Sei |
| --- | --- |
| `eth_getProof` | Returns IAVL tree proofs, not Ethereum Merkle Patricia Trie proofs. The method itself works, but the proof format is incompatible with standard Ethereum MPT verifiers. [See State Proofs.](/evm/evm-parity/state-proofs) |

### Deprecated / Removed Opcodes

Check warning on line 133 in evm/evm-parity/evm-compatibility.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/evm-compatibility.mdx#L133

Use sentence case for headings: 'Deprecated / Removed Opcodes'.

| Method | Reason |
| --- | --- |
Expand Down
4 changes: 2 additions & 2 deletions evm/precompiles/cosmwasm-precompiles/bank.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,23 +10,23 @@

<Info> **What is a precompile?** A precompile is a special smart contract deployed at a fixed address by the Sei protocol itself, that exposes custom native chain logic to EVM-based applications. It acts like a regular contract from the EVM's perspective, but executes privileged, low-level logic efficiently. </Info>

## How Does the Bank Precompile Work?

Check warning on line 13 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L13

Use sentence case for headings: 'How Does the Bank Precompile Work?'.

The bank precompile at address `0x0000000000000000000000000000000000001001` exposes functions like `send()`, `sendNative()`, `balance()`, `all_balances()`, and token metadata queries.

- **Direct Integration:** EVM contracts and dApps can call banking functions like any other smart contract method.
- **Native Execution:** Operations are executed at the Cosmos SDK level for maximum efficiency and security.
- **Any native denom:** Manage native SEI, factory tokens, and existing IBC denoms from EVM contracts. IBC is disabled on Sei (see [SIP-03](/learn/sip-03-migration#ibc-is-disabled)), so no new IBC denoms can arrive, but balances already held remain readable and transferable.
- **Any native denom:** Manage native SEI and other bank module denominations from EVM contracts.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[suggestion] This rewrite drops more than the IBC caveat — the previous line named "factory tokens" as a supported denom class, and the send vs sendNative paragraph below lost "(any IBC or factory token)" in the same edit. "other bank module denominations" is vague enough that a reader can't tell what send's denom argument actually accepts.

Suggest keeping the concrete list and only dropping the IBC-status sentence if that's the goal:

- **Any native denom:** Manage native SEI, factory tokens, and existing IBC denoms from EVM contracts.


**When to use `send` vs `sendNative`:** `send` moves an arbitrary `denom` (any IBC or factory token) between two EVM addresses (`0x...`) by reading the balance directly from the bank module — no `msg.value` is attached. It is gated to the registered ERC20 native pointer for that denom, so it is typically invoked from the auto-deployed pointer contract rather than from arbitrary user code. `sendNative` is for sending native SEI (the attached `msg.value`) from the EVM caller to a Cosmos bech32 (`sei1...`) destination, which is useful for crossing the EVM→Cosmos boundary when the recipient has no associated EVM address (for example, paying a Cosmos-only contract or account).
**When to use `send` vs `sendNative`:** `send` moves an arbitrary `denom` between two EVM addresses (`0x...`) by reading the balance directly from the bank module — no `msg.value` is attached. It is gated to the registered ERC20 native pointer for that denom, so it is typically invoked from the auto-deployed pointer contract rather than from arbitrary user code. `sendNative` is for sending native SEI (the attached `msg.value`) from the EVM caller to a Cosmos bech32 (`sei1...`) destination, which is useful for crossing the EVM→Cosmos boundary when the recipient has no associated EVM address (for example, paying a Cosmos-only contract or account).

## Use Cases

Check warning on line 23 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L23

Use sentence case for headings: 'Use Cases'.

- **DeFi Applications:** Build decentralized finance protocols that can handle native SEI and Cosmos assets.
- **Portfolio Management:** Build tools to track and manage multi-asset portfolios across Cosmos and EVM.
- **Token Information Services:** Query comprehensive token metadata for UI display and analytics.

## What You'll Learn in This Guide

Check warning on line 29 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L29

Use sentence case for headings: 'What You'll Learn in This Guide'.

By the end of this guide, you'll be able to:

Expand All @@ -38,7 +38,7 @@

The bank precompile exposes the following functions:

### Transaction Functions

Check warning on line 41 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L41

Use sentence case for headings: 'Transaction Functions'.

```solidity
/// Sends non-native tokens from one address to another. Callable only by the
Expand All @@ -64,7 +64,7 @@
) payable external returns (bool success);
```

### Query Functions

Check warning on line 67 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L67

Use sentence case for headings: 'Query Functions'.

```solidity
/// Queries the balance of the given account for the specified denom.
Expand Down Expand Up @@ -112,7 +112,7 @@
) external view returns (uint256 response);
```

## Using the Precompile

Check warning on line 115 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L115

Use sentence case for headings: 'Using the Precompile'.

### Setup

Expand All @@ -126,7 +126,7 @@
- **SEI tokens** for gas and testing transfers
- **Hardhat** for development and testing

#### Install Dependencies

Check warning on line 129 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L129

Use sentence case for headings: 'Install Dependencies'.

Install the required packages for interacting with Sei precompiles:

Expand All @@ -141,7 +141,7 @@
npm install @sei-js/precompiles@2.1.2
```

#### Setup Hardhat Environment

Check warning on line 144 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L144

Use sentence case for headings: 'Setup Hardhat Environment'.

Create a `hardhat.config.ts` file with the following content:

Expand Down Expand Up @@ -169,7 +169,7 @@
npx hardhat keystore set PRIVATE_KEY
```

#### Import Precompile Components

Check warning on line 172 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L172

Use sentence case for headings: 'Import Precompile Components'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -263,7 +263,7 @@
</Tab>
</Tabs>

### Native SEI vs Custom Tokens

Check warning on line 266 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L266

Use sentence case for headings: 'Native SEI vs Custom Tokens'.

**Native SEI Transfers:**

Expand All @@ -277,9 +277,9 @@
- Requires prior token approval or ownership
- Support various decimal configurations

## Step-by-Step Guide: Using the Bank Precompile

Check warning on line 280 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L280

Use sentence case for headings: 'Step-by-Step Guide: Using the Bank Precompile'.

### Send Native SEI Tokens

Check warning on line 282 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L282

Use sentence case for headings: 'Send Native SEI Tokens'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -330,7 +330,7 @@
</Tab>
</Tabs>

### Send Custom Tokens

Check warning on line 333 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L333

Use sentence case for headings: 'Send Custom Tokens'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -407,7 +407,7 @@
</Tab>
</Tabs>

### Query Account Balance

Check warning on line 410 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L410

Use sentence case for headings: 'Query Account Balance'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -464,7 +464,7 @@
</Tab>
</Tabs>

### Query All Balances

Check warning on line 467 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L467

Use sentence case for headings: 'Query All Balances'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -539,7 +539,7 @@
</Tab>
</Tabs>

### Query Token Metadata

Check warning on line 542 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L542

Use sentence case for headings: 'Query Token Metadata'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -622,7 +622,7 @@
</Tab>
</Tabs>

### Complete Integration Example

Check warning on line 625 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L625

Use sentence case for headings: 'Complete Integration Example'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -1103,15 +1103,15 @@
</Tab>
</Tabs>

## Security Considerations & Risks

Check warning on line 1106 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1106

Use sentence case for headings: 'Security Considerations & Risks'.

### Transaction Security

Check warning on line 1108 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1108

Use sentence case for headings: 'Transaction Security'.

- **Amount Validation:** Always validate transfer amounts and ensure sufficient balances
- **Address Verification:** Verify recipient addresses are valid before sending tokens
- **Reentrancy Protection:** Be aware of potential reentrancy when combining with other contracts

### Permission Management

Check warning on line 1114 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1114

Use sentence case for headings: 'Permission Management'.

```solidity
// Example of secure permission patterns
Expand All @@ -1129,9 +1129,9 @@

## Troubleshooting

### Common Issues and Solutions

Check warning on line 1132 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1132

Use sentence case for headings: 'Common Issues and Solutions'.

#### Transaction Failures

Check warning on line 1134 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1134

Use sentence case for headings: 'Transaction Failures'.

```typescript
// Handle common transfer errors
Expand All @@ -1149,7 +1149,7 @@
}
```

#### Balance Query Issues

Check warning on line 1152 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1152

Use sentence case for headings: 'Balance Query Issues'.

```typescript
// Safe balance checking with error handling
Expand All @@ -1166,7 +1166,7 @@
}
```

### Error Code Reference

Check warning on line 1169 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1169

Use sentence case for headings: 'Error Code Reference'.

| Error | Cause | Solution |
| --- | --- | --- |
Expand All @@ -1177,7 +1177,7 @@
| `metadata not found` | Token metadata not available | Handle missing metadata gracefully |


## Important Notes

Check warning on line 1180 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1180

Use sentence case for headings: 'Important Notes'.

<Info>

Expand All @@ -1189,13 +1189,13 @@

</Info>

### Gas Optimization

Check warning on line 1192 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1192

Use sentence case for headings: 'Gas Optimization'.

- **Batch Operations:** Use batch functions for multiple operations to save gas
- **Query Efficiency:** Cache frequently accessed token metadata
- **Error Handling:** Implement proper error handling to avoid failed transaction costs

### Integration Best Practices

Check warning on line 1198 in evm/precompiles/cosmwasm-precompiles/bank.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/bank.mdx#L1198

Use sentence case for headings: 'Integration Best Practices'.

- **Balance Checks:** Always verify sufficient balance before transfers
- **Error Recovery:** Implement retry logic for failed transactions
Expand Down
4 changes: 1 addition & 3 deletions evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,10 @@
**Address:** `0x0000000000000000000000000000000000001002`

<Danger>
**Deprecation Notice — Prop 115 & Prop 116**
**Deprecation Notice — Prop 115**

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[suggestion] The heading change to "Prop 115" is internally consistent now that the Prop 116 sentence is gone, so no issue there. The concern is the deletion itself: this page's own frontmatter keywords are cross-chain contracts and blockchain interoperability, which is exactly the audience that needs to know IBC is off. Same request as on differences-with-ethereum.mdx — keep a one-line pointer to /learn/sip-03-migration inside the existing <Danger> rather than removing the caveat entirely.


Per [governance Proposal 115](https://seistream.app/proposals/115), CosmWasm code uploads (`MsgStoreCode`) and contract instantiations (`MsgInstantiateContract`) are disabled chain-wide. The `instantiate()` function on this precompile **will revert** for all callers. Only `execute()`, `execute_batch()`, and `query()` against pre-existing CosmWasm contracts remain functional, and all CosmWasm functionality is deprecated in favor of EVM-only per [SIP-3](https://github.com/sei-protocol/sips/blob/main/sips/sip-3.md).

In addition, IBC is disabled in both directions: Proposals [116](https://seistream.app/proposals/116) and [120](https://seistream.app/proposals/120) disabled inbound IBC, and [Proposal 121](https://seistream.app/proposals/121) disabled outbound IBC on July 31, 2026. No asset can be bridged into or out of Sei over IBC. See the [SIP-03 Migration Guide](/learn/sip-03-migration) for the full explanation and the list of affected assets.

For new smart contract development, use the EVM directly. See [Deploy a Smart Contract](/evm/evm-general).
</Danger>

Expand All @@ -20,7 +18,7 @@

<Info> **What is a precompile?** A precompile is a special smart contract deployed at a fixed address by the Sei protocol itself, that exposes custom native chain logic to EVM-based applications. It acts like a regular contract from the EVM's perspective, but executes privileged, low-level logic efficiently. </Info>

## How Does the CosmWasm Precompile Work?

Check warning on line 21 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L21

Use sentence case for headings: 'How Does the CosmWasm Precompile Work?'.

The CosmWasm precompile at address `0x0000000000000000000000000000000000001002` exposes functions like `execute()`, `execute_batch()`, and `query()`.

Expand All @@ -28,7 +26,7 @@
- **Native Execution:** Operations are executed at the Cosmos SDK level for maximum efficiency and security.
- **Seamless Bridge:** No need for separate wallet integrations or complex cross-chain interactions.

## What You'll Learn in This Guide

Check warning on line 29 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L29

Use sentence case for headings: 'What You'll Learn in This Guide'.

By the end of this guide, you'll be able to:

Expand All @@ -41,7 +39,7 @@

The CosmWasm precompile exposes the following functions:

### Transaction Functions

Check warning on line 42 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L42

Use sentence case for headings: 'Transaction Functions'.

<Warning>The `instantiate()` function has been disabled by [Prop 115](https://seistream.app/proposals/115) and will revert. It is omitted from this reference. The ABI in `@sei-js/precompiles` may still expose it for backwards compatibility, but calling it on-chain will fail.</Warning>

Expand Down Expand Up @@ -71,7 +69,7 @@
) payable external returns (bytes[] memory responses);
```

### Query Functions

Check warning on line 72 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L72

Use sentence case for headings: 'Query Functions'.

```solidity
/// Queries a CosmWasm contract.
Expand All @@ -84,7 +82,7 @@
) external view returns (bytes memory response);
```

## Using the Precompile

Check warning on line 85 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L85

Use sentence case for headings: 'Using the Precompile'.

### Setup

Expand All @@ -97,7 +95,7 @@
- **EVM-compatible wallet**
- **SEI tokens** for gas and contract operations

#### Install Dependencies

Check warning on line 98 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L98

Use sentence case for headings: 'Install Dependencies'.

Install the required packages for interacting with Sei precompiles:

Expand All @@ -109,7 +107,7 @@
npm install @sei-js/precompiles@2.1.2
```

#### Import Precompile Components

Check warning on line 110 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L110

Use sentence case for headings: 'Import Precompile Components'.

```typescript
// Import CosmWasm precompile address and ABI
Expand All @@ -134,11 +132,11 @@
const cosmwasm = new ethers.Contract(WASM_PRECOMPILE_ADDRESS, WASM_PRECOMPILE_ABI, signer);
```

## Critical: Understanding Message Formats

Check warning on line 135 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L135

Use sentence case for headings: 'Critical: Understanding Message Formats'.

One of the most important concepts to understand when working with the Sei CosmWasm precompile:

### CosmWasm Message Structure

Check warning on line 139 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L139

Use sentence case for headings: 'CosmWasm Message Structure'.

The CosmWasm precompile requires **JSON-encoded messages** that conform to each contract's specific schema:

Expand All @@ -148,7 +146,7 @@
| `query()` | req parameter (input) | JSON bytes | `ethers.toUtf8Bytes(jsonString)` |
| **All functions** | response (output) | JSON bytes | `JSON.parse(ethers.toUtf8String(response))` |

### How Message Encoding Works

Check warning on line 149 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L149

Use sentence case for headings: 'How Message Encoding Works'.

**All CosmWasm functions require JSON-encoded byte arrays:**

Expand All @@ -160,7 +158,7 @@
- Use `msg.value` for SEI amounts
- Use `coins` parameter for other denominations (encoded as JSON bytes)

### Best Practice: Message Encoding Helpers

Check warning on line 161 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L161

Use sentence case for headings: 'Best Practice: Message Encoding Helpers'.

When working with CosmWasm messages, use proper JSON encoding:

Expand Down Expand Up @@ -203,7 +201,7 @@
});
```

## Message Format Helpers

Check warning on line 204 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L204

Use sentence case for headings: 'Message Format Helpers'.

Use these helper functions to handle CosmWasm message formatting:

Expand Down Expand Up @@ -251,9 +249,9 @@
const coins = CosmWasmHelper.createCoins([{ denom: 'uusdc', amount: '1000000' }]);
```

## Step-by-Step Guide: Using the CosmWasm Precompile

Check warning on line 252 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L252

Use sentence case for headings: 'Step-by-Step Guide: Using the CosmWasm Precompile'.

### Execute a CosmWasm Contract

Check warning on line 254 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L254

Use sentence case for headings: 'Execute a CosmWasm Contract'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -311,7 +309,7 @@
</Tab>
</Tabs>

### Execute Batch Operations

Check warning on line 312 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L312

Use sentence case for headings: 'Execute Batch Operations'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -382,7 +380,7 @@
</Tab>
</Tabs>

### Query a CosmWasm Contract

Check warning on line 383 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L383

Use sentence case for headings: 'Query a CosmWasm Contract'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -451,9 +449,9 @@

<Warning> **Query Limitations:** CosmWasm queries are read-only operations and don't consume gas, but parsing JSON responses in Solidity is complex. Consider handling response parsing off-chain. </Warning>

## Advanced Usage Examples

Check warning on line 452 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L452

Use sentence case for headings: 'Advanced Usage Examples'.

### Cross-Runtime DeFi Integration

Check warning on line 454 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L454

Use sentence case for headings: 'Cross-Runtime DeFi Integration'.

```typescript
async function crossRuntimeDeFiOperation(cosmwasmDexContract: string, evmTokenContract: string, amount: string) {
Expand Down Expand Up @@ -492,7 +490,7 @@
}
```

### Complete Integration Example

Check warning on line 493 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L493

Use sentence case for headings: 'Complete Integration Example'.

<Tabs>
<Tab title="JavaScript">
Expand Down Expand Up @@ -730,9 +728,9 @@

## Troubleshooting

### Common Issues and Solutions

Check warning on line 731 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L731

Use sentence case for headings: 'Common Issues and Solutions'.

#### Message Encoding Issues

Check warning on line 733 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L733

Use sentence case for headings: 'Message Encoding Issues'.

```typescript
// Ensure proper JSON encoding for messages
Expand All @@ -750,7 +748,7 @@
const incorrectMsg = ethers.toUtf8Bytes('invalid json');
```

### Error Code Reference

Check warning on line 751 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L751

Use sentence case for headings: 'Error Code Reference'.

| Error | Cause | Solution |
| --- | --- | --- |
Expand All @@ -761,23 +759,23 @@
| `unauthorized` | Insufficient permissions | Check admin/owner permissions |
| `query parsing failed` | Invalid query message format | Match contract's query schema |

## Important Notes

Check warning on line 762 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L762

Use sentence case for headings: 'Important Notes'.

<Info> Remember the key rule: All CosmWasm messages must be properly JSON-encoded as bytes, and contract schemas vary by implementation! </Info>

### Message Format Requirements

Check warning on line 766 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L766

Use sentence case for headings: 'Message Format Requirements'.

- **JSON Encoding:** All messages must be valid JSON encoded as UTF-8 bytes, invalid JSON will cause transaction failures
- **Schema Compliance:** Messages must match the contract's expected format
- **Type Safety:** Use proper data types as expected by the contract

### Contract Address Format

Check warning on line 772 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L772

Use sentence case for headings: 'Contract Address Format'.

- Use valid Sei contract addresses with `sei1...` prefix
- These are Cosmos-format addresses, not EVM addresses
- **Contract Existence:** Verify contracts exist before calling

### Cross-Runtime Considerations

Check warning on line 778 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L778

Use sentence case for headings: 'Cross-Runtime Considerations'.

- **State Isolation:** CosmWasm and EVM contracts have separate state
- **Gas Estimation:** CosmWasm operations may require different gas calculations
Expand All @@ -785,7 +783,7 @@
- **Native Token Handling:** Use `msg.value` for SEI, `coins` for other denominations
- **Batch Limitations:** Large batches may hit gas limits

### Best Practices

Check warning on line 786 in evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/cosmwasm.mdx#L786

Use sentence case for headings: 'Best Practices'.

- Always validate JSON messages before sending
- Handle response parsing carefully, especially for complex data structures
Expand Down
2 changes: 1 addition & 1 deletion evm/precompiles/cosmwasm-precompiles/example-usage.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@


<Info>
Per [Proposal 115](https://seistream.app/proposals/115), no new CosmWasm contracts can be deployed on Sei. The examples below apply to **pre-existing CosmWasm contracts** only — `instantiate()` will revert. Separately, IBC is disabled in both directions as part of the [SIP-03](/learn/sip-03-migration) migration — Proposals [116](https://seistream.app/proposals/116) and [120](https://seistream.app/proposals/120) disabled inbound IBC, and [Proposal 121](https://seistream.app/proposals/121) disabled outbound IBC.
Per [Proposal 115](https://seistream.app/proposals/115), no new CosmWasm contracts can be deployed on Sei. The examples below apply to **pre-existing CosmWasm contracts** only — `instantiate()` will revert.
</Info>

The Sei precompiles can be used like any standard smart contract on the EVM. For
Expand Down Expand Up @@ -47,7 +47,7 @@
const contract = new ethers.Contract(WASM_PRECOMPILE_ADDRESS, WASM_PRECOMPILE_ABI, signer);
```

#### Querying & Executing a CosmWasm Contract

Check warning on line 50 in evm/precompiles/cosmwasm-precompiles/example-usage.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/precompiles/cosmwasm-precompiles/example-usage.mdx#L50

Use sentence case for headings: 'Querying & Executing a CosmWasm Contract'.

Once you have the contract, you can query and execute messages to any CosmWasm
smart contract. In the below example we assume there is a counter contract with a `get_count` function
Expand Down
10 changes: 0 additions & 10 deletions index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,7 @@

The first parallelized EVM blockchain delivering unmatched scalability and speed.

<Danger>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[blocker] Removing this callout and the docs.json banner in the same PR leaves zero notice at the site's top level. The stated rationale is that both carried the same SIP-03 text and rendered twice on / — that's a real problem, but the fix for a duplicate is to delete one copy, not both.

Given the content (users holding USDC.n / USDT.kava / ATOM / WBTC can no longer redeem on the origin chain, and Prop 121 passed only a week ago on July 31, 2026), I'd keep this homepage <Danger> and drop just the docs.json banner. That fixes the double-render, keeps / informative, and stops the banner bar from following readers onto every unrelated page.

**IBC is disabled on Sei in both directions**

[Proposal #121](https://seistream.app/proposals/121) passed on July 31, 2026 and disabled outbound IBC transfers. Inbound IBC was already disabled by [Proposal #116](https://seistream.app/proposals/116) and [Proposal #120](https://seistream.app/proposals/120). No asset can be bridged into or out of Sei over IBC.

If you hold [USDC.n](https://seiscan.io/address/0x3894085Ef7Ff0f0aeDf52E2A2704928d1Ec074F1) (USDC via Noble), [USDT.kava](https://seiscan.io/address/0xb75d0b03c06a926e488e2659df1a861f860bd3d1) (Kava USDT), ATOM, WBTC, or any other IBC asset on Sei, it can no longer be redeemed on its origin chain. The balance still exists on Sei and can still be transferred within Sei.

See the [SIP-03 Migration Guide](/learn/sip-03-migration) for what changed, the full list of affected assets, and what remains possible.
</Danger>

## Quick Start

Check warning on line 11 in index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

index.mdx#L11

Use sentence case for headings: 'Quick Start'.

<CardGroup cols={3}>
<Card title="Deploy a Smart Contract" icon="code" horizontal href="/evm/evm-general">
Expand All @@ -38,7 +28,7 @@
</Card>
</CardGroup>

## Essential Resources

Check warning on line 31 in index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

index.mdx#L31

Use sentence case for headings: 'Essential Resources'.

<CardGroup cols={3}>
<Card title="Chain Info" icon="globe" horizontal href="/learn/dev-chains">
Expand Down Expand Up @@ -127,7 +117,7 @@
</Card>
</CardGroup>

## Smart Contracts

Check warning on line 120 in index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

index.mdx#L120

Use sentence case for headings: 'Smart Contracts'.

<Card title="Deploy & Debug on Sei" icon="code" horizontal href="/evm/evm-general">
Write, deploy, and debug Solidity smart contracts with your favorite toolchain. Sei is fully EVM-compatible with 400 ms blocks and parallelized execution.
Expand All @@ -140,7 +130,7 @@
<Card title="Best Practices" icon="gauge-high" horizontal href="/evm/best-practices/optimizing-for-parallelization" />
</CardGroup>

## Infrastructure & Tools

Check warning on line 133 in index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

index.mdx#L133

Use sentence case for headings: 'Infrastructure & Tools'.

<CardGroup cols={2}>
<Card title="Run a Node" icon="lock" horizontal href="/node">
Expand Down
2 changes: 1 addition & 1 deletion learn/sips.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ SIP-3 and SIP-4 both affect how you use and build on Sei. These pages cover what

<CardGroup cols={2}>
<Card title="SIP-3 migration guide" icon="arrow-right-arrow-left" href="/learn/sip-03-migration">
Move assets off Cosmos-native addresses and IBC tokens before Sei becomes EVM-only.
What SIP-3 changes for asset holders, and how to move off Cosmos-native addresses.
Comment thread
alexander-sei marked this conversation as resolved.
</Card>
<Card title="SIP-3 for exchanges" icon="building-columns" href="/learn/sip-03-exchange-migration">
Integration changes for exchanges and custodians supporting Sei deposits and withdrawals.
Expand Down
5 changes: 0 additions & 5 deletions scripts/generate-llms.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -102,11 +102,6 @@ const SEI_LLMS_CONFIG = {
url: 'https://github.com/sei-protocol',
description: 'Open source repositories including sei-chain, sei-js, and MCP server'
},
{
title: 'Developer Hub',
url: 'https://www.sei.io/developers',
description: 'Curated entry points, ecosystem programs, and grant info'
},
{
title: 'Ecosystem',
url: 'https://www.sei.io/ecosystem',
Expand Down
Loading