Commit Graph

32 Commits

Author SHA1 Message Date
pezkuwichain 7b58fa0e4a feat: add AH GraphQL engine + block handler for pool stakers init
- Add handleBlock to query live chain state for existing pool members
- Add second GraphQL engine container for Asset Hub schema (port 3001)
- Register block handler in pezkuwi-assethub.yaml
2026-02-18 04:07:45 +03:00
pezkuwichain 1c79402d5c feat: track nomination pool members as active stakers
Add handlePoolBonded/handlePoolUnbonded handlers to Asset Hub SubQuery.
When a user bonds to a nomination pool, they are saved as an ActiveStaker
with networkId=AssetHub and stakingType=nomination-pool. This fixes the
wallet showing INACTIVE for HEZ stakers.
2026-02-18 03:14:44 +03:00
pezkuwichain 407cba9aef fix: noter bot RPC endpoints point to VPS3 chain nodes 2026-02-17 01:55:05 +03:00
pezkuwichain 64c5f9e5d6 feat: add noter secret setup script 2026-02-17 01:35:02 +03:00
pezkuwichain 174bd41d6e feat: add noter bot service for staking score data submission 2026-02-17 01:32:51 +03:00
pezkuwichain eefae7469d Update genesis hashes and startBlock for mainnet relaunch
- Relay chain: 0xbb4a61ab... -> 0x1aa94987...
- Asset Hub: 0x00d0e1d0... -> 0xe7c15092...
- Reset startBlock to 1 for full re-index from genesis
2026-02-15 22:18:07 +03:00
pezkuwichain 8f051d719a Fix prettier formatting 2026-02-14 04:45:15 +03:00
pezkuwichain 9ca7f8d00f Add TZ=UTC to SubQuery node environments 2026-02-14 04:37:14 +03:00
pezkuwichain a8b7d16b97 Patch api-augment exports map instead of filesystem shim
Node.js checks package.json exports before filesystem, so the
mkdir+echo shim didn't work. Now patches the exports map with
node -e to add ./substrate pointing to pezkuwi augmentation.
2026-02-14 04:33:32 +03:00
pezkuwichain 01ec544b84 Add rpc-augment alias and substrate shim to Dockerfile.node
- Add missing @polkadot/rpc-augment alias to @pezkuwi/rpc-augment
- Create substrate shim for @polkadot/api-augment/substrate that
  re-exports @pezkuwi/api-augment's pezkuwi augmentation, fixing
  ERR_PACKAGE_PATH_NOT_EXPORTED when @subql/node requires it
2026-02-14 04:27:04 +03:00
pezkuwichain 43e4a5d939 Use custom Dockerfile.node with @pezkuwi API aliases instead of generic subql-node 2026-02-14 04:15:57 +03:00
pezkuwichain dd2c3c7d1b Lower relay startBlock to 199000 to capture StakersElected event 2026-02-14 03:32:37 +03:00
pezkuwichain 6123284d95 Lower relay startBlock to 199500 to capture era 6 transition 2026-02-14 03:22:00 +03:00
pezkuwichain 433553e4d0 Set Asset Hub startBlock closer to head for pruned RPC 2026-02-14 02:54:47 +03:00
pezkuwichain a4b711f7b4 Update startBlock to recent values for pruned RPC compatibility 2026-02-14 02:47:03 +03:00
pezkuwichain 04f0042e0d Add explicit --db-schema to separate relay and assethub schemas 2026-02-14 02:41:23 +03:00
pezkuwichain 076b54bdc9 Add multi-staking entities, APY calculation, Asset Hub indexer support
- Add StakingApy, ActiveStaker, Reward entities to schema.graphql
- Add APY calculation engine in NewEra.ts (inflation curve + validator commission)
- Add saveMultiStakingReward to Rewards.ts and PoolRewards.ts
- Add handleAssetTransfer for assets.Transferred events
- Add constants.ts with genesis hashes and inflation params
- Add docker-compose.prod.yml for production deployment (relay + assethub nodes)
- Add deploy-vps.yml GitHub Actions workflow for auto-deploy on push
2026-02-14 02:38:22 +03:00
pezkuwichain 9922e8ba89 Fix query service schema and set startBlock for pruned RPC
- Change query service --name=app to --name=project to match node schema
- Set startBlock to 185900 (RPC endpoints are pruned, no archive available)
2026-02-13 02:51:44 +03:00
pezkuwichain 74e29b92f4 Use standard onfinality/subql-node - chainTypes handles Pezkuwi recognition 2026-02-13 02:32:14 +03:00
pezkuwichain a18cb0019e Fix wasm-crypto package versions (7.5.x) 2026-02-13 02:28:15 +03:00
pezkuwichain dcf901660a Add wasm-crypto packages to SubQuery node aliases 2026-02-13 02:27:09 +03:00
pezkuwichain 30899df0a4 Add self-hosted SubQuery node with @pezkuwi aliases
- Custom Dockerfile.node that aliases @polkadot/* to @pezkuwi/* packages
- Updated docker-compose.yml to build custom node image
- Added chainTypes/pezkuwi.json with Pezkuwi type definitions
- Updated pezkuwi.yaml manifest with chaintypes reference
- Added @subql/common-substrate dependency

This allows running SubQuery node with Pezkuwi chain recognition
instead of showing "Unknown Network" error.
2026-02-13 02:17:48 +03:00
pezkuwichain 0b0519bff8 Add codegen step to security workflow and fix prettier formatting 2026-02-13 01:51:37 +03:00
pezkuwichain 62550b442b Fix subql CLI syntax and remove non-existent validate command 2026-02-13 01:48:50 +03:00
pezkuwichain 15eeb16cd4 Fix subql commands: use correct CLI syntax for codegen and build 2026-02-13 01:46:08 +03:00
pezkuwichain 618cea47c6 Specify manifest file (-f pezkuwi.yaml) in CI workflows 2026-02-13 01:44:24 +03:00
pezkuwichain 4c3920ddae Fix CI workflows to use Yarn 4 (Berry) with corepack
- Add packageManager field to package.json for corepack
- Add .yarnrc.yml with node-modules linker
- Update all workflows to use corepack enable + yarn --immutable
- Remove yarn cache from actions/setup-node (incompatible with Yarn 4)
2026-02-13 01:42:00 +03:00
pezkuwichain 46ca19c22d Add security and code quality GitHub Actions workflows
Security workflow includes:
- CodeQL static analysis for TypeScript vulnerabilities
- npm audit for dependency vulnerabilities (fails on critical)
- Dependency review on PRs (blocks high severity, GPL licenses)
- TruffleHog secret scanning
- Weekly scheduled security scans

Code quality workflow includes:
- ESLint linting checks
- Prettier formatting validation
- TypeScript strict type checking
- Cyclomatic complexity analysis (warns on >15)
- Duplicate code detection with jscpd
2026-02-13 01:37:31 +03:00
pezkuwichain 2f1d6dd316 Migrate to native @pezkuwi packages and remove swap integrations
Replace npm aliases (@polkadot -> @pezkuwi) with direct @pezkuwi package
imports. Add tsconfig path mappings to redirect @polkadot type references
from @subql/types to @pezkuwi equivalents, enabling proper type resolution
without installing @polkadot packages. Remove Polkadot ecosystem swap/bridge
integrations (HydraDx, AssetConversion) as they're incompatible with Pezkuwi.
2026-02-13 01:36:52 +03:00
pezkuwichain ab2a8acb6d Use @pezkuwi/api via npm alias instead of @polkadot/api 2026-02-13 00:22:24 +03:00
pezkuwichain ea0ba21359 Add GitHub Actions workflows for CI and deploy 2026-02-12 23:55:56 +03:00
pezkuwichain 0812cf9e7a Initial commit: Pezkuwi SubQuery indexer
- pezkuwi.yaml: Relay chain staking indexer (rewards, slashes, pools, transfers, era info)
- pezkuwi-assethub.yaml: Asset Hub indexer (NominationPools, asset transfers)
- GraphQL schema for staking data entities
- Handler mappings from Nova SubQuery base
2026-02-12 23:55:13 +03:00