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
1 change: 0 additions & 1 deletion .github/styles/Sei/Headings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ exceptions:
- CLI
- SDK
- NFT
- IBC

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.

[suggestion] Consider keeping this exception. IBC is still a proper acronym in prose this PR deliberately retains, and removing it makes the sentence-case rule flag three headings that survive the change — learn/sip-03-migration.mdx:84 (## Affected IBC assets), :256, and :260. ## IBC is disabled escapes because $sentence allows a capitalized first word, but the mid-heading uses won't.

CI won't break (prose-style.yml uses fail_on_error: false and filter_mode: added), so this is advisory — but the exception list exists for exactly this case, and IBC hasn't stopped being an acronym just because the feature is disabled.

- VRF
- JSON
- RocksDB
Expand Down
2 changes: 1 addition & 1 deletion ai/sei-skill/prompts.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ How do I call the Staking precompile from Solidity to delegate SEI?
Why does SSTORE cost more on Sei than on Ethereum, and how should I budget gas for storage writes?
```
```
How do I use the Bank precompile to query a native denom balance?
How do I use the Bank precompile to query the native SEI (`usei`) balance?
```
```
Load test my contract against the OCC parallel execution scheduler
Expand Down
8 changes: 8 additions & 0 deletions cosmos-sdk/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,11 @@ In addition, [Proposal 115](https://seistream.app/proposals/115) disables CosmWa
**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.

</Danger>

## Tokenfactory is not supported

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.

[suggestion] Worth reconsidering where this canonical notice lives. Six pages plus scripts/generate-llms.mjs, skill.md, and three docs.json redirects now all point at /cosmos-sdk#tokenfactory-is-not-supported, while the parallel IBC notice they cite in the same breath lives at /learn/sip-03-migration#ibc-is-disabled. Splitting the two deprecation policies across two pages hurts discoverability.

There's also a practical wrinkle: cosmos-sdk/** is excluded from prose linting (.vale.ini) and from spell-checking (_typos.toml), so this heavily-referenced policy text gets no CI coverage. Putting it in learn/sip-03-migration alongside ## IBC is disabled would fix both. The anchor itself resolves correctly, so this is a placement suggestion, not a defect.


<Warning>

Tokenfactory tutorials and development support have been retired as part of Sei's move to EVM-only under SIP-3. Do not create, mint, burn, administer, or build integrations around tokenfactory denoms. Legacy module and RPC surfaces may still exist for compatibility, but tokenfactory is not a supported path for new development. Deploy an ERC-20 contract instead.

</Warning>
19 changes: 12 additions & 7 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -658,6 +658,11 @@
"destination": "/learn/sip-03-migration#ibc-is-disabled",
"permanent": true
},
{
"source": "/evm/precompiles/ibc",
"destination": "/learn/sip-03-migration#ibc-is-disabled",
"permanent": true
},
{
"source": "/evm/precompiles/artifacts/:path*",
"destination": "/evm/debugging-contracts",
Expand Down Expand Up @@ -755,7 +760,7 @@
},
{
"source": "/evm/ibc-protocol",
"destination": "/cosmos-sdk",
"destination": "/learn/sip-03-migration#ibc-is-disabled",
"permanent": true
},
{
Expand Down Expand Up @@ -825,7 +830,7 @@
},
{
"source": "/advanced/ibc-transfers",
"destination": "/cosmos-sdk",
"destination": "/learn/sip-03-migration#ibc-is-disabled",
"permanent": true
},
{
Expand Down Expand Up @@ -1190,7 +1195,7 @@
},
{
"source": "/dev-advanced-concepts/ibc-relayer",
"destination": "/cosmos-sdk",
"destination": "/learn/sip-03-migration#ibc-is-disabled",
"permanent": true
},
{
Expand Down Expand Up @@ -1230,12 +1235,12 @@
},
{
"source": "/dev-tutorials/tokenfactory-tutorial",
"destination": "/cosmos-sdk",
"destination": "/cosmos-sdk#tokenfactory-is-not-supported",
"permanent": true
},
{
"source": "/dev-tutorials/tokenfactory-allowlist",
"destination": "/cosmos-sdk",
"destination": "/cosmos-sdk#tokenfactory-is-not-supported",
"permanent": true
},
{
Expand All @@ -1255,7 +1260,7 @@
},
{
"source": "/dev-tutorials/ibc-protocol",
"destination": "/cosmos-sdk",
"destination": "/learn/sip-03-migration#ibc-is-disabled",
"permanent": true
},
{
Expand Down Expand Up @@ -1525,7 +1530,7 @@
},
{
"source": "/cosmos-sdk/tokenfactory-allowlist",
"destination": "/learn/dev-token-standards",
"destination": "/cosmos-sdk#tokenfactory-is-not-supported",
"permanent": true
},
{
Expand Down
18 changes: 5 additions & 13 deletions evm/evm-parity/examples/pointer-contracts.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,26 @@
description: 'Looking up and interacting with pointer contracts that bridge CosmWasm and EVM tokens on Sei'
---

# Pointer Contracts

Check warning on line 6 in evm/evm-parity/examples/pointer-contracts.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/examples/pointer-contracts.mdx#L6

Use sentence case for headings: 'Pointer Contracts'.

Sei runs two token execution environments side by side — EVM and CosmWasm. Pointer contracts are automatically deployed EVM contracts that proxy a CosmWasm token, and vice versa.

<Warning>
This guide covers pointers for already-deployed CosmWasm contracts only. It does not document native-denom pointer workflows. IBC is disabled in both directions, and tokenfactory is not a supported development path. See [IBC is disabled](/learn/sip-03-migration#ibc-is-disabled) and [Tokenfactory is not supported](/cosmos-sdk#tokenfactory-is-not-supported).

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.

[suggestion] The banner text and the code changes don't quite line up. The warning says "Do not use native-denom pointers to build IBC or tokenfactory integrations" — a scoped prohibition — but the diff removes native-denom pointer lookup entirely, including the usei case, which isn't an IBC or tokenfactory denom.

This also drops the only documented use of getNativePointer in the repo, and it contradicts what learn/pointers.mdx said before this PR ("Native (Bank Module) pointers continue to work normally"). If native pointers for native SEI still function, consider keeping the row and the getNativePointer('usei') example and letting the banner do the narrowing — matching the approach taken on registry.mdx and cosmwasm.mdx.

</Warning>

| Token | Pointer type | EVM interface |
| --- | --- | --- |
| CW20 (CosmWasm fungible token) | ERC-20 pointer | Standard ERC-20 |
| CW721 (CosmWasm NFT) | ERC-721 pointer | Standard ERC-721 |
| Native Sei token (bank module) | ERC-20 pointer | Standard ERC-20 |

Once you have the pointer address, you interact with it using the standard ERC-20 or ERC-721 interface — no Sei-specific code needed.

For background on how pointer contracts work, see the [Pointers overview](/learn/pointers).

## Looking Up a Pointer Address

Check warning on line 23 in evm/evm-parity/examples/pointer-contracts.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/examples/pointer-contracts.mdx#L23

Use sentence case for headings: 'Looking Up a Pointer Address'.

The pointerview precompile resolves pointer addresses by CosmWasm contract address or native denom. Its ABI and address are exported from `@sei-js/precompiles`.
The pointerview precompile resolves pointer addresses for existing CosmWasm contracts. Its ABI and address are exported from `@sei-js/precompiles`.

<CodeGroup>

Expand Down Expand Up @@ -48,14 +51,6 @@
functionName: 'getCW721Pointer',
args: ['sei1...cw721ContractAddress'],
});

// Native denom → ERC-20 pointer
const nativePointer = await client.readContract({
address: POINTERVIEW_PRECOMPILE_ADDRESS,
abi: POINTERVIEW_PRECOMPILE_ABI,
functionName: 'getNativePointer',
args: ['usei'],
});
```

```ts ethers
Expand All @@ -78,16 +73,13 @@

// CW721 → ERC-721 pointer
const erc721Pointer = await pointerview.getCW721Pointer('sei1...cw721ContractAddress');

// Native denom → ERC-20 pointer
const nativePointer = await pointerview.getNativePointer('usei');
```

</CodeGroup>

The return value includes the pointer address and an `exists` boolean. Check `exists` before interacting with the pointer — not all CosmWasm tokens have a deployed pointer.

## Interacting with a CW20 Pointer as ERC-20

Check warning on line 82 in evm/evm-parity/examples/pointer-contracts.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/examples/pointer-contracts.mdx#L82

Use sentence case for headings: 'Interacting with a CW20 Pointer as ERC-20'.

Once you have the pointer address, use it as a standard ERC-20 contract.

Expand Down Expand Up @@ -121,7 +113,7 @@

</CodeGroup>

## Interacting with a CW721 Pointer as ERC-721

Check warning on line 116 in evm/evm-parity/examples/pointer-contracts.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/evm-parity/examples/pointer-contracts.mdx#L116

Use sentence case for headings: 'Interacting with a CW721 Pointer as ERC-721'.

<CodeGroup>

Expand Down
2 changes: 1 addition & 1 deletion evm/evm-parity/examples/sei-precompiles.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Sei exposes native chain functionality through precompiled contracts at determin

Available precompiles include:

- **Bank** — query native denom balances (usei, factory tokens)
- **Bank** — query the native SEI bank balance
- **Staking** — delegate, undelegate, query delegations
- **Distribution** — claim staking rewards
- **Governance** — vote on active proposals
Expand Down
Loading
Loading