- Added Ethereum Mainnet token list (1 token: USDT) - Updated ChainID 138 token list (6 tokens: added cUSDT and cUSDC) - Added ALL Mainnet token list (9 tokens including AUSDT) - Discovered ALL Mainnet tokens via Transfer event scanning - Updated validation scripts for multi-chain support - Created comprehensive documentation and guides - Updated master documentation indexes - All token lists validated and ready for submission
442 lines
11 KiB
Markdown
442 lines
11 KiB
Markdown
# Remaining Next Steps - Complete Checklist
|
|
|
|
**Date**: 2026-01-26
|
|
**Status**: All token lists created and validated
|
|
**Remaining**: Hosting, submission, and distribution
|
|
|
|
---
|
|
|
|
## ✅ Completed (Do Not Repeat)
|
|
|
|
- [x] Created all 3 token list files
|
|
- [x] Validated all token lists
|
|
- [x] Discovered ALL Mainnet tokens (9 tokens including AUSDT)
|
|
- [x] Updated ChainID 138 with cUSDT and cUSDC
|
|
- [x] Created extraction and discovery scripts
|
|
- [x] Created comprehensive documentation
|
|
|
|
---
|
|
|
|
## 📋 Remaining Next Steps
|
|
|
|
### Phase 1: Hosting Token Lists (Required)
|
|
|
|
#### 1.1 Host on GitHub (Recommended)
|
|
|
|
**For Each Token List**:
|
|
|
|
- [ ] **Commit token lists to repository**
|
|
```bash
|
|
cd /home/intlc/projects/proxmox
|
|
git add token-lists/lists/*.json
|
|
git commit -m "Add token lists for Ethereum Mainnet, ChainID 138, and ALL Mainnet"
|
|
git push
|
|
```
|
|
|
|
- [ ] **Enable GitHub Pages** (if using Pages)
|
|
- Go to repository Settings → Pages
|
|
- Select branch (main/master)
|
|
- Select folder: `/token-lists/lists/` or `/ (root)`
|
|
- Save
|
|
|
|
- [ ] **Verify GitHub Raw URLs are accessible**
|
|
- Test: `https://raw.githubusercontent.com/{user}/{repo}/main/token-lists/lists/dbis-138.tokenlist.json`
|
|
- Test: `https://raw.githubusercontent.com/{user}/{repo}/main/token-lists/lists/ethereum-mainnet.tokenlist.json`
|
|
- Test: `https://raw.githubusercontent.com/{user}/{repo}/main/token-lists/lists/all-mainnet.tokenlist.json`
|
|
|
|
- [ ] **Verify CORS headers** (if using custom domain)
|
|
- Ensure `Access-Control-Allow-Origin: *` header is set
|
|
- Test with: `curl -I <token-list-url>`
|
|
|
|
#### 1.2 Alternative Hosting Options
|
|
|
|
- [ ] **IPFS Hosting** (Optional - Decentralized)
|
|
- Upload token lists to IPFS (Pinata, Infura, etc.)
|
|
- Pin files to keep them available
|
|
- Document IPFS hashes
|
|
|
|
- [ ] **Custom Domain Hosting** (Optional)
|
|
- Configure `tokens.d-bis.org` or similar domain
|
|
- Setup nginx/Apache with CORS headers
|
|
- Mirror GitHub releases
|
|
|
|
---
|
|
|
|
### Phase 2: Signing Token Lists (Recommended for Security)
|
|
|
|
#### 2.1 Generate minisign Keypair (If Not Done)
|
|
|
|
- [ ] **Generate keypair**
|
|
```bash
|
|
cd token-lists
|
|
./scripts/sign-list.sh --generate-key
|
|
```
|
|
|
|
- [ ] **Store private key securely**
|
|
- Add to GitHub Secrets (for CI/CD)
|
|
- Store securely for manual signing
|
|
|
|
- [ ] **Commit public key**
|
|
```bash
|
|
git add minisign.pub
|
|
git commit -m "Add minisign public key for token list verification"
|
|
git push
|
|
```
|
|
|
|
#### 2.2 Sign All Token Lists
|
|
|
|
- [ ] **Sign ChainID 138 token list**
|
|
```bash
|
|
cd token-lists
|
|
./scripts/sign-list.sh sign lists/dbis-138.tokenlist.json
|
|
```
|
|
|
|
- [ ] **Sign Ethereum Mainnet token list**
|
|
```bash
|
|
./scripts/sign-list.sh sign lists/ethereum-mainnet.tokenlist.json
|
|
```
|
|
|
|
- [ ] **Sign ALL Mainnet token list**
|
|
```bash
|
|
./scripts/sign-list.sh sign lists/all-mainnet.tokenlist.json
|
|
```
|
|
|
|
- [ ] **Commit signatures**
|
|
```bash
|
|
git add lists/*.sig
|
|
git commit -m "Add minisign signatures for token lists"
|
|
git push
|
|
```
|
|
|
|
---
|
|
|
|
### Phase 3: Create GitHub Releases
|
|
|
|
#### 3.1 Release ChainID 138 Token List
|
|
|
|
- [ ] **Update version** (if needed)
|
|
```bash
|
|
cd token-lists
|
|
./scripts/release.sh patch # or minor/major
|
|
```
|
|
|
|
- [ ] **Create git tag**
|
|
```bash
|
|
git tag -a v1.2.0 -m "Release v1.2.0: Added cUSDT and cUSDC"
|
|
git push --tags
|
|
```
|
|
|
|
- [ ] **Verify GitHub Actions release workflow** (if configured)
|
|
- Check `.github/workflows/release.yml` exists
|
|
- Verify workflow runs on tag push
|
|
- Check release artifacts created
|
|
|
|
#### 3.2 Release Ethereum Mainnet Token List
|
|
|
|
- [ ] **Create initial release**
|
|
```bash
|
|
git tag -a ethereum-mainnet-v1.0.0 -m "Release Ethereum Mainnet token list v1.0.0"
|
|
git push --tags
|
|
```
|
|
|
|
#### 3.3 Release ALL Mainnet Token List
|
|
|
|
- [ ] **Create initial release**
|
|
```bash
|
|
git tag -a all-mainnet-v1.0.0 -m "Release ALL Mainnet token list v1.0.0"
|
|
git push --tags
|
|
```
|
|
|
|
---
|
|
|
|
### Phase 4: Submit to Token List Registries
|
|
|
|
#### 4.1 Uniswap Token Lists Registry
|
|
|
|
**For Each Token List**:
|
|
|
|
- [ ] **Fork Uniswap token-lists repository**
|
|
- Repository: https://github.com/Uniswap/token-lists
|
|
- Fork to your GitHub account
|
|
|
|
- [ ] **Clone your fork**
|
|
```bash
|
|
git clone https://github.com/YOUR_USERNAME/token-lists.git
|
|
cd token-lists
|
|
```
|
|
|
|
- [ ] **Add token list to repository**
|
|
- Follow their directory structure
|
|
- Copy token list file to appropriate location
|
|
- Ensure file naming follows their conventions
|
|
|
|
- [ ] **Create Pull Request**
|
|
```bash
|
|
git checkout -b add-{network}-token-list
|
|
git add <token-list-file>
|
|
git commit -m "Add {Network Name} token list"
|
|
git push origin add-{network}-token-list
|
|
```
|
|
- Then create PR on GitHub
|
|
- Include description of tokens
|
|
- Reference token list URL
|
|
|
|
**Specific PRs Needed**:
|
|
- [ ] PR for ChainID 138 token list
|
|
- [ ] PR for Ethereum Mainnet token list (if not already in registry)
|
|
- [ ] PR for ALL Mainnet token list
|
|
|
|
#### 4.2 MetaMask Token Lists
|
|
|
|
- [ ] **Add token list URLs to MetaMask** (Manual)
|
|
- MetaMask → Settings → Security & Privacy → Token Lists
|
|
- Add each token list URL
|
|
- Test token discovery
|
|
|
|
- [ ] **Submit to MetaMask's default registry** (If they have one)
|
|
- Check MetaMask documentation for submission process
|
|
- Follow their guidelines
|
|
|
|
#### 4.3 Chainlist Integration
|
|
|
|
- [ ] **Update ChainID 138 chain configuration**
|
|
- File: `token-lists/chainlists/chain-138.json`
|
|
- Add `tokenLists` field with token list URL
|
|
- Submit PR to Chainlist repository
|
|
|
|
- [ ] **Create ALL Mainnet chain configuration** (If not exists)
|
|
- Create `chainlists/chain-651940.json`
|
|
- Include token list URL reference
|
|
- Submit to Chainlist
|
|
|
|
- [ ] **Update Ethereum Mainnet chain config** (If applicable)
|
|
- Add token list reference if submitting custom list
|
|
|
|
---
|
|
|
|
### Phase 5: Update Configuration Files
|
|
|
|
#### 5.1 Update chains.ts (ALL Mainnet)
|
|
|
|
- [ ] **Update USDC address** in `alltra-lifi-settlement/src/config/chains.ts`
|
|
- Current: `usdcAddress: ''` (empty)
|
|
- Update to: `usdcAddress: '0xa95EeD79f84E6A0151eaEb9d441F9Ffd50e8e881'` (USDC on ALL Mainnet)
|
|
|
|
- [ ] **Update AUSDT address** (if needed)
|
|
- Document AUSDT address: `0x015B1897Ed5279930bC2Be46F661894d219292A6`
|
|
|
|
#### 5.2 Update Documentation
|
|
|
|
- [ ] **Update CHAIN138_TOKEN_ADDRESSES.md**
|
|
- Ensure all tokens are documented
|
|
- Add explorer links
|
|
|
|
- [ ] **Create ALL_MAINNET_TOKEN_ADDRESSES.md**
|
|
- Document all 9 tokens found
|
|
- Include addresses, decimals, explorer links
|
|
|
|
---
|
|
|
|
### Phase 6: Logo Management (Optional but Recommended)
|
|
|
|
#### 6.1 Host Token Logos
|
|
|
|
- [ ] **Create logos directory**
|
|
```bash
|
|
mkdir -p token-lists/logos
|
|
```
|
|
|
|
- [ ] **Download/verify logo URLs**
|
|
- Check all logo URLs are accessible
|
|
- Download logos for local hosting (optional)
|
|
- Update logoURI fields if needed
|
|
|
|
- [ ] **Add missing logos**
|
|
- HYDX, HYBX, CHT, AUDA may need logos
|
|
- Create or source appropriate logos
|
|
- Host logos publicly
|
|
- Update token list with logo URLs
|
|
|
|
---
|
|
|
|
### Phase 7: CI/CD Enhancements (Optional)
|
|
|
|
#### 7.1 GitHub Actions Workflows
|
|
|
|
- [ ] **Verify PR validation workflow**
|
|
- Check `.github/workflows/validate-pr.yml` exists
|
|
- Test workflow on PR
|
|
- Ensure it validates all token lists
|
|
|
|
- [ ] **Verify release workflow**
|
|
- Check `.github/workflows/release.yml` exists
|
|
- Test workflow on tag push
|
|
- Verify artifacts created
|
|
|
|
- [ ] **Add workflow for ALL Mainnet** (if needed)
|
|
- Create workflow to validate ALL Mainnet token list
|
|
- Add chain ID 651940 validation
|
|
|
|
#### 7.2 Automated Updates
|
|
|
|
- [ ] **Setup automated token discovery** (Optional)
|
|
- Create scheduled job to scan for new tokens
|
|
- Auto-update token lists (with manual review)
|
|
- Notify on new token discoveries
|
|
|
|
---
|
|
|
|
### Phase 8: Testing and Verification
|
|
|
|
#### 8.1 Integration Testing
|
|
|
|
- [ ] **Test MetaMask integration**
|
|
- Add token list URL to MetaMask
|
|
- Verify tokens appear correctly
|
|
- Test token metadata display
|
|
|
|
- [ ] **Test Uniswap integration** (If applicable)
|
|
- Verify token list works in Uniswap interface
|
|
- Test token selection and display
|
|
|
|
- [ ] **Test dApp integration**
|
|
- Use token list in sample dApp
|
|
- Verify token metadata loading
|
|
- Test token selection
|
|
|
|
#### 8.2 On-Chain Verification
|
|
|
|
- [ ] **Verify ChainID 138 tokens on-chain**
|
|
```bash
|
|
node token-lists/scripts/verify-on-chain.js token-lists/lists/dbis-138.tokenlist.json --required
|
|
```
|
|
(Requires RPC access)
|
|
|
|
- [ ] **Verify ALL Mainnet tokens on-chain** (If RPC accessible)
|
|
- Create verification script for ALL Mainnet
|
|
- Verify all 9 tokens exist and match metadata
|
|
|
|
---
|
|
|
|
### Phase 9: Documentation Updates
|
|
|
|
#### 9.1 Update Main README
|
|
|
|
- [ ] **Update token-lists/README.md**
|
|
- Add ALL Mainnet token list to summary
|
|
- Update token counts
|
|
- Add ALL Mainnet discovery information
|
|
|
|
#### 9.2 Create Submission Status Document
|
|
|
|
- [ ] **Create submission tracking document**
|
|
- Track PR status for each registry
|
|
- Document submission dates
|
|
- Track approval status
|
|
|
|
---
|
|
|
|
### Phase 10: Public Announcement (Optional)
|
|
|
|
#### 10.1 Community Announcements
|
|
|
|
- [ ] **Announce on social media** (If applicable)
|
|
- Twitter/X post about token lists
|
|
- Discord announcement
|
|
- Community forum post
|
|
|
|
#### 10.2 Documentation Updates
|
|
|
|
- [ ] **Update project documentation**
|
|
- Add token list URLs to main README
|
|
- Update integration guides
|
|
- Add to project website (if applicable)
|
|
|
|
---
|
|
|
|
## 📊 Priority Order
|
|
|
|
### High Priority (Required for Submission)
|
|
|
|
1. **Host token lists publicly** (GitHub Raw or Pages)
|
|
2. **Submit to Uniswap Token Lists registry**
|
|
3. **Update chains.ts with ALL Mainnet USDC address**
|
|
|
|
### Medium Priority (Recommended)
|
|
|
|
4. **Sign token lists** (minisign)
|
|
5. **Create GitHub releases**
|
|
6. **Submit to MetaMask token lists**
|
|
7. **Update Chainlist with token list references**
|
|
|
|
### Low Priority (Optional Enhancements)
|
|
|
|
8. **Logo management**
|
|
9. **CI/CD enhancements**
|
|
10. **Automated token discovery**
|
|
|
|
---
|
|
|
|
## 🎯 Quick Start Commands
|
|
|
|
### Host on GitHub
|
|
|
|
```bash
|
|
cd /home/intlc/projects/proxmox
|
|
git add token-lists/lists/*.json
|
|
git commit -m "Add complete token lists for all networks"
|
|
git push
|
|
```
|
|
|
|
### Sign Token Lists
|
|
|
|
```bash
|
|
cd token-lists
|
|
./scripts/sign-list.sh sign lists/dbis-138.tokenlist.json
|
|
./scripts/sign-list.sh sign lists/ethereum-mainnet.tokenlist.json
|
|
./scripts/sign-list.sh sign lists/all-mainnet.tokenlist.json
|
|
git add lists/*.sig
|
|
git commit -m "Add signatures for token lists"
|
|
git push
|
|
```
|
|
|
|
### Create Releases
|
|
|
|
```bash
|
|
cd token-lists
|
|
git tag -a v1.2.0 -m "Release ChainID 138 token list v1.2.0"
|
|
git tag -a ethereum-mainnet-v1.0.0 -m "Release Ethereum Mainnet token list"
|
|
git tag -a all-mainnet-v1.0.0 -m "Release ALL Mainnet token list"
|
|
git push --tags
|
|
```
|
|
|
|
---
|
|
|
|
## 📝 Notes
|
|
|
|
- **GitHub Raw URLs** work immediately after push (no Pages setup needed)
|
|
- **Signing** is optional but recommended for security
|
|
- **Submissions** can be done in parallel for all registries
|
|
- **Testing** should be done before public announcement
|
|
|
|
---
|
|
|
|
## ✅ Completion Checklist Summary
|
|
|
|
**Token Lists**: ✅ Complete (3 files, 16 tokens)
|
|
**Validation**: ✅ Complete (all validated)
|
|
**Documentation**: ✅ Complete (18 docs)
|
|
**Scripts**: ✅ Complete (4 scripts)
|
|
|
|
**Remaining**:
|
|
- [ ] Hosting (GitHub/IPFS/Custom domain)
|
|
- [ ] Signing (minisign)
|
|
- [ ] Releases (GitHub tags)
|
|
- [ ] Registry submissions (Uniswap, MetaMask, Chainlist)
|
|
- [ ] Configuration updates (chains.ts)
|
|
- [ ] Integration testing
|
|
|
|
---
|
|
|
|
**Last Updated**: 2026-01-26
|