Repository navigation
feat(tokens): list ckSOL as a default token - #8141
Open
Dfinity-Bjoern wants to merge 3 commits into
Open
Dfinity-Bjoern wants to merge 3 commits into
Dfinity-Bjoern wants to merge 3 commits into
Conversation
Load the ckSOL ledger and index canisters by default on mainnet, like ckETH, and treat ckSOL as an important ck token that sorts right after ckETH. ckSOL is not deployed on the local and test networks, so it is skipped there. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
✅ No security or compliance issues detected. Reviewed everything up to eaa94ff. Security OverviewDetected Code Changes
|
Contributor
There was a problem hiding this comment.
🟢 Approved
There are no active review issues for the change adding ckSOL as a default mainnet token.
No open issues 🎉
What changed in this PR
Adds ckSOL as a default mainnet token on the Tokens page, so users no longer need to import it manually.
Changes:
- Defines ckSOL’s mainnet ledger and index IDs and registers it by default outside test networks.
- Includes ckSOL in ck-token filtering, reporting, and sorting priorities.
- Updates unit tests and adds a changelog entry.
| File | Description |
|---|---|
| frontend/src/tests/lib/utils/tokens-table.utils.spec.ts | Adds ckSOL sorting and filtering assertions. |
| frontend/src/tests/lib/services/icrc-canisters.services.spec.ts | Updates default-canister expectations to include ckSOL. |
| frontend/src/lib/utils/tokens-table.utils.ts | Adds ckSOL sorting priority after ckETH. |
| frontend/src/lib/services/icrc-canisters.services.ts | Registers ckSOL by default when ck tokens are enabled outside test networks. |
| frontend/src/lib/constants/tokens.constants.ts | Includes ckSOL in important-token and reporting lists. |
| frontend/src/lib/constants/cksol-canister-ids.constants.ts | Defines ckSOL’s mainnet canister IDs. |
| CHANGELOG-Nns-Dapp-unreleased.md | Documents ckSOL’s default-token listing. |
Review effort: Balanced
Contributor
|
Thanks, two things:
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot
AI
dismissed their stale review, a newer Copilot review was requested
November 10, 2026 16:49
Author
I don't understand what you mean. ckSOL is not a ckERC20 token, it's a completely new and independent integration of the Solana blockchain. So all infrastructure was newly deployed over the last few weeks, and I don't think the method above extends easily.
Fixed it! |
Copilot
AI
dismissed their stale review, a newer Copilot review was requested
November 11, 2026 08:58
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
ckSOL is live on mainnet and should be listed by default on the Tokens page, like ckETH, so users don't have to import it.
Changes
cksol-canister-ids.constants.tswith the mainnet ckSOL ledger (ls5lp-lqaaa-aaaar-qb5oa-cai) and index (2ezyf-hqaaa-aaaar-qb6ga-cai) canister IDs, verified on mainnet (symbolckSOL, 9 decimals, fee 500, index points to the ledger).loadIcrcCanistersadds ckSOL to the default ICRC canisters.IMPORTANT_CK_TOKEN_IDS(right after ckETH) andALL_CK_TOKENS_CANISTER_IDS, so it shows under the "ck" filter and is included in reporting.compareTokensCKSOLFirstcomparator, used incompareCkTokensByDefaultandcompareTokensByBalanceafter ckETH.IS_TESTNET(same as ckUSDT, ckOCT, …) and has no environment variable override.icrc1:logometadata, so no fallback asset is needed.Tests
icrc-canisters.services.spec.tsandtokens-table.utils.spec.tsto cover ckSOL.Todos
🤖 Generated with Claude Code