- Blocks ✅ (Already implemented) - Block hash, number, timestamp, parent hash - State root, extrinsics root, spec version - Kate commitments (Avail-specific)
- Extrinsics/Transactions ❌ (Empty - needs implementation) - Transaction hash, block reference - Signer, signature, nonce, tip - Method, section, args - Success/failure status
- Events ❌ (Empty - needs implementation) - Event data from all pallets - Block and extrinsic references - Event index and section/method
Avail-Specific Entities
- Data Submissions ❌ (Missing) - Application ID - Data blob references - Submission size and fees - Kate polynomial commitments
- Applications ❌ (Missing) - Application ID and metadata - Owner accounts - Registration details
- Kate Commitments ❌ (Missing) - Block commitments for data availability - Polynomial commitments - Data root information
Economic & Governance Entities
- Accounts/Balances ❌ (Missing) - Account addresses and balances - Transfers and balance changes - Reserved and locked balances
- Staking ❌ (Missing) - Validators and nominators - Staking rewards and slashing - Era information
- Treasury ❌ (Missing) - Proposals and spending - Treasury balance changes
- Governance ❌ (Missing) - Technical committee proposals - Voting and decisions
Session & Consensus Entities
- Sessions ❌ (Missing) - Session keys and validators - Era transitions - Authority sets
- BABE/Grandpa ❌ (Missing) - Block production data - Finality information
Advanced Features
- Identity ❌ (Missing) - Identity registrations - Judgements and sub-identities
- Multisig ❌ (Missing) - Multisig accounts and transactions - Approval processes
- Proxy ❌ (Missing) - Proxy accounts and delegations
- MMR (Merkle Mountain Range) ❌ (Missing) - MMR leaf data for cross-chain proofs
- Vector (Cross-chain) ❌ (Missing) - Cross-chain messages - Bridge operations
Currently, only blocks are indexed. We need to implement indexing for all the other entities, especially the Avail-specific ones like data submissions, applications, and Kate commitments which are core to Avail's data availability functionality.
Would you like me to start implementing the missing entities, beginning with the most critical ones like extrinsics, events, and data submissions?
First give me the extensive list Transfers, data submissions, whatever Extensive
⏺ Based on my research of Avail blockchain, here's the comprehensive list of ALL entities that need to be indexed:
- Core Blockchain Entities
Blocks ✅ (Implemented)
- Block hash, number, timestamp
- Parent hash, state root, extrinsics root
- Spec version, Kate commitments
- Block size, weight, gas used
Extrinsics ❌ (Missing)
- Extrinsic hash, index, block reference
- Signer address, signature, nonce
- Method, section, args (JSON)
- Success/failure status, error details
- Tip amount, weight, fees paid
- Timestamp, call data
Events ❌ (Missing)
- Event index, block/extrinsic reference
- Section, method, event data
- Phase (initialization, apply_extrinsic, finalization)
- Topics and attributes
- Timestamp
Logs ❌ (Missing)
- Pre-runtime logs, consensus logs
- BABE pre-runtime, GRANDPA logs
- Seal information
- Financial Entities
Transfers ❌ (Missing)
- From/to addresses, amount
- Transfer type (regular, reserve, unreserve)
- Block/extrinsic reference, timestamp
- Fee information, success status
Balances ❌ (Missing)
- Account free balance, reserved balance
- Locked balance, total balance
- Balance changes and reasons
- Account creation/destruction events
Transaction Fees ❌ (Missing)
- Base fee, weight fee, tip
- Length fee, inclusion fee
- Fee multiplier, next fee multiplier
- Who paid fees, partial fee info
Treasury ❌ (Missing)
- Treasury balance, deposits, burns
- Proposals (amount, beneficiary, bond)
- Proposal voting, approval, rejection
- Spending periods, awards
- Avail-Specific Data Availability Entities
Data Submissions ❌ (Missing - CRITICAL)
- Application ID, data blob
- Submission index, block reference
- Data size, submission fees
- Submitter address, timestamp
- Data hash/commitment
Applications ❌ (Missing - CRITICAL)
- Application ID, application key
- Owner account, creation block
- Application metadata, status
- Data submission count
Kate Commitments ❌ (Missing - CRITICAL)
- Block commitments, data commitments
- Polynomial commitments, proofs
- Commitment data, verification info
- Block reference, commitment index
Data Availability Control ❌ (Missing)
- Block dimensions (rows, cols)
- Data root, extension
- Availability sampling data
- Staking & Consensus Entities
Validators ❌ (Missing)
- Validator stash/controller accounts
- Commission rate, self-stake
- Total stake, nominator count
- Active/inactive status, preferences
Nominators ❌ (Missing)
- Nominator account, targets
- Stake amount, active stake
- Rewards earned, commission paid
Staking ❌ (Missing)
- Bonds, unbonds, withdrawals
- Slashes, rewards distribution
- Era points, exposure
- Validator preferences changes
Sessions ❌ (Missing)
- Session index, era index
- Session keys, next keys
- Session length, progress
- Key ownership proofs
Eras ❌ (Missing)
- Era index, start/end blocks
- Total stake, validator set
- Rewards, slashes in era
- Era payout information
- Governance Entities
Council/Technical Committee ❌ (Missing)
- Members, prime member
- Proposals, voting records
- Execution status, close votes
- Motion hash, threshold
Democracy ❌ (Missing)
- Referenda, proposals
- Public proposals, voting
- Delegation, conviction voting
Elections ❌ (Missing)
- Candidate submissions
- Voting, election results
- Term duration, member changes
- Identity & Social Entities
Identity ❌ (Missing)
- Identity info (display, legal, web, etc.)
- Registrars, judgements
- Sub-identities, super accounts
- Identity fees, deposits
Proxy ❌ (Missing)
- Proxy accounts, delegators
- Proxy types, permissions
- Proxy calls, announcements
- Delay periods, deposits
Multisig ❌ (Missing)
- Multisig accounts, threshold
- Signatories, approvals
- Multisig calls, timepoints
- Cancellations, executions
- Utility & Advanced Features
Utility Calls ❌ (Missing)
- Batch calls, batch results
- As_derivative calls
- Force batch operations
Scheduler ❌ (Missing)
- Scheduled tasks, dispatch times
- Task names, priorities
- Execution results, cancellations
Indices ❌ (Missing)
- Account indices, claims
- Index transfers, freezing
Recovery ❌ (Missing)
- Recovery configurations
- Recovery processes, vouching
- Threshold recovery
- Cross-chain & Interoperability
Vector (Cross-chain) ❌ (Missing - CRITICAL for Avail)
- Cross-chain messages
- Message queues, processing
- Bridge operations, relayers
- Message fees, confirmations
MMR (Merkle Mountain Range) ❌ (Missing)
- MMR leaves, peaks
- MMR proofs for cross-chain
- Root hash, leaf count
- Network & Node Information
Authority Discovery ❌ (Missing)
- Authority keys, addresses
- Node connectivity info
ImOnline ❌ (Missing)
- Heartbeats, offline reports
- Validator online status
- Unresponsiveness tracking
Offences ❌ (Missing)
- Reported offences, slash amounts
- Offender identification
- Offence types, time slots
- System & Technical
Preimage ❌ (Missing)
- Preimage data, hashes
- Request status, deposits
Bounties ❌ (Missing)
- Bounty proposals, curators
- Bounty status, claims
- Bounty deposits, awards
Child Bounties ❌ (Missing)
- Child bounty creation
- Curator assignments, claims
Tips ❌ (Missing)
- Tip proposals, tippers
- Tip amounts, reasons
- Tip closures, payouts
- Transaction Pause ❌ (Missing)
- Paused transactions, filters
- Pause/unpause events
- Mandate ❌ (Missing)
- Mandated calls, origins
- Execution permissions
Summary by Priority:
CRITICAL (Avail-specific):
- Data Submissions - Core Avail functionality
- Applications - App registration/management
- Kate Commitments - Data availability proofs
- Vector - Cross-chain messaging
HIGH (Standard blockchain):
- Extrinsics - All transactions
- Events - All blockchain events
- Transfers - Balance transfers
- Balances - Account balances
MEDIUM (Consensus/Staking):
- Validators/Staking - Network security
- Sessions/Eras - Consensus periods
- Treasury - On-chain treasury
LOW (Governance/Utility):
- Governance - Voting/proposals
- Identity/Proxy/Multisig - Account features
- Utility features - Batch calls, scheduling