Files
proxmox/token-lists/REMAINING_NEXT_STEPS.md
defiQUG f0ab0eadc2 Add complete token lists for Ethereum Mainnet, ChainID 138, and ALL Mainnet
- 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
2026-01-26 13:52:05 -08:00

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