87 Commits

Author SHA1 Message Date
pezkuwichain 611a55599c ci: switch push workflow from debug to releaseMarket build 2026-02-22 18:11:43 +03:00
pezkuwichain ff19f88323 ci: run CodeQL on self-hosted runner (push only, not PRs) 2026-02-22 16:42:11 +03:00
pezkuwichain 652913da35 ci: mark CodeQL as non-blocking due to runner memory limits 2026-02-22 16:08:01 +03:00
pezkuwichain 8760a0b9da ci: add google-services.json setup to security workflow for CodeQL build 2026-02-22 05:44:03 +03:00
pezkuwichain 61451ca178 ci: fix security workflow - add secrets, install action, remove continue-on-error 2026-02-22 05:36:04 +03:00
pezkuwichain 31e0dcadb7 ci: use shared install action for code-quality workflow (NDK required) 2026-02-22 05:27:31 +03:00
pezkuwichain c794cbe5c4 ci: pass secrets to code-quality workflow and enforce ktlint 2026-02-22 05:25:24 +03:00
pezkuwichain b9fadbe6da fix: remove unused imports to pass ktlint 2026-02-22 05:15:10 +03:00
pezkuwichain 771c9c8877 feat: in-app citizenship application with referral system
- Add CitizenshipBottomSheet with form (name, father, grandfather, mother, tribe, region)
- Submit apply_for_citizenship extrinsic with referrer parameter to People Chain
- Query KYC status from IdentityKyc pallet and show appropriate UI state
- Referrer approval: query Referral + Applications entries, approve pending referrals
- Sign (confirm_citizenship) for applicants after referrer approval
- Share referral link for citizens to invite others
- Dashboard buttons adapt to citizenship status (hide Apply/Sign when approved)
- Balance check (1.1 HEZ) only before new applications, not for sign/approve
- i18n strings for en, tr, ku
2026-02-22 05:04:43 +03:00
pezkuwichain f6dc35b80e i18n: add missing Turkish translations, fix Kurdish action strings
Turkish: add Send, Receive, Buy, Sell, Swap, Bridge and related strings
Kurdish: translate Buy, Sell, Swap, Buy/Sell from English to Kurdish
2026-02-21 23:40:01 +03:00
pezkuwichain 11fd0a5d10 ci: copy PROD google-services.json to all release build types
releaseMarket and releaseGithub build types need their own copy
of the production google-services.json. Without this, the
google-services plugin falls back to the dev config in app/,
causing Google Sign-In to fail on release builds.
2026-02-21 23:07:15 +03:00
pezkuwichain 233d06da12 ci: use release Firebase credential for releaseMarket builds 2026-02-21 21:09:55 +03:00
pezkuwichain 11159e4ba9 ci: add release build support to Firebase distribution workflow
Support both develop and releaseMarket variants via build_variant
input. Release builds are signed with market_key and distributed
to testers for validation before Play Store upload.
2026-02-21 20:14:00 +03:00
pezkuwichain 7dbfc3b85e ci: use CREDENTIAL_FILE_CONTENT for Play Store upload 2026-02-21 19:42:01 +03:00
pezkuwichain 37829e30f0 style: fix ktlint no-multi-spaces violations in BridgeViewModel 2026-02-21 18:46:37 +03:00
pezkuwichain e06c5379dd config: remove staking endpoints from relay chain
Staking lives on Asset Hub, not relay chain. Remove staking and
staking-rewards SubQuery endpoints from relay chain config.
2026-02-21 18:17:02 +03:00
pezkuwichain 7f00c98359 fix: governance voting and default chain selection for Pezkuwi
Add pezpallet_* type paths to SiVoteTypeMapping so ConvictionVoting
vote encoding works on Pezkuwi chains. Set Pezkuwi relay as preferred
default chain for governance and crowdloan screens.
2026-02-20 05:16:04 +03:00
pezkuwichain eb2c6cda55 feat: add copy button to seed phrase backup screen
Allow users to copy their mnemonic phrase to clipboard from the manual
backup screen for easier migration to Welati Telegram mini app.
2026-02-20 05:15:47 +03:00
pezkuwichain 03075104b4 fix: reduce false positives in hardcoded secrets scan 2026-02-19 06:30:18 +03:00
pezkuwichain 3061555485 ci: add Code Quality and Security workflows (ktlint, CodeQL, secret scan) 2026-02-19 05:56:11 +03:00
pezkuwichain 6a16d0a04e config: update chains.json with governance-delegations endpoint 2026-02-19 01:43:27 +03:00
pezkuwichain 359cfb1eb3 fix: correct Welati counter URL to telegram.pezkiwi.app 2026-02-18 07:01:20 +03:00
pezkuwichain 326aa869ed fix: update Welati counter URL to telegram.pezkuwi.app/kurds 2026-02-18 06:58:09 +03:00
pezkuwichain 533aa9e831 feat: replace dashboard image with Welati counter (Hejmara Kurd Le Cihane)
Remove telegram_welcome image from dashboard card, add live Welati
citizen count fetched from kurds-counter API endpoint. Shows formatted
count with "Hejmara Kurd Le Cihane" label in green.
2026-02-18 06:52:01 +03:00
pezkuwichain d7f515aab2 config: update AH SubQuery URL to dedicated endpoint
Asset Hub staking/history/rewards queries now use
subquery.pezkuwichain.io/assethub for correct schema routing
2026-02-18 04:10:13 +03:00
pezkuwichain 14519d7818 Fix Polkadot staking, add USDT bridge, update dashboard card
- Restore staking module to Nova upstream (fix Polkadot ACTIVE/shimmer)
- Add USDT(DOT) <-> USDT(HEZ) bridge option to Buy/Sell screen
- Dashboard card: add telegram_welcome image, info text, Non-Citizen role
- Add non-citizen info text to all 12 locale files
- Simplify ComputationalCache (remove stale scope recreation)
2026-02-18 02:43:53 +03:00
pezkuwichain 9c7bb7c6e9 Prepare for Play Store release: simplify dashboard, clean debug logs
- Simplify dashboard card: remove referral/staking/perwerde fields (not yet on-chain), keep roles + trust score + action button
- Remove all debug Log.d/e/w calls added during development (PEZ_STAKE, RuntimeFactory, ExtrinsicBuilder, etc.)
- Change Play Store track from beta to production
- Add release notes (whatsnew-en-US)
2026-02-17 06:13:59 +03:00
pezkuwichain 93e94cbf15 feat: add Pezkuwi Dashboard card with live People Chain data
- Dashboard card on Assets page showing roles, trust score, referral,
  staking, and perwerde points from People Chain pallets
