Commit Graph

139 Commits

Author SHA1 Message Date
pezkuwichain 22b3df16de fix: add decimal correction factor for mixed-decimal pool reserves
HEZ-USDT pool has mixed decimals (12 vs 6). The LP formula
LP = sqrt(r0 * r1) requires correction factor 10^(12-(d0+d1)/2)
to properly estimate reserves in human units.

- HEZ-USDT: factor = 1000 (fixes 1000x undercount)
- HEZ-PEZ: factor = 1 (no change needed)
2026-02-05 02:20:21 +03:00
pezkuwichain 745cb81758 fix: correct decimal handling in HEZ-USDT pool calculations
- Fix reserve estimation to use correct decimals (12 for HEZ, 6 for USDT)
- Store decimals in poolReserves state for AMM calculations
- Adjust output formatting based on token decimals
2026-02-05 02:14:50 +03:00
pezkuwichain 6582f9df0b fix: add eslint-disable for runtime API any types 2026-02-05 01:41:19 +03:00
pezkuwichain da3a3ff44b fix: TokenSwap to use native HEZ with XCM Location format
- Changed HEZ from wHEZ (asset 0) to native token (NATIVE_TOKEN_ID = -1)
- Updated pool query to use XCM MultiLocation format
- Use runtime API quotePriceExactTokensForTokens for exchange rate
- Updated swap transactions to use XCM Location paths
- Added multi-hop support for PEZ ↔ USDT through native HEZ
2026-02-05 01:31:45 +03:00
pezkuwichain 7f5fcc95f4 fix: use NATIVE_TOKEN_ID (-1) for pool matching and XCM Location for swaps
- Changed HEZ assetId from 0 to -1 (NATIVE_TOKEN_ID) for correct pool matching
- Updated swap transactions to use XCM MultiLocation format
- Added multi-hop support for PEZ ↔ USDT through HEZ
2026-02-05 01:15:26 +03:00
pezkuwichain cc46687b94 fix: use Asset Hub API for wUSDT and wHEZ transfers
- wUSDT, wHEZ, and PEZ are all on Asset Hub
- Transfer was failing because code used relay chain API for wUSDT
2026-02-05 00:59:23 +03:00
pezkuwichain d82ffaca74 fix: display wHEZ, wUSDT and LP tokens in AccountBalance
- Fix wUSDT balance to use Asset Hub API instead of relay chain
- Fix USDT subscription to use correct asset ID (1000)
- Add wHEZ balance display when balance > 0
- Add LP token positions display from poolAssets pallet
- Add LP token logo to public/tokens
2026-02-05 00:50:40 +03:00
pezkuwichain 51904c206c feat: add LP token support and display in wallet
- Add LP_TOKENS definition in shared/types/dex.ts
- Fetch LP token balances from poolAssets pallet
- Add HEZ-PEZ-LP and HEZ-USDT-LP to TokenBalances
- Add lp_token_512.png logo
2026-02-05 00:35:46 +03:00
pezkuwichain cd6da00ef8 fix: DEX improvements - Asset Hub balance fetching and Treasury admin support
- WalletContext: Use Asset Hub API for PEZ/wHEZ/wUSDT balance queries
- AddLiquidityModal: Handle native token balance via system.account
- auth.ts: Add Treasury accounts to admin list for pool creation and minting

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 23:27:36 +03:00
pezkuwichain 6d0437a3af fix: add DEVELOPMENT endpoint alias and change Total text to Toplam 2026-02-04 22:11:25 +03:00
pezkuwichain 089e4918f1 fix: correct LP fee from 3% to 0.3%
Runtime LPFee = 3 means 3/1000 = 0.3%, not 3%.
Updated AMM calculations in TokenSwap, SwapInterface, and PoolDashboard.
2026-02-04 21:53:35 +03:00
pezkuwichain e34d7245e4 fix: use Asset Hub native balance for liquidity operations
DEX (assetConversion) is on Asset Hub, but WalletContext fetches
HEZ balance from relay chain. Added separate fetch for Asset Hub
native balance when adding liquidity to native token pools.
2026-02-04 21:48:49 +03:00
pezkuwichain 289ed41b95 fix: correct fee percentage (3% -> 0.3%) and asset ID mapping in AddLiquidityModal 2026-02-04 20:48:12 +03:00
pezkuwichain 254b59d985 fix: remove unused AssetAccountData interface 2026-02-04 20:17:37 +03:00
pezkuwichain ddaa39653d fix: resolve DEX pool issues with XCM Location format and slippage calculation
- Fix PoolDashboard reserve fetching (was hardcoded to 0)
- Fix slippage calculation bug in AddLiquidityModal
- Add XCM Location format support for native token (-1) in all liquidity modals
- Update KNOWN_TOKENS with correct wUSDT asset ID (1000) and add NATIVE_TOKEN_ID constant
- Implement dynamic pool discovery in fetchPools() using XCM Location parsing
- Update fetchUserLPPositions() to use correct LP token ID from chain
- Add formatAssetLocation() helper to shared/utils/dex.ts
2026-02-04 20:13:26 +03:00
pezkuwichain f9089aaba5 feat: add support for all pool combinations (wHEZ-PEZ, PEZ-USDT, wHEZ-USDT) 2026-02-04 19:32:19 +03:00
pezkuwichain d1ecde7a3e fix: fetch real pool price using assetConversionApi.quotePriceExactTokensForTokens 2026-02-04 19:23:13 +03:00
pezkuwichain 04e182ea78 fix: use XCM Location format for native token in liquidity operations 2026-02-04 19:16:51 +03:00
pezkuwichain 239cd52237 fix: handle native token ID (-1) in display names and fix loading state 2026-02-04 19:02:37 +03:00
pezkuwichain 0c3a69f8eb fix: use assetHubApi instead of undefined api in DEX components 2026-02-04 18:38:22 +03:00
pezkuwichain 877ddf8692 fix: use assetHubApi instead of undefined api in XCMBridgeSetupModal
The checkBridgeStatus function was being called with `api` which was not
defined in the component scope. Changed to use `assetHubApi` which is
properly imported from PezkuwiContext.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 18:18:05 +03:00
pezkuwichain 20ed1938ff fix: force rebuild - DEX migration complete 2026-02-04 17:34:12 +03:00
pezkuwichain 707e1bfa9b fix: replace remaining api references with assetHubApi in XCMBridgeSetupModal 2026-02-04 16:18:32 +03:00
pezkuwichain 590956cdbf fix: migrate remaining DEX components to Asset Hub API
- Update dex/AddLiquidityModal to use assetHubApi
- Update dex/PoolBrowser to use assetHubApi
- Update dex/SwapInterface to use assetHubApi
- Update dex/XCMBridgeSetupModal to use assetHubApi
- Fix all dependency array references
2026-02-04 15:04:25 +03:00
pezkuwichain 8102e8e7d7 fix: migrate DEX components from Relay Chain to Asset Hub API
- Update PoolDashboard to use assetHubApi for pool discovery
- Update TokenSwap to use assetHubApi for swap operations
- Update AddLiquidityModal to use assetHubApi
- Update RemoveLiquidityModal (both versions) to use assetHubApi
- Use XCM Location format for pool queries (Native HEZ support)
- Fix all lint errors and dependency array warnings
2026-02-04 14:37:33 +03:00
pezkuwichain 66022d3799 feat: add bidirectional wrap/unwrap for HEZ and wHEZ tokens
- Add tabs UI for switching between wrap (HEZ → wHEZ) and unwrap (wHEZ → HEZ)
- Display both Native HEZ and wHEZ balances
- Support tokenWrapper.wrap() and tokenWrapper.unwrap() transactions
- Show 1:1 ratio conversion preview
2026-02-04 14:21:34 +03:00
pezkuwichain 751bb86ea7 feat: add Native HEZ support for pool creation
assetConversion pallet requires pools to pair with Native token.

Changes:
- Added NATIVE_TOKEN_ID (-1) constant for relay chain HEZ
- Updated CreatePoolModal to use XCM location format for Native
- Pools can now be created: Native HEZ / PEZ, Native HEZ / wUSDT, etc.
- Fixed balance fetching for Native vs Asset tokens
2026-02-04 14:13:43 +03:00
pezkuwichain c533d60de0 fix: use correct asset format for assetConversion pallet
assetConversion.createPool expects { Asset: id } format, not raw numbers.
This fixes pool creation on Asset Hub.
2026-02-04 14:05:42 +03:00
pezkuwichain bae4daa4d5 fix: suppress API/INIT and REGISTRY warnings in production
Added warning suppression at main.tsx entry point to catch
Polkadot.js warnings before any API imports load.
2026-02-04 14:01:43 +03:00
pezkuwichain f061120112 fix: correct wHEZ asset ID from 0 to 2
tokenWrapper pallet on Asset Hub creates wHEZ as Asset ID 2, not 0.

Asset IDs on Asset Hub:
- Asset 1: PEZ
- Asset 2: wHEZ (via tokenWrapper)
- Asset 1000: wUSDT

Updated:
- shared/constants/index.ts: KNOWN_TOKENS
- shared/lib/wallet.ts: ASSET_IDS.WHEZ default
- AccountBalance.tsx: pool queries
- InitializeHezPoolModal.tsx: balance query
2026-02-04 13:52:47 +03:00
pezkuwichain 34486018bb feat: migrate DEX modals to Asset Hub API
DEX pallets (tokenWrapper, assets, assetConversion) are deployed on
Asset Hub teyrchain, not on the relay chain. Updated all DEX modals
to use assetHubApi instead of relay chain api:

- InitializeHezPoolModal: HEZ → wHEZ wrapping via Asset Hub
- InitializeUsdtModal: wUSDT minting via Asset Hub
- CreatePoolModal: Pool creation via Asset Hub
- XCMConfigurationWizard: Steps 5-6 use Asset Hub API

Added pallet availability checks with user-friendly error messages.
2026-02-04 13:13:24 +03:00
pezkuwichain cf12720b4a chore: suppress noisy API warnings in production console 2026-02-04 12:47:40 +03:00
pezkuwichain 9f6e477e6b fix: add People Chain deps to AccountBalance useEffect for proper balance fetch 2026-02-04 12:40:16 +03:00
pezkuwichain ca3709e8ef fix: correct RPC endpoints - remove wrong :9944 port 2026-02-04 12:35:42 +03:00
pezkuwichain 91e14bf200 fix: add production fallback endpoints for blockchain connection
- Add VITE_NETWORK and endpoint env vars to CI/CD build
- Add Asset Hub and People Chain endpoints to build config
- Add hardcoded production fallbacks in PezkuwiContext
- Disable WebSocket real-time service (not deployed yet)
- Endpoints: rpc.pezkuwichain.io, mainnet, beta, asset-hub, people
2026-02-04 12:19:29 +03:00
pezkuwichain 76e99689e5 fix: resolve all lint errors for CI/CD workflow
- Remove unused supabase import from AppLayout.tsx
- Replace any types with proper type assertions in XCMTeleportModal.tsx
- Remove unused events parameter from signAndSend callback
- Fix any types in PezkuwiContext.tsx debug code
- Escape apostrophe in EmailVerification.tsx
- Remove unused ArrowDownRight import from AccountBalance.tsx
2026-02-04 12:00:48 +03:00
pezkuwichain 02094a3635 feat: add XCM teleport and CI/CD deployment workflow
Features:
- Add XCMTeleportModal for cross-chain HEZ transfers
- Support Asset Hub and People Chain teleports
- Add "Fund Fees" button with user-friendly tooltips
- Use correct XCM V3 format with teyrchain junction

