You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains 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
This PR aims to setup the foundation for using subquery.
The main sub query that has been working the most on is in indexers/gemini-3g/testnet-rewards
There is also sub query project to reproduce the setup we had previously, but these are not completed (in term of logic)
PR Type
enhancement
Description
Added comprehensive type definitions and structures for blockchain entities and events in indexers/gemini-3h/consensus/src/typegens/v1.ts.
Introduced event types for balance-related operations in indexers/gemini-3h/consensus/src/typegens/balances/events.ts.
Enhanced the setup for multi-network and multi-indexer configurations.
Improved Docker Compose setup for better environment management.
Added Hasura metadata and logging configurations.
Changes walkthrough 📝
Relevant files
Enhancement
2 files
v1.ts
Add comprehensive blockchain type definitions and structures
indexers/gemini-3h/consensus/src/typegens/v1.ts
Added a comprehensive set of type definitions for various blockchain-related entities and events.
Defined types for events, transactions, and domain-specific logic.
Introduced structures for handling blockchain operations and errors.
Implemented enums and interfaces for managing blockchain state and transitions.
Complexity and Size The file introduces a large number of storage types and interfaces, making it extremely large and complex. This could lead to maintenance challenges and increase the risk of bugs. Consider breaking down the file into smaller, more manageable components.
Complexity and Size Similar to the domains/storage.ts file, this file is also very large and complex due to the numerous storage types and interfaces defined. Splitting this into smaller units could improve readability and maintainability.
Hardcoded Values The project configuration uses environment variables directly within the code, which might not be ideal for different deployment environments or for open-source sharing. Consider using a configuration management approach.
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.
User description
Migrate to sub query
This PR aims to setup the foundation for using subquery.
The main sub query that has been working the most on is in indexers/gemini-3g/testnet-rewards
There is also sub query project to reproduce the setup we had previously, but these are not completed (in term of logic)
PR Type
enhancement
Description
indexers/gemini-3h/consensus/src/typegens/v1.ts
.indexers/gemini-3h/consensus/src/typegens/balances/events.ts
.Changes walkthrough 📝
2 files
v1.ts
Add comprehensive blockchain type definitions and structures
indexers/gemini-3h/consensus/src/typegens/v1.ts
blockchain-related entities and events.
transitions.
events.ts
Add event types for balance operations
indexers/gemini-3h/consensus/src/typegens/balances/events.ts
176 files
v0.ts
...
indexers/gemini-3h/consensus/src/typegens/v0.ts
...
v5.ts
...
indexers/gemini-3h/consensus/src/typegens/v5.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/domains/storage.ts
...
v3.ts
...
indexers/gemini-3h/consensus/src/typegens/v3.ts
...
mappingHandlers.ts
...
indexers/gemini-3h/staking/src/mappings/mappingHandlers.ts
...
mappingHandlers.ts
...
indexers/gemini-3h/leaderboard/src/mappings/mappingHandlers.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/messenger/storage.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/system/storage.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/subspace/storage.ts
...
mappingHandlers.ts
...
indexers/gemini-3g/testnet-rewards/src/mappings/mappingHandlers.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/balances/storage.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/transporter/storage.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/utility/calls.ts
...
mappingHandlers.ts
...
indexers/gemini-3h/consensus/src/mappings/mappingHandlers.ts
...
db.ts
...
indexers/gemini-3g/testnet-rewards/src/mappings/db.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/domains/calls.ts
...
project.ts
...
indexers/gemini-3h/staking/project.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/domains/events.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/offences-subspace/storage.ts
...
bootstrap.ts
...
indexers/gemini-3g/testnet-rewards/src/scripts/bootstrap.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/domains/constants.ts
...
project.ts
...
indexers/gemini-3h/leaderboard/project.ts
...
project.ts
...
indexers/gemini-3g/testnet-rewards/project.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/subspace/constants.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/sudo/calls.ts
...
support.ts
...
indexers/gemini-3h/consensus/src/typegens/support.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/messenger/calls.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/transaction-fees/storage.ts
...
project.ts
...
indexers/gemini-3h/accounts/project.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/messenger/events.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/system/calls.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/balances/calls.ts
...
mappingHandlers.ts
...
indexers/gemini-3h/accounts/src/mappings/mappingHandlers.ts
...
utils.ts
...
indexers/gemini-3g/testnet-rewards/src/mappings/utils.ts
...
campaign.ts
...
indexers/gemini-3g/testnet-rewards/src/constants/campaign.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/rewards/storage.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/mmr/storage.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/runtime-configs/storage.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/transporter/events.ts
...
project.ts
...
indexers/gemini-3h/consensus/project.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/subspace/calls.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/system/events.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/vesting/storage.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/utility/events.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/balances/constants.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/sudo/events.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/system/constants.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/subspace-mmr/storage.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/rewards/constants.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/runtime-configs/calls.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/vesting/calls.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/transaction-payment/constants.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/timestamp/storage.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/transaction-fees/events.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/vesting/events.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/transaction-fees/constants.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/transaction-payment/storage.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/subspace/events.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/rewards/events.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/storage.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/messenger/constants.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/rewards/calls.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/offences-subspace/events.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/transaction-payment/events.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/timestamp/constants.ts
...
events.ts
...
indexers/gemini-3h/consensus/src/typegens/events.ts
...
storage.ts
...
indexers/gemini-3h/consensus/src/typegens/sudo/storage.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/calls.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/constants.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/transporter/calls.ts
...
calls.ts
...
indexers/gemini-3h/consensus/src/typegens/timestamp/calls.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/vesting/constants.ts
...
constants.ts
...
indexers/gemini-3h/consensus/src/typegens/utility/constants.ts
...
index.ts
...
indexers/gemini-3h/consensus/src/typegens/index.ts
...
index.ts
...
indexers/gemini-3g/testnet-rewards/src/index.ts
...
index.ts
...
indexers/gemini-3h/consensus/src/index.ts
...
index.ts
...
indexers/gemini-3h/leaderboard/src/index.ts
...
index.ts
...
indexers/gemini-3h/staking/src/index.ts
...
index.ts
...
indexers/gemini-3h/accounts/src/index.ts
...
gemini3h.jsonl
...
indexers/gemini-3h/consensus/gemini3h.jsonl
...
schema.graphql
...
indexers/gemini-3h/staking/schema.graphql
...
docker-compose.yml
...
docker-compose.yml
...
schema.graphql
...
indexers/gemini-3h/leaderboard/schema.graphql
...
schema.graphql
...
indexers/gemini-3g/testnet-rewards/schema.graphql
...
schema.graphql
...
indexers/gemini-3h/consensus/schema.graphql
...
package.json
...
indexers/gemini-3h/consensus/package.json
...
package.json
...
indexers/gemini-3g/testnet-rewards/package.json
...
README.md
...
indexers/gemini-3h/README.md
...
databases.yaml
...
indexers/db/metadata/databases/databases.yaml
...
package.json
...
indexers/gemini-3h/leaderboard/package.json
...
package.json
...
indexers/gemini-3h/staking/package.json
...
package.json
...
indexers/gemini-3h/accounts/package.json
...
tables.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/tables.yaml
...
README.md
...
indexers/gemini-3h/staking/README.md
...
README.md
...
indexers/gemini-3g/testnet-rewards/README.md
...
README.md
...
indexers/gemini-3h/consensus/README.md
...
README.md
...
indexers/gemini-3h/leaderboard/README.md
...
.env
...
.env
...
README.md
...
indexers/gemini-3h/accounts/README.md
...
docker-compose.prod.yml
...
docker-compose.prod.yml
...
README.md
...
README.md
...
init-db.sql
...
indexers/db/docker-entrypoint-initdb.d/init-db.sql
...
LICENSE
...
indexers/gemini-3g/testnet-rewards/LICENSE
...
LICENSE
...
indexers/gemini-3h/consensus/LICENSE
...
LICENSE
...
indexers/gemini-3h/leaderboard/LICENSE
...
LICENSE
...
indexers/gemini-3h/staking/LICENSE
...
LICENSE
...
indexers/gemini-3h/accounts/LICENSE
...
package.json
...
indexers/package.json
...
schema.graphql
...
indexers/gemini-3h/accounts/schema.graphql
...
tables.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/tables.yaml
...
astral.code-workspace
...
.vscode/astral.code-workspace
...
tsconfig.json
...
indexers/gemini-3g/testnet-rewards/tsconfig.json
...
tsconfig.json
...
indexers/gemini-3h/consensus/tsconfig.json
...
tsconfig.json
...
indexers/gemini-3h/leaderboard/tsconfig.json
...
tsconfig.json
...
indexers/gemini-3h/staking/tsconfig.json
...
tsconfig.json
...
indexers/gemini-3h/accounts/tsconfig.json
...
tables.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/tables.yaml
...
.env.develop
...
indexers/gemini-3h/consensus/.env.develop
...
.env.develop
...
indexers/gemini-3h/leaderboard/.env.develop
...
.env.develop
...
indexers/gemini-3h/staking/.env.develop
...
.env.develop
...
indexers/gemini-3h/accounts/.env.develop
...
.env.develop
...
indexers/gemini-3g/testnet-rewards/.env.develop
...
lerna.json
...
indexers/lerna.json
...
typegen.json
...
indexers/gemini-3h/consensus/typegen.json
...
tables.yaml
...
indexers/db/metadata/databases/gemini_3h_consensus/tables/tables.yaml
...
gemini_3h_leaderboard_nominator_deposits_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_nominator_deposits_total_counts.yaml
...
gemini_3h_leaderboard_nominator_deposits_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_nominator_deposits_total_values.yaml
...
gemini_3h_leaderboard_nominator_withdrawals_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_nominator_withdrawals_total_counts.yaml
...
gemini_3h_leaderboard_farmer_vote_and_block_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_farmer_vote_and_block_total_counts.yaml
...
gemini_3h_leaderboard_farmer_vote_and_block_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_farmer_vote_and_block_total_values.yaml
...
gemini_3h_leaderboard_account_extrinsic_failed_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_extrinsic_failed_total_counts.yaml
...
gemini_3h_leaderboard_account_extrinsic_success_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_extrinsic_success_total_counts.yaml
...
gemini_3h_leaderboard_account_transaction_fee_paid_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_transaction_fee_paid_total_values.yaml
...
gemini_3h_leaderboard_operator_deposits_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_operator_deposits_total_counts.yaml
...
gemini_3h_leaderboard_operator_deposits_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_operator_deposits_total_values.yaml
...
gemini_3h_leaderboard_operator_total_rewards_collecteds.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_operator_total_rewards_collecteds.yaml
...
gemini_3h_leaderboard_operator_total_tax_collecteds.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_operator_total_tax_collecteds.yaml
...
gemini_3h_leaderboard_operator_withdrawals_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_operator_withdrawals_total_counts.yaml
...
gemini_3g_testnet_rewards_account_per_campaigns.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_account_per_campaigns.yaml
...
gemini_3g_testnet_rewards_nominator_deposit_states.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_nominator_deposit_states.yaml
...
gemini_3g_testnet_rewards_total_earnings.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_total_earnings.yaml
...
gemini_3h_leaderboard_account_extrinsic_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_extrinsic_total_counts.yaml
...
gemini_3h_leaderboard_account_transfer_receiver_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_transfer_receiver_total_counts.yaml
...
gemini_3h_leaderboard_account_transfer_receiver_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_transfer_receiver_total_values.yaml
...
gemini_3h_leaderboard_account_transfer_sender_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_transfer_sender_total_counts.yaml
...
gemini_3h_leaderboard_account_transfer_sender_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_transfer_sender_total_values.yaml
...
gemini_3g_testnet_rewards_nominator_rewards.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_nominator_rewards.yaml
...
gemini_3h_leaderboard_farmer_block_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_farmer_block_total_counts.yaml
...
gemini_3h_leaderboard_farmer_block_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_farmer_block_total_values.yaml
...
gemini_3h_leaderboard_farmer_vote_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_farmer_vote_total_counts.yaml
...
gemini_3h_leaderboard_farmer_vote_total_values.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_farmer_vote_total_values.yaml
...
gemini_3g_testnet_rewards_nominators.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_nominators.yaml
...
gemini_3h_leaderboard_account_remark_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_account_remark_counts.yaml
...
gemini_3h_leaderboard_operator_bundle_total_counts.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard_operator_bundle_total_counts.yaml
...
gemini_3h_staking_stats_per_operators.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_stats_per_operators.yaml
...
gemini_3g_testnet_rewards_operator_rewards.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_operator_rewards.yaml
...
gemini_3g_testnet_rewards_operator_states.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_operator_states.yaml
...
gemini_3g_testnet_rewards_campaigns.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_campaigns.yaml
...
gemini_3g_testnet_rewards_operators.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_operators.yaml
...
gemini_3h_consensus_event_module_names.yaml
...
indexers/db/metadata/databases/gemini_3h_consensus/tables/gemini_3h_consensus_event_module_names.yaml
...
gemini_3h_staking_bundle_authors.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_bundle_authors.yaml
...
gemini_3h_staking_domain_epoches.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_domain_epoches.yaml
...
gemini_3g_testnet_rewards_accounts.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_accounts.yaml
...
gemini_3g_testnet_rewards_domains.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_domains.yaml
...
gemini_3g_testnet_rewards_rewards.yaml
...
indexers/db/metadata/databases/gemini_3g_testnet_rewards/tables/gemini_3g_testnet_rewards_rewards.yaml
...
gemini_3h_leaderboard__metadata.yaml
...
indexers/db/metadata/databases/gemini_3h_leaderboard/tables/gemini_3h_leaderboard__metadata.yaml
...
gemini_3h_staking_deposits.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_deposits.yaml
...
gemini_3h_staking_domain_blocks.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_domain_blocks.yaml
...
gemini_3h_staking_bundles.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_bundles.yaml
...
gemini_3h_consensus_accounts.yaml
...
indexers/db/metadata/databases/gemini_3h_consensus/tables/gemini_3h_consensus_accounts.yaml
...
gemini_3h_consensus_blocks.yaml
...
indexers/db/metadata/databases/gemini_3h_consensus/tables/gemini_3h_consensus_blocks.yaml
...
gemini_3h_staking_accounts.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_accounts.yaml
...
gemini_3h_staking_stats.yaml
...
indexers/db/metadata/databases/gemini_3h_staking/tables/gemini_3h_staking_stats.yaml
...
.env.sample
...
indexers/db/.env.sample
...
README.md
...
indexers/gemini-3g/README.md
...
tables.yaml
...
indexers/db/metadata/databases/consensus/tables/tables.yaml
...