feat: Leverage EIP-7917 Based Preconfirmations for Sub-Second Transaction UX
- Dominant language
- JavaScript
- Stars
- 2
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
Leverage [EIP-7917 (Deterministic Proposer Lookahead)](https://eips.ethereum.org/EIPS/eip-7917) 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
```mermaid
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 ✓"
```
## 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
```javascript
// 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 #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
- [EIP-7917 Specification](https://eips.ethereum.org/EIPS/eip-7917)
- [Primev mev-commit Docs](https://docs.primev.xyz/)
- [Commit-Boost Docs](https://commit-boost.github.io/commit-boost-client/)
- [Based Preconfirmations - Vitalik](https://ethresear.ch/t/based-preconfirmations/17353)
## Sub-Issues
- #165 - Phase 1: UI Preparation
- #166 - Phase 2: Bundler Abstraction
- #167 - Phase 3: Protocol Integration (includes ecosystem research)
- #168 - Phase 4: Optimistic UI
## Labels
`enhancement` `ux` `preconfirmations` `eip-7917`
Contributor guide
Assessment
This issue has not been assessed yet.