- Repository queries: Tiki, Trust, Referral, StakingScore, Perwerde
- CachedStakingDetails double map query (RelayChain + AssetHub sources)
- Full i18n support across all 15 locales including new Turkish locale
- "Apply & Actions" button opens Telegram bot
- Staking improvements for split ecosystem multi-endpoint stats
2026-02-17 00:10:23 +03:00
pezkuwichain 9899bb5c40 feat: multi-endpoint staking stats for split ecosystems 2026-02-16 06:16:26 +03:00
pezkuwichain 0a95d04e45 update Pezkuwi genesis hashes for mainnet relaunch
Update all hardcoded chain IDs across XCM, runtime, and wallet modules
to match the new mainnet genesis hashes.
2026-02-15 22:26:12 +03:00
pezkuwichain fa17968108 fix: resolve parentId for Asset Hub staking to relay chain
ValidatorProvider, DirectStakingProperties, and DirectStakingRecommendation
were querying Asset Hub chainId for staking data (validators, exposures,
minStake, maxNominations) but these live on the relay chain. Added
chain.parentId resolution so parachain staking correctly routes to relay.

Also:
- Add VoterBagsList pallet support (Pezkuwi naming)
- Wrap BagListRepository queries in runCatching for binding compat
- Remove debug logging
2026-02-15 22:25:48 +03:00
pezkuwichain ffae9159fe fix: wrap long log line to satisfy ktlint max-line-length 2026-02-14 18:32:09 +03:00
pezkuwichain f253686d10 fix: nomination pool exposure queries route to relay chain, graceful pending_rewards fallback
- StakeSummary and Alerts interactors now query elected exposures from
  relay chain (parentId) instead of parachain for correct staking status
- Pending rewards flow catches missing NominationPoolsApi and emits zero
- Update Telegram link to @pezkuwichainBot
2026-02-14 11:38:44 +03:00
pezkuwichain c461e61895 fix: resolve staking reward calculation for parachain (Asset Hub)
- Use remote RPC instead of local storage for era/exposure queries
- Resolve relay chain via parentId for exposure, totalIssuance, and parachains
- Remove StorageCache dependency, detect paged exposures via runtime metadata
- Add StakingRepository to NominationPoolRewardCalculatorFactory for direct queries
- Use storageOrNull for null-safety on chains without Paras pallet
2026-02-14 05:38:47 +03:00
pezkuwichain 921e6de224 prepare release: staking config, proguard fixes, icons and build cleanup
- Add subquery endpoints for staking-rewards, history, staking APIs
- Add identityChain, stakingWiki, pushSupport to chain config
- Remove versionNameSuffix/applicationIdSuffix from releaseMarket build
- Fix privacy/terms URLs to use .html extension
- Strengthen proguard rules for Retrofit, SR25519, Substrate SDK,
  WalletConnect, Google Drive, Navigation and crypto classes
- Update launcher icons for debug and release variants
2026-02-13 06:45:30 +03:00
pezkuwichain ec250adb07 fix: revert incompatible dependency updates, keep security improvements
- Reverted Navigation to 2.3.1 (2.7.7 has breaking API changes)
- Reverted Lifecycle to 2.2.0 (2.7.0 has breaking API changes)
- Reverted BouncyCastle to 1.70/jdk15on (1.77/jdk18on causes conflicts)
- Kept: OkHttp 4.12.0, Gson 2.10.1, ConstraintLayout 2.1.4
- Kept: minifyEnabled=true, ProGuard rules, Branch.io security
2026-02-12 05:30:22 +03:00
pezkuwichain a294aa1a6b Initial commit: Pezkuwi Wallet Android
Security hardened release:
- Code obfuscation enabled (minifyEnabled=true, shrinkResources=true)
- Sensitive files excluded (google-services.json, keystores)
- Branch.io key moved to BuildConfig placeholder
- Updated dependencies: OkHttp 4.12.0, Gson 2.10.1, BouncyCastle 1.77
- Comprehensive ProGuard rules for crypto wallet
- Navigation 2.7.7, Lifecycle 2.7.0, ConstraintLayout 2.1.4
2026-02-12 05:19:41 +03:00