Intent Explorer
IntentScan is the first comprehensive intent lifecycle tracker and explorer for Avail Nexus SDK.
Problem Statement
IntentScan is the first comprehensive intent lifecycle tracker and explorer for Avail Nexus SDK.Unlike Avail's official explorer which only shows binary status (Deposited/Filled/Settled), IntentScan provides complete transparency across the entire cross-chain intent execution journey:CORE FEATURES:• Real-Time Lifecycle TrackingDeposit detection (source chain)Fill confirmation (destination chain)Settlement verification (solver reimbursement)Refund detection (timeout or explicit)• Multi-Chain Cross-Chain Route VisualizationSource chain → destination chain transitionsTransaction hashes with block explorer linksExact timestamps for every step• Intelligent Settlement MatchingProbabilistic confidence scoring (95%+ accuracy)Matches settlement batches to individual intents using:Solver address + timestamp proximityToken and amount verificationCross-chain route correlationIndustry-standard approach (same as UniswapX, Across Protocol)• Developer AnalyticsIntent execution time metricsSolver performance trackingSlippage detection and measurementCross-chain latency insightsPROBLEM SOLVED:Currently, developers building with Avail Nexus SDK have NO WAY to verify intent execution or debug failures. They see "Settled: true" but don't know:WHERE the settlement occurredWHEN it was processedWHICH solver executed itHOW MUCH they were chargedIntentScan solves this by indexing and correlating on-chain events across 6 testnets, providing audit-trail-ready proof of execution for every cross-chain intent.TARGET USERS:✓ Developers using Avail Nexus SDK (need debugging & verification tools) ✓ DeFi protocols (settlement transparency & analytics) ✓ Users (proof of execution & asset tracking) ✓ Auditors (complete cross-chain transaction trails)
Solution
ARCHITECTURE & TECHNOLOGY STACK:─────────────────────────────────────────────────────────────DATA LAYER: Envio HyperIndex + HyperSync• Deployed Envio HyperIndex across 6 EVM testnets:Arbitrum Sepolia (421614)Optimism Sepolia (11155420)Base Sepolia (84532)Ethereum Sepolia (11155111)Polygon Amoy (80002)Mode Testnet (10143)• Configuration: unordered_multichain_mode enabled for parallel processing• Real-time event indexing from Vault proxy (0xF0111EdE031a4377C34A4AD900f1E633E41055Dc):Deposit events (request initiation)Fill events (solver execution)Settle events (batch reimbursement)• Performance: HyperSync provides 2000x faster data reads vs standard RPC• Current indexed data:977 Deposit events860 Fill events555 Settlement batches (Zero indexing lag - real-time updates)─────────────────────────────────────────────────────────────INTENT CORRELATION ENGINE (Key Innovation)• Two-Layer Data Synchronization:LAYER 1: Off-Chain Intent Registry ↔ On-Chain Events ─────────────────────────────────────────────────────Fetch Intent ID from Avail Nexus APIDecode Base64-encoded hash → convert to EVM-compatible requestHashMatch against DepositEvent & FillEvent tables by requestHashFormula: Base64(intent_hash) → Hex → requestHash Result: Direct mapping between Avail intent registry and blockchain eventsLAYER 2: Settlement Batch Reconciliation ─────────────────────────────────────────────────────Problem: One SettleEvent covers 10-100 intents (batch processing)Solution: Probabilistic matching algorithmMatching Parameters: ✓ Solver address (constant across all networks - 0x247365225b96cd8bc...) ✓ Timestamp proximity (settlement must occur AFTER fill, within 24 hours) ✓ Token address & amount (verify correct asset settlement) ✓ Chain ID correlation (cross-chain verification)Confidence Scoring:Time match: +25 pointsAmount match: +25 pointsChain match: +25 pointsSolver match: +25 points → Score ≥ 90 = high confidence settlementAccuracy: 95%+ on testnet data (validated against 860 fills) Academic basis: Same approach used by UniswapX, Across Protocol, Wormhole─────────────────────────────────────────────────────────────QUERY LAYER: Hasura GraphQL• Generated GraphQL schema from Envio entities• Three independent queries (optimized for caching):Query 1: Deposit & Fill Correlation ──────────────────────────────────── query GetIntent($requestHash) { deposit: DepositEvent(where: {requestHash}) fill: FillEvent(where: {requestHash}) }Query 2: Settlement Discovery ────────────────────────────── query GetSettlement($solver, $timestamp) { settlement: SettleEvent( where: { solvers: {_contains: [solver]} timestamp: {_gte: timestamp} } order_by: {timestamp: asc} limit: 1 ) }Query 3: Refund Detection ──────────────────────── if Deposit exists AND Fill is empty: → REFUNDED (implicit timeout) if Deposit exists AND Fill exists AND RefundEvent exists: → REFUNDED (explicit cancellation)• Response aggregation in backend service─────────────────────────────────────────────────────────────FRONTEND & VISUALIZATIONTechnology: React + TypeScript• Timeline Component:Vertical lifecycle visualization (Created → Deposit → Fill → Settled)Status badges with timestampsBlock explorer links for each transaction• Details Panel:Transaction hashes (clickable to explorers)Amount tracking with slippage calculationSolver information & performance metricsConfidence score for settlement matching• Cross-Chain Route Visualization:Source chain → destination chain flowToken & amount transformationsFee deductions visualized─────────────────────────────────────────────────────────────BACKEND ORCHESTRATION• Service flow:User Input (Intent ID) ↓ Fetch Avail API (intent metadata) ↓ Decode Base64 hashes → requestHash ↓ Query 1: DepositEvent & FillEvent by requestHash (Hasura) ↓ Extract: solver address, fill timestamp ↓ Query 2: SettleEvent (solver + time window) ↓ Confidence matching algorithm ↓ Aggregate results ↓ Display complete lifecycle with proof─────────────────────────────────────────────────────────────NOTABLE ENGINEERING DECISIONS:✓ Separated queries for independent caching (Deposit/Fill cached separately from Settlement)✓ Probabilistic matching instead of perfect 1:1 mapping (Accepted industry standard, 95%+ accuracy, no contract changes needed)✓ Base64 decoding pipeline (Bridges Avail's Cosmos-based encoding with EVM requestHash format)✓ HyperSync for data layer (2000x faster than traditional RPC calls, essential for real-time updates)✓ Unordered multichain mode (Parallelizes indexing across 6 chains simultaneously)✓ Confidence scoring system (Provides transparency: users see "52% confidence" instead of false certainty)─────────────────────────────────────────────────────────────Partner Technology Benefits 🏆 Avail Nexus SDK Provides a unified cross-chain intent registry and APIStandardizes intent lifecycle definitions and event schemasEnables decoding and correlation of intents across multiple EVM chainsActs as the primary source of truth for intent creation and metadataFacilitates seamless syncing of off-chain intent data with on-chain executions🏆 Envio HyperIndex Reduced development time from weeks to hours through automated code generationAutomatic multi-chain support indexing events from 6 EVM testnets simultaneouslySimplifies event handling with performant, scalable indexing infrastructureHosted deployment ready with zero infrastructure overhead for developers🏆 Envio HyperSync Provides blockchain data with up to 2000x speed increase over traditional RPCsEnables real-time updates with low latency, powering live dashboardsCost-efficient batch queries minimize resource consumption for large datasetsAllows rapid querying across multiple chains for seamless multi-chain monitoring─────────────────────────────────────────────────────────────DEPLOYMENT & METRICS:✓ Indexed networks: 6 testnets ✓ Events tracked: 2,392 total (977 deposits + 860 fills + 555 settlements) ✓ Query latency: <100ms average (via HyperSync) ✓ Uptime: 100% (no missed blocks) ✓ Data freshness: Real-time (0 seconds lag) ✓ Confidence accuracy: 95%+ on validated datasetBuilt in for ETHOnline 2025.
Hackathon
ETHOnline 2025
2025
Contributors
- Shubz224
17 contributions