Redeploy testnet with chain ID 420690 and update all contracts#45
Closed
prophet10x wants to merge 137 commits intoJejuNetwork:mainfrom
Closed
Redeploy testnet with chain ID 420690 and update all contracts#45prophet10x wants to merge 137 commits intoJejuNetwork:mainfrom
prophet10x wants to merge 137 commits intoJejuNetwork:mainfrom
Conversation
- Update chain ID from 2151908 to 420690 across all deployment configs, genesis files, rollup configs, docker-compose files, scripts, and docs - Fix BasePaymaster v0.9 compatibility in LiquidityPaymaster and MultiTokenPaymaster (2-arg constructor, entryPoint() function calls) - Update contracts.json testnet section with all deployed addresses: registries, moderation, payments, OIF, EIL, federation, sequencer, governance timelocks, fees, and more - Update e2e test scripts with chain ID 420690 and new contract addresses - Add e2e-paymaster-elizaos.mjs for JEJU/ELIZAOS token gas sponsorship - Add TESTNET-DEPLOYMENT.md with comprehensive deployment documentation - Fix DWS frontend to use relative URLs (avoids CORS/IP issues) - Add on-chain ComputeRegistry integration to Tauri node Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Extract AMM/swap functionality into CrossChainSwapRouter (4.3KB) and remove heavy view functions (getBestPaymentTokenForApp, checkAppPreference, getTokensInfo, getPaymasterStatus, protocol fee claiming). Before: 26.7KB (exceeded 24.576KB limit, could not deploy) After: 22.4KB (well within limit, deployable) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…rFactory Deployed to Jeju Testnet (chain ID 420690): - CrossChainPaymaster: 0x38a024C0b412B9d1db8BC398140D00F5Af3093D4 - CrossChainSwapRouter: 0x525C7063E7C20997BaaE9bDa922159152D0e8417 - MultiTokenPaymaster: 0x5fc748f1FEb28d7b76fa1c6B07D8ba2d5535177c - PaymasterFactory: 0xB82008565FdC7e44609fA118A4a681E92581e680 CrossChainPaymaster refactored from 26.7KB to 20.5KB by extracting AMM/swap into CrossChainSwapRouter. All 3 previously undeployable contracts now compile and deploy successfully. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The PRAGMA table_info query doesn't work reliably through the SQLit adapter, returning empty rows even when the table exists. This caused the env column migration to always run, failing on tables that already have the column from CREATE TABLE. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Change getContracts() to warn and fallback to testnet instead of throwing when mainnet contracts are not deployed - Add Cache-Control: no-cache to DWS frontend HTML responses Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… proxy The /rpc/proxy route doesn't exist - the actual RPC proxy is at POST /rpc/:chainId. Use getRpcUrl() which returns the correct testnet RPC (https://jeju-testnet.fartbag.fun/). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The 'dws.apps.jeju' JNS name isn't registered yet, causing login to fail with "App not found". Disable decentralized mode so wallet sign-in works directly. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- configureOAuth3RouterConfig now reads OAUTH3_AGENT_URL env var - Settings page register agent link points to testnet gateway Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The OAUTH3_AGENT_URL constant was captured at module import time, before configureOAuth3RouterConfig() was called. Replace with a getter function so it reads the configured value lazily. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Root node_modules has @noble/hashes v2 which renamed sha256->sha2, but browser deps (viem, ox, @coinbase/wallet-sdk) need v1 paths. Resolve all @noble/hashes imports to v1 from ox's nested node_modules. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
getServicesConfig() omitted graphqlCors from the returned indexer
object even though it existed in services.json and the schema.
This caused getServiceUrl('indexer', 'graphqlCors') to throw.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ulateRequiredStake The deployed IdentityRegistry doesn't have calculateRequiredStake. Default to 0n so registration can proceed on testnet. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Update ABI to match deployed contract (tier-based staking, not token-address-based calculateRequiredStake) - Add StakeTier enum (NONE/SMALL/MEDIUM/HIGH) matching contract - Support free registration (register) and staked (registerWithStake) - Use ELIZAOS token for staking instead of ETH - Store a2a endpoint as contract metadata entry - Replace token selector with tier selector in form Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add IdentityRegistry config, list 4 undeployed contracts, and add running services (faucet, gateway, DWS, OAuth3). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Redeployed IdentityRegistry to 0x8A93d247134d91e0de6f96547cB0204e5BE8e5D8 with updated stake amounts (1000x increase: 1/10/100 ELIZAOS for Small/ Medium/High tiers). Updated gateway contracts config, registration form tier descriptions, and TESTNET-DEPLOYMENT.md. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Changed STAKE_SMALL/MEDIUM/HIGH from constants to mutable state variables with a governance-only setStakeTiers() setter. Redeployed to 0x40918Ba7f132E0aCba2CE4de4c4baF9BD2D7D849 with ELIZAOS token support. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ity registry address detectNetworkFromHostname() didn't recognize jeju-testnet.fartbag.fun, so it fell back to localnet (127.0.0.1:6546). Also updated contracts.json testnet registry.identity to new governance-adjustable deployment. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
OAuth3 is now running on Oracle server port 4200, proxied via nginx at /oauth3/. Updated services.json testnet oauth3.api URL from non-existent auth.testnet.jejunetwork.org to the real endpoint. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The wallet auth endpoint rejects sign-in messages from domains not in its allowlist. Added jeju-testnet.fartbag.fun so gateway users can authenticate. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Implements the previously-commented USE_MEMORY_STATE=true env var to use Map-based in-memory storage instead of SQLit for all state stores (sessions, clients, auth codes, refresh tokens, OAuth states, passkeys, reports). Enables OAuth3 to run on servers without a SQLit database. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…LIZAOS→JEJU in UI - Make IPFS session storage non-blocking in OAuth3 client so login succeeds even when DWS storage is unavailable - Update testnet services.json: point indexer/DWS/storage URLs to jeju-testnet.fartbag.fun instead of non-existent jejunetwork.org subdomains - Update DWS_ENDPOINTS in auth config for testnet - Rename ELIZAOS to JEJU in gateway stake tier descriptions Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- FaucetTab: check registration via IdentityRegistry contract when faucet API is unavailable, with static fallback for faucet info - FaucetTab: fix "Register Now" link to use React Router Link (respects BrowserRouter basename) - RegisteredAppsList: read registered agents directly from IdentityRegistry contract instead of requiring GraphQL indexer Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Read agents() mapping for tier, stakedToken, stakedAmount, registeredAt - Resolve JEJU token address to "JEJU" name in all displays - Read tokenURI for agent name/description in detail modal - Show "JEJU" instead of "ETH" in browse cards and detail modal - Fix deposit date (was always 1/1/1970, now reads registeredAt) - Show "Faucet service not running" message when backend unavailable Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace KMS-based signing with direct viem wallet client using DEPLOYER_PRIVATE_KEY for testnet. Add USE_MEMORY_STATE support for in-memory faucet cooldown tracking. Create minimal faucet-server.ts entry point that can run independently on port 4014. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Deploy NodeStakingManager contract at 0x5FeaeBfB4439F3516c74939A9D04e95AFE82C4ae on testnet. Fix gateway build script to use /gateway/ base path for asset URLs so they resolve correctly behind nginx. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…uencer info Add NodeStakingManager contract address, Faucet API documentation, Gateway portal features, and sequencer architecture notes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Simplified node staking without TokenRegistry/PaymasterFactory/PriceOracle dependencies. Same ABI as NodeStakingManager for UI compatibility. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…tracts - ITokenRegistry: isRegistered() -> isSupported() (matches TokenRegistry) - IPaymasterFactory: hasPaymaster() -> isDeployed() (matches PaymasterFactory) - ISimplePriceOracle -> IPriceOracle: getPrice returns (uint256, uint256) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
New address: 0x32EEce76C2C2e8758584A83Ee2F522D4788feA0f Also set JEJU price ($1) on PriceOracle and deployed JEJU paymaster. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.
Summary
entryPoint()function calls)contracts.jsontestnet section with all 70+ deployed contract addressesTESTNET-DEPLOYMENT.mdwith comprehensive deployment documentatione2e-paymaster-elizaos.mjsfor JEJU/ELIZAOS token gas sponsorship testing/explorer/with Docker Compose config and documentationBlock Explorer
Blockscout deployed at
https://jeju-testnet.fartbag.fun/explorer/:packages/deployment/docker/blockscout-explorer.compose.yamlTESTNET-DEPLOYMENT.mdservices.json,rpc-chains.ts,networks.ts,Settings.tsxDeployed Contracts (Chain ID 420690)
All core contracts deployed on Jeju Testnet at
https://jeju-testnet.fartbag.fun/:Test plan
curl https://jeju-testnet.fartbag.fun/returns chainId0x66b32(420690)https://jeju-testnet.fartbag.fun/faucet/distributes JEJU/ELIZAOS tokenshttps://jeju-testnet.fartbag.fun/explorer//explorer/api/v2/stats)e2e-paymaster-elizaos.mjsagainst testnet🤖 Generated with Claude Code