Commit Graph

131 Commits

Author SHA1 Message Date
pezkuwichain a31770aabe fix: resolve eslint no-explicit-any in PEZ treasury query 2026-02-18 06:01:42 +03:00
pezkuwichain 65bc266841 fix: correct trust score divisor to 10000 and show both relay+PEZ treasury balances 2026-02-18 05:45:33 +03:00
pezkuwichain da8abecaca fix: replace mock governance data with live chain queries and fix trust score formulas 2026-02-18 05:04:01 +03:00
pezkuwichain 676d0415c0 fix: reduce hero stat card font size to prevent text overflow 2026-02-17 16:50:32 +03:00
pezkuwichain 6d70a2793a fix: hero stats - format staked tokens, real trust score, active-only proposals 2026-02-17 03:11:21 +03:00
pezkuwichain 226e997723 feat: staking score 3-state model and noter integration 2026-02-17 01:32:54 +03:00
pezkuwichain 631eaa5a4c fix: rename Trust Score to Referral Score, merge invitations list 2026-02-16 04:31:31 +03:00
pezkuwichain 3168144ff8 fix: remove unused FOUNDER_ADDRESS import 2026-02-16 04:07:59 +03:00
pezkuwichain 6c9fb35d5a fix: hide hero background image on mobile, improve responsive sizing 2026-02-16 03:19:53 +03:00
pezkuwichain e9d5fef39a fix: rewrite citizenship workflow to referral-based model
- Replace governance-based KYC with trustless referral workflow
- New 3-step flow: applyForCitizenship -> approveReferral -> confirmCitizenship
- Fix FOUNDER_ADDRESS (was Alice test address)
- Use applications storage instead of legacy pendingKycApplications
- Add approveReferral, cancelApplication, confirmCitizenship functions
- Rewrite KycApprovalTab as referrer approval panel (no governance)
- Fix InviteUserModal to use peopleApi for referral pallet
- Add pending approvals section to ReferralDashboard
2026-02-16 02:56:27 +03:00
pezkuwichain e9f01685d0 fix: broken image paths and staking signer reconnect 2026-02-16 01:30:21 +03:00
pezkuwichain 6a7fb4d857 feat: align frontend scoring with People Chain pallet queries
- Update staking score/tracking calls from relayApi to peopleApi
- Fix referral score to use on-chain tiered scoring with penalties
- Fix perwerde score to query studentCourses + enrollments storage
- Update Dashboard and StakingDashboard for People Chain API
2026-02-13 20:13:55 +03:00
pezkuwichain 37e47b7a73 fix: fix Zagros endpoints, hide PEZ Rewards when pallet unavailable
- Remove Asset Hub and People Chain endpoints from Zagros/Development config (relay chain only)
- Default network now always mainnet
- PEZ Rewards card only renders when pallet is available on chain
- Dynamic grid layout when PEZ Rewards card is hidden
2026-02-13 18:11:24 +03:00
pezkuwichain 167a7aff4e feat(pez-rewards): align frontend with blockchain pallet storage queries
- Fix storage query names: getCurrentEpochInfo, epochStatus, getUserTrustScoreForEpoch, getClaimedReward, getEpochRewardPool
- Add recordTrustScore() and claimPezReward() extrinsic functions
- Add EpochStatus type and epoch status display (Open/ClaimPeriod/Closed)
- Move PezRewardInfo and getPezRewards from staking.ts to scores.ts
- Add PEZ Rewards error/success messages to error-handler.ts
- Add PEZ Rewards card with Record/Claim to Dashboard, Wallet, and Staking pages
- Add recordTrustScore to TransactionHistory tracking
2026-02-13 17:37:10 +03:00
pezkuwichain fbd53b9960 refactor(scores): remove frontend fallback, read all scores from blockchain
Remove all frontend staking/trust score calculation and localStorage
fallback code. All scores now read directly from People Chain pallets
(pezpallet-trust, pezpallet-referral, pezpallet-tiki). Trust pallet
computes composite score on-chain.
2026-02-13 03:14:57 +03:00
pezkuwichain 6010ace1b0 fix(mobile): comprehensive mobile UI redesign for better UX
- Header: icon-only wallet button on mobile, fix hamburger overflow
- Dashboard: responsive tabs with flex-wrap and smaller text
- Citizens: responsive ID card layout, stack NFT badges on mobile
- BeCitizen: stack header buttons vertically on mobile
- GovernanceInterface: add scrollable tabs
- DEXDashboard: responsive admin buttons grid (2 cols on mobile)
- P2PDashboard: responsive header and scrollable tabs
- Dialog: mobile-first sizing with proper padding and max-height
- Tabs UI: base responsive classes for all tab components
- Add xs:480px breakpoint and scrollbar-hide utility
- Fix vite polyfills config to prevent initialization errors
2026-02-11 02:14:32 +03:00
pezkuwichain 3fc4d685ae refactor: remove WalletConnect, add mobile menu with wallet button
- Remove WalletConnectModal component (WalletConnect not ready)
- Restore PezkuwiWalletButton for extension-only connection
- Hide logo on mobile to save header space
- Add hamburger menu for mobile navigation
2026-02-11 01:14:38 +03:00
pezkuwichain e6720a489b feat: add wallet connection options and mobile navigation
- New WalletConnectModal with Extension/WalletConnect options
- Mobile detection: shows only Pezkuwi Wallet on mobile
- Deep link support for pezkuwiwallet:// scheme
- Hamburger menu for mobile navigation
- Full mobile menu with all navigation items
2026-02-11 00:41:45 +03:00
pezkuwichain cb00407a26 fix: remove unused variables (lint errors) 2026-02-10 18:14:33 +03:00
pezkuwichain e53be65975 fix: use People Chain API for tiki and identityKyc pallets
- DashboardContext: query tiki/kyc from peopleApi instead of relay api
- KycApprovalTab: use peopleApi for identityKyc.pendingKycApplications
- NewCitizenApplication: all KYC operations now use People Chain