Fixes:
- Fix PEZ transfer to use Asset Hub API
- Silence unnecessary pallet availability warnings
- Fix transaction loading performance (10 blocks limit)
- Remove Supabase admin_roles dependency

CI/CD:
- Add auto-deploy to VPS on main branch push
- Add version bumping on deploy
- Upload build artifacts for deployment
2026-02-04 11:35:25 +03:00
pezkuwichain 9d57473000 fix: use price proxy to avoid CORS and rate limits 2026-02-04 09:42:37 +03:00
pezkuwichain 3642ee0cd1 fix: query PEZ balance from Asset Hub and prevent localhost WebSocket errors
- Add Asset Hub API connection for PEZ token queries (Asset ID 1 is on Asset Hub)
- Update AccountBalance to fetch PEZ balance from Asset Hub instead of main chain
- WebSocket: Only try localhost endpoints when running locally, use production
  endpoint directly when on domain
2026-02-04 09:24:03 +03:00
pezkuwichain 9bb71c436b fix: update escrow address to Treasury_3
- Update PLATFORM_ESCROW_ADDRESS in p2p-fiat.ts
- Update PLATFORM_WALLET in verify-deposit edge function
- Use controlled wallet for P2P deposits/withdrawals
2026-02-03 16:50:56 +03:00
pezkuwichain 1e049340a7 chore: update @pezkuwi packages to latest stable versions
- Update all @pezkuwi packages in web, mobile, and backend
- API 16.5.36, Common 14.0.25, WASM 7.5.17
2026-02-01 22:50:51 +03:00
pezkuwichain 94f91cf765 feat: add CoinGecko price logic with DOT-based fallback
- HEZ price: CoinGecko direct > DOT/3 > DEX pool
- PEZ price: CoinGecko direct > DOT/10 > DEX pool
- Added AuthorizeCall signed extension for blockchain connection
- Updated @pezkuwi packages to 16.5.22 and 14.0.13
2026-01-31 18:56:28 +03:00
pezkuwichain d37eacf4e0 fix: update @pezkuwi/api packages to 16.5.22 2026-01-31 18:27:51 +03:00
pezkuwichain 953188456c chore: update @pezkuwi packages to latest versions
- @pezkuwi/api: 16.5.18 (mainnet genesis hash fix)
- @pezkuwi/keyring: 14.0.13
- @pezkuwi/util: 14.0.13
- @pezkuwi/util-crypto: 14.0.13
- All other @pezkuwi packages updated accordingly
2026-01-31 08:18:52 +03:00
pezkuwichain 72d3b9204a feat: add Telegram mini app connect for P2P access 2026-01-29 21:27:13 +03:00
pezkuwichain 68a5b96bbd feat: smart extension detection - only redirect to Chrome Web Store if not installed 2026-01-29 15:09:28 +03:00
pezkuwichain 122a06fa08 fix: update vite and vite-plugin-node-polyfills to fix moderate vulnerabilities 2026-01-29 03:59:28 +03:00
pezkuwichain 62a21fa9be fix: remove telegram import from App.tsx 2026-01-29 03:47:40 +03:00
pezkuwichain 6da3c5b88c fix: remove telegram module (moved to separate repo) and fix ESLint
- Remove src/telegram/* (moved to pezkuwi-telegram-miniapp repo)
- Fix unused variable in process-withdraw Edge Function
2026-01-29 03:45:01 +03:00
pezkuwichain 7636d46c7d feat(p2p): OKX-level security upgrade with Edge Functions
- Add process-withdraw Edge Function for blockchain withdrawals
- Update verify-deposit Edge Function with @pezkuwi/api
- Add withdrawal limits (daily/monthly) and fee system
- Add hot wallet configuration with production address
- Add admin roles for dispute resolution
- Add COMBINED SQL migration with full P2P system
- Encrypt payment details with AES-256-GCM
- Prevent TX hash reuse with UNIQUE constraint
2026-01-29 03:12:02 +03:00