feat: update token list and Nginx configuration for Chain 138
- Added new compliant tokens including Tether EUR, Pound Sterling, and others to the DUAL_CHAIN_TOKEN_LIST. - Updated version in the token list configuration to 1.2. - Enhanced Nginx configuration to support token-aggregation API and serve token list and network configurations from specified paths. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -96,6 +96,15 @@
|
||||
"compliant"
|
||||
]
|
||||
},
|
||||
{"chainId":138,"address":"0xdf4b71c61E5912712C1Bdd451416B9aC26949d72","name":"Tether EUR (Compliant)","symbol":"cEURT","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["stablecoin","defi","compliant"]},
|
||||
{"chainId":138,"address":"0x003960f16D9d34F2e98d62723B6721Fb92074aD2","name":"Pound Sterling (Compliant)","symbol":"cGBPC","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["stablecoin","defi","compliant"]},
|
||||
{"chainId":138,"address":"0x350f54e4D23795f86A9c03988c7135357CCaD97c","name":"Tether GBP (Compliant)","symbol":"cGBPT","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["stablecoin","defi","compliant"]},
|
||||
{"chainId":138,"address":"0xD51482e567c03899eecE3CAe8a058161FD56069D","name":"Australian Dollar (Compliant)","symbol":"cAUDC","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["stablecoin","defi","compliant"]},
|
||||
{"chainId":138,"address":"0xEe269e1226a334182aace90056EE4ee5Cc8A6770","name":"Japanese Yen (Compliant)","symbol":"cJPYC","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["stablecoin","defi","compliant"]},
|
||||
{"chainId":138,"address":"0x873990849DDa5117d7C644f0aF24370797C03885","name":"Swiss Franc (Compliant)","symbol":"cCHFC","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["stablecoin","defi","compliant"]},
|
||||
{"chainId":138,"address":"0x54dBd40cF05e15906A2C21f600937e96787f5679","name":"Canadian Dollar (Compliant)","symbol":"cCADC","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["stablecoin","defi","compliant"]},
|
||||
{"chainId":138,"address":"0x290E52a8819A4fbD0714E517225429aA2B70EC6b","name":"Gold (Compliant)","symbol":"cXAUC","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["defi","compliant"]},
|
||||
{"chainId":138,"address":"0x94e408E26c6FD8F4ee00b54dF19082FDA07dC96E","name":"Tether XAU (Compliant)","symbol":"cXAUT","decimals":6,"logoURI":"https://ipfs.io/ipfs/Qma3FKtLce9MjgJgWbtyCxBiPjJ6xi8jGWUSKNS5Jc2ong","tags":["defi","compliant"]},
|
||||
{
|
||||
"chainId": 1,
|
||||
"address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
|
||||
-- Rollback activity_events table
|
||||
DROP TABLE IF EXISTS activity_events;
|
||||
35
backend/database/migrations/0014_activity_events.up.sql
Normal file
35
backend/database/migrations/0014_activity_events.up.sql
Normal file
@@ -0,0 +1,35 @@
|
||||
-- Migration: Activity events feed (normalized stream for transfers + app events + bridge stitching)
|
||||
-- Description: Single table for activity feed; event_type in (TRANSFER, APP_ACTION, CLAIM, BRIDGE_OUT, BRIDGE_IN);
|
||||
-- routing.path = ALT | CCIP for bridge-aware stitching. See docs/04-configuration/ACTIVITY_FEED_SPEC.md
|
||||
-- Requires PostgreSQL 13+ (gen_random_uuid() is built-in).
|
||||
|
||||
CREATE TABLE IF NOT EXISTS activity_events (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
chain_id INTEGER NOT NULL,
|
||||
transaction_hash VARCHAR(66) NOT NULL,
|
||||
log_index INTEGER NOT NULL DEFAULT 0,
|
||||
block_number BIGINT NOT NULL,
|
||||
block_timestamp TIMESTAMP WITH TIME ZONE NOT NULL,
|
||||
actor VARCHAR(42) NOT NULL,
|
||||
subject VARCHAR(42),
|
||||
event_type VARCHAR(32) NOT NULL,
|
||||
contract_address VARCHAR(42),
|
||||
data JSONB,
|
||||
routing JSONB,
|
||||
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
||||
UNIQUE(chain_id, transaction_hash, log_index)
|
||||
);
|
||||
|
||||
CREATE INDEX idx_activity_events_chain_id ON activity_events(chain_id);
|
||||
CREATE INDEX idx_activity_events_actor ON activity_events(actor);
|
||||
CREATE INDEX idx_activity_events_subject ON activity_events(subject);
|
||||
CREATE INDEX idx_activity_events_event_type ON activity_events(event_type);
|
||||
CREATE INDEX idx_activity_events_block_timestamp ON activity_events(block_timestamp);
|
||||
CREATE INDEX idx_activity_events_block_timestamp_id ON activity_events(block_timestamp, id);
|
||||
CREATE INDEX idx_activity_events_contract ON activity_events(contract_address);
|
||||
CREATE INDEX idx_activity_events_routing ON activity_events USING GIN (routing);
|
||||
|
||||
COMMENT ON TABLE activity_events IS 'Normalized activity feed: transfers, app events, bridge in/out; routing.path = ALT | CCIP for stitch';
|
||||
COMMENT ON COLUMN activity_events.actor IS 'Wallet that initiated the action';
|
||||
COMMENT ON COLUMN activity_events.subject IS 'Optional: user/account/tokenId/resource';
|
||||
COMMENT ON COLUMN activity_events.routing IS 'Bridge stitching: { path: ALT|CCIP, fromChain, toChain, bridgeTxHash? }';
|
||||
Reference in New Issue
Block a user