These pallets are on People Chain, not Relay Chain. This fixes the
"mafe te tuneye" error when accessing Citizens portal.
2026-02-10 18:09:26 +03:00
pezkuwichain 91070435d5 feat: add frontend fallback for staking and trust scores
Until runtime upgrade is deployed, calculate scores on frontend:

shared/lib/scores.ts:
- getFrontendStakingScore: Read stake from Relay Chain, track in localStorage
- getFrontendTrustScore: Calculate using pallet formula
- getAllScoresWithFallback: Combined score fetching with fallback

Formula (matching pezpallet-trust):
- weighted_sum = staking*100 + referral*300 + perwerde*300 + tiki*300
- trust_score = (staking * weighted_sum) / 100

Components updated:
- AccountBalance.tsx: Use getAllScoresWithFallback
- HeroSection.tsx: Use getTrustScoreWithFallback
2026-02-07 00:44:04 +03:00
pezkuwichain 789920ed80 fix: query pezRewards and stakingScore from People Chain
- pezRewards pallet is on People Chain, not Relay Chain
- stakingScore pallet is also on People Chain
- Update getStakingInfo to accept optional peopleApi parameter
- Update StakingDashboard to pass peopleApi
2026-02-06 21:28:56 +03:00
pezkuwichain 9865e32658 feat: add LP staking score and DOT/ETH/BTC tokens 2026-02-06 20:01:12 +03:00
pezkuwichain f5938e2847 fix: dynamic token dropdown based on available pools, add PEZ token 2026-02-06 19:30:33 +03:00
pezkuwichain 0b2a3feba8 fix: use People Chain API for citizen verification, improve input UI 2026-02-06 19:21:49 +03:00
pezkuwichain 99ef70dfb7 fix: make LP stake button always visible with contrasting colors 2026-02-06 16:06:51 +03:00
pezkuwichain b91f897a2d feat: add LP token staking with duration selection 2026-02-06 15:56:14 +03:00
pezkuwichain 55aeb909c6 feat: add LP staking UI for reward pools 2026-02-06 14:54:41 +03:00
pezkuwichain d5b4e3b711 Revert "feat: add LP staking modal and reward pools creation script"
This reverts commit 1d77be9a27.
2026-02-06 14:47:08 +03:00
pezkuwichain 1d77be9a27 feat: add LP staking modal and reward pools creation script 2026-02-06 14:46:11 +03:00
pezkuwichain 05f50d622e fix: check both assets and poolAssets pallets for LP tokens, use getReserves API 2026-02-06 14:34:08 +03:00
pezkuwichain 50933209da fix: remove unused variable lint errors 2026-02-06 14:22:54 +03:00
pezkuwichain 6a70414e4c fix: use pool reserves ratio for liquidity calculation instead of swap quotes 2026-02-06 14:17:23 +03:00
pezkuwichain 1656a4bec3 fix: calculate minimum deposits based on pool ratio for Add Liquidity 2026-02-06 13:39:39 +03:00
pezkuwichain 4373d37adb fix: fetch DOT/ETH/BTC balances from Asset Hub for Add Liquidity modal 2026-02-06 13:19:32 +03:00
pezkuwichain 22a6aaedd3 fix: verify asset exists on blockchain before displaying in Other Assets 2026-02-06 11:50:27 +03:00
pezkuwichain 9c8464efa3 fix: exclude old USDT (asset #3) from Other Assets 2026-02-06 11:45:46 +03:00
pezkuwichain e36f0cb664 fix: exclude core tokens from Other Assets using hardcoded IDs 2026-02-06 11:38:13 +03:00
pezkuwichain 042d298426 fix: use Asset Hub API for custom tokens instead of relay chain 2026-02-06 11:32:45 +03:00
pezkuwichain 6ad5e151ea feat: reorganize wallet dashboard and add blockchain token lookup
- Move Recent Activity and NFTs to left column
- Move token balances to right column under action buttons
- Add Token modal now fetches asset info from blockchain
- Shows symbol, name, decimals before adding
- Search by asset ID with Enter key support
2026-02-06 11:26:25 +03:00
pezkuwichain 51976e0e2d fix: add DOT, ETH, BTC support in liquidity modals 2026-02-06 11:13:24 +03:00
pezkuwichain 5749f9a379 feat: add HEZ/DOT pool support and fix user-facing token names
- Add HEZ/DOT pool to PoolDashboard
- Display DOT, ETH, BTC instead of wDOT, wETH, wBTC to users
- Update priceOracle with correct symbol mappings
- Fix lint errors in check_all_pools.mjs
- Extract MINTABLE_ASSETS to separate file for fast refresh
2026-02-06 11:06:28 +03:00
pezkuwichain 269e963a4d feat: implement hybrid oracle AMM with CoinGecko prices
- Add priceOracle service for fetching CoinGecko prices
- Update SwapInterface to use oracle prices instead of pool reserves
- All swaps route through USDT as base currency
- Multi-hop routing for non-USDT pairs (X → USDT → Y)
- Display real-time USD prices from CoinGecko
- Auto-refresh prices every 30 seconds
2026-02-06 10:41:52 +03:00
pezkuwichain 742c3353d2 fix: remove unused events parameter in MintAssetModal 2026-02-06 10:18:08 +03:00
pezkuwichain 2756450222 feat: add wDOT, wETH, wBTC mint functionality to DEX admin panel 2026-02-06 10:10:52 +03:00
pezkuwichain 00ab3793fe fix: fetch collators from parachains and restrict CORS to production domains
- NetworkStats now queries Asset Hub and People Chain for collator data
  instead of relay chain (where collatorSelection doesn't exist)
- Restrict Edge Functions CORS to app.pezkuwichain.io domains only
- Add Access-Control-Allow-Credentials header for secure cross-origin requests
2026-02-06 06:00:01 +03:00
pezkuwichain f09950c22d fix: add decimal correction factor to PoolDashboard reserves
Same fix as TokenSwap - HEZ-USDT pool needs 1000x factor
due to mixed decimals (12 vs 6)
2026-02-05 02:26:25 +03:00
pezkuwichain cef46b373b 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 1a82323cd4 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 e342e959f5 fix: add eslint-disable for runtime API any types 2026-02-05 01:41:19 +03:00