Repository navigation
feat: add Bali 82 and 85 token lists - #162
Conversation
… 828282/858585) The Bali pilot networks' rollup IDs are 82 (PP) and 85 (FEP); their EVM chain IDs are 828282 and 858585 respectively. Verified on-chain via eth_chainId RPC reads (sources: agglayer/issues#39 measurements, gke-shared-dev-configs l2_chain_id, live RPC). Directory names keep the bali-82/bali-85 rollup labels. Refs agglayer/issues#46.
|
Chain-ID fix-up pushed ( |
arnaubennassar
left a comment
There was a problem hiding this comment.
Review summary
Verdict: NEEDS WORK (one small blocking fix, otherwise good to go)
I checked the two new lists against index/katana/erc20.json and index/sepolia/erc20.json. I also re-ran pnpm reindex and prettier --check on a scratch copy of the branch at f78a6c1.
What checks out
- Schema fidelity: The top-level fields, token fields, types and key order match
sepolia/erc20.json:name,chainId,tokenStandard,logoURI,keywords,timestamp,tokens[],version. The token entries use the same field names,decimalsis a number, and the lowercase0xeeee…and0x0000…sentinels match the existing lists. Adding the native sentinels to anerc20.jsonfollows repo convention.sepoliaandkatanado the same. - chainId: Top-level and per-token
chainIdare828282(bali-82) and858585(bali-85) in both files, consistent with the fix-up commitf78a6c1. There are no duplicate chain IDs inindex.json. - index.json:
pnpm reindexon the branch is idempotent (no diff afterwards).- The two new entries are alphabetically placed between
avalanche-testnetandbase. - The
chainIdvalues inindex.jsonmatch the list files. - The SHA-256 hashes (
2d8c51e6…,128a6acf…) matchsha256sumof the committed files. prettier --checkis clean.
- Scope: Native ETH only is intentional. The wrapped/bridged tokens already on-chain (USDC wrapped from Sepolia, JTT, the E2E test tokens) are deliberately not listed yet. They will be appended as follow-up data once confirmed. This is not an omission.
Findings
1. [blocking] logoURI still uses the rollup IDs (82/85) in the asset path
index/bali-82/erc20.jsonlines 15 and 23 point to…/tokens/large/82/0x0000…0000.webp.index/bali-85/erc20.jsonlines 15 and 23 point to…/tokens/large/85/0x0000…0000.webp.- The asset CDN path is keyed by EVM chain ID (
sepoliauses/11155111/,katanauses/747474/).f78a6c1fixed thechainIdfields but missed these four URLs. - I checked the CDN.
/82/…and/85/…return 403. So do/828282/…and/858585/…, because no assets have been uploaded under the new IDs yet. - Options, in order of preference:
- (a) Point to
/828282/…and/858585/…and upload the ETH icon under those paths. - (b) Reuse the existing mainnet ETH asset
…/large/1/0x0000…0000.webp, which returns 200.mainnet,robinhoodandsoneiumalready do this.
- (a) Point to
- Option (b) works today with no upload. Either way, re-run
pnpm reindexafterwards, because the file hashes will change.
2. [nit] PR description is stale after the chain-ID fix
- The body still says "chain 82 (Bali PP)" and "chain 85 (Bali FEP)". It also says "chains 82/85 in
0xsequence/trailschain registry". - The lists now use
828282and858585. 82 and 85 are the rollup/network IDs. Please update the body so the PR record isn't contradictory. The clarification in the later comment is good, but the description is what lands in history.
3. [nit] timestamp is 2026-10-14T22:18:35.000Z and predates the fix-up commit
- This is harmless.
katanaandsepoliaalso carry fixed historical timestamps. Bump it if you want the field to reflect the last edit.
4. [question] Directory naming bali-82 / bali-85
- Other directories use network names (
arbitrum-sepolia,base-sepolia). These two use rollup-ID suffixes, while the EVM chain IDs are828282and858585. The PR description already offers to rename. - It is fine for now, but renaming later changes the published paths. If official network names exist, it's cheaper to settle on them before merge. If you keep the names, a one-line note in the description explaining that 82/85 are rollup labels would help future readers.
5. [info] Scope and follow-up
- The lists intentionally contain only native-ETH sentinels at this point. The wrapped tokens on-chain (five on 828282, including USDC wrapped from Sepolia, JTT and the E2E tokens; two on 858585) are queued as follow-up data. Please consider saying so in the description so the empty-looking lists don't read as an oversight.
- Context: the
auto-reindexcheck fails on fork PRs because it checks outgithub.head_reffrom the base repo. That is a known limitation of the workflow and not specific to this change. I ran the reindex locally and it produces no diff, so the committedindex.jsonis up to date.
Once the logoURI paths are fixed and the index is regenerated, this is good to merge from my side.
|
Thanks — fixed in 234fb57: the native-ETH sentinel now points at the shared mainnet ETH asset ( |
|
Follow-up polish pass on the description — no list-file changes, branch stays at
Gates re-verified after the description update: |
miguelmota
left a comment
There was a problem hiding this comment.
LGTM. Verified: the sha256 of both lists matches index/index.json, the index stays alphabetically ordered, both lists follow the sepolia/katana two-sentinel shape, and the mainnet-asset logo fallback is documented with a follow-up. The auto-reindex job failed during checkout before any repository code ran, so it just needs a rerun.
🤖 Generated with Claude Code (Claude Fable 5.1)
|
Re-ran
|
The Bali pilot chains (EVM chain IDs 828282/858585) have no public token dataset, and SDK/widget token visibility on these chains depends on one existing. This PR adds the
bali-82andbali-85ERC-20 lists with the native-ETH sentinels only — the same two-sentinel conventionsepoliaandkatanaship. Tracking agglayer/issues#46:index/bali-82/erc20.json— EVM chain ID828282(Bali PP; AggLayer rollup/network ID82)index/bali-85/erc20.json— EVM chain ID858585(Bali FEP; AggLayer rollup/network ID85)index/index.json— regenerated viapnpm reindexNote on IDs:
82/85are the AggLayer rollup/network IDs; the EVM chain IDs used in the lists (and in the asset CDN paths) are828282/858585.Both lists follow the existing list schema (
index/katana/erc20.json,index/sepolia/erc20.json; Uniswap token-list shape) and contain only the native gas-token sentinel entries (0x0000…0000and0xeeee…eeee, ETH / 18 decimals) per the repo's native-token convention. The native-ETH sentinellogoURIpoints at the shared mainnet ETH asset (/1/0x0000…0000.webp) — same convention already used bymainnet,robinhoodandsoneium— because the per-chain asset-CDN paths (/828282/,/858585/) return 403 until icons are uploaded. Next step: the Bali team uploads the per-chain icons, and a follow-up commit switches both sentinels to their per-chain asset paths. No ERC-20 contract addresses are invented: the pilot ERC-20 set for Bali (addresses, decimals, symbols) is pending confirmation from the Bali team and will be appended to these lists in follow-up commits once confirmed. The wrapped-token set (5 tokens on828282, 2 on858585, verified on-chain) is queued as follow-up data.Note on the two token surfaces: these lists are the public token dataset; the SDK's chain registry and demo scenarios (
0xsequence/trails) reference the verified on-chain pilot contracts directly, so demo flows can route ERC-20s (the USDC wrapper, JTT, E2E) before those tokens appear in these public lists — the two surfaces are independent.Notes for reviewers:
bali-82/bali-85are suffixed with the AggLayer rollup/network IDs (82/85), not the EVM chain IDs; happy to rename if the Bali network naming (e.g. in agglayer/networks) settles on official names.828282/858585; the rollup IDs82/85appear only in thebali82/bali85variable names in the0xsequence/trailschain registry).Validation:
pnpm reindex(idempotent after regeneration),pnpm exec prettier --checkon all changed files, and jsonlint on the new/changed JSON files.Refs agglayer/issues#46