Skip to content

feat: Leverage EIP-7917 Based Preconfirmations for Sub-Second Transaction UX #164

@hadv

Description

@hadv

Summary

Leverage EIP-7917 (Deterministic Proposer Lookahead) and based preconfirmations to provide sub-second transaction confirmation feedback to EthAura users.

Status Update (Dec 5, 2025):

  • Fusaka upgrade live on Ethereum mainnet (Dec 3, 2025)
  • EIP-7917 active - proposer lookahead now available
  • Research complete - mev-commit FAST RPC identified as recommended integration path

Current UX Pain Points

  1. Gas estimation: 2-5 seconds
  2. Bundler submission: Variable wait
  3. Block inclusion: 12+ seconds (best case)
  4. Finality: 12.8 minutes for full economic finality

Users see a spinning "Pending" state for 12+ seconds minimum.

Proposed Solution

With EIP-7917 + based preconfirmations:

  1. Preconfirmation: 100-500ms (proposer commitment)
  2. Block inclusion: 12 seconds (guaranteed by commitment)
  3. Finality: 12.8 minutes (unchanged)

Key insight: Users get instant feedback that their transaction WILL be included, backed by economic guarantees (slashing via Symbiotic).

Preconf Ecosystem Status (Dec 2025)

Protocol Status Integration Path
mev-commit (Primev) ✅ Live on Mainnet FAST RPC for wallets ⭐
Commit-Boost ✅ Production Ready Validator sidecar
Bolt (Chainbound) 🔄 Development Permissionless preconfs
Pimlico/Alchemy ❓ Unknown No public preconf API

Recommended Path: Integrate with Primev FAST RPC - production-ready RPC endpoint designed for wallets/dApps.

Transaction Flow with Preconfirmations

sequenceDiagram
    participant User
    participant EthAura
    participant FAST_RPC as Primev FAST RPC
    participant Proposer
    participant Blockchain
    
    User->>EthAura: Submit Transaction
    EthAura->>FAST_RPC: Send UserOp
    FAST_RPC->>Proposer: Request Preconf
    Proposer-->>FAST_RPC: Signed Commitment
    FAST_RPC-->>EthAura: Preconf Receipt (100-500ms)
    EthAura-->>User: "Preconfirmed ✓"
    Note over User: Instant feedback!
    Proposer->>Blockchain: Include in Block
    Blockchain-->>EthAura: Block Confirmation
    EthAura-->>User: "Included ✓"
Loading

Implementation Phases

Phase 1: UI Preparation ✅ Can Start Now

Issue: #165

  • Build tiered confirmation state UI components
  • Add preconfirmation status indicators
  • Prepare toast notifications for each state

Phase 2: Bundler Abstraction ✅ Can Start Now

Issue: #166

  • Abstract bundler client for preconf support
  • Add preconf-aware method signatures
  • Implement fallback to standard flow

Phase 3: Preconfirmation Protocol Integration ✅ Ready (Fusaka Live!)

Issue: #167 - Updated with research findings

  • Integrate with Primev FAST RPC (recommended)
  • Alternative: Direct mev-commit integration
  • Beacon chain proposer lookahead queries
  • Provider signature verification

Phase 4: Optimistic UI

Issue: #168

  • Optimistic state updates on preconf receipt
  • Rollback handling for broken preconfs (rare)
  • Analytics and monitoring

Draft API Design

// Using Primev FAST RPC (simplest)
class PreconfBundlerClient extends BundlerClient {
  constructor(bundlerUrl, fastRpcUrl) {
    super(bundlerUrl)
    this.fastRpcUrl = fastRpcUrl
  }
  
  async sendUserOperationWithPreconf(userOp) {
    // Send via FAST RPC for automatic preconfirmation
    const result = await this.fastRpcProvider.sendUserOperation(userOp)
    
    return {
      preconfirmed: true,
      preconfHash: result.preconfHash,
      targetBlock: result.targetBlock,
      userOpHash: result.userOpHash
    }
  }
}

Dependencies & Timeline

Dependency Status Notes
EIP-7917 ✅ Live on Mainnet Fusaka deployed Dec 3, 2025
Preconf protocols ✅ Available mev-commit FAST RPC ready
Bundler support ⏳ Via FAST RPC Use Primev instead of waiting for Pimlico/Alchemy

Next Steps

  1. ✅ Research complete (see feat: [Preconf Phase 3] Preconfirmation Protocol Integration (Post-Fusaka) #167 for details)
  2. Contact Primev for FAST RPC access
  3. Start Phase 1 - UI components can be built now
  4. Test FAST RPC on testnet

Resources

Sub-Issues

Labels

enhancement ux preconfirmations eip-7917

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions