Skip to main content

Updates

Block Building Without Auctions

Anthony //5 min read
opinion

PBS was supposed to decentralize block production. Instead, two builders controlled over 80% of Ethereum blocks.

The problem isn’t the builders—it’s the auction. When block rights go to the highest bidder, capital wins. The same well-funded players win every time. Latency games compound the advantage. Complexity creates barriers. The market consolidates.

What if block production didn’t require winning an auction?

Signet replaces block auctions with round-robin rotation. Each builder gets their slot. No bidding. No latency wars. No capital requirements. Your turn comes, you build a block.

Auctions vs Rotation

pbs-vs-round-robin.png

PBS auctions optimize for extraction. The builder who extracts the most value can afford the highest bid. This creates a feedback loop: more extraction → more capital → more wins → more extraction.

Round-robin rotation optimizes for participation. Every builder gets equal opportunity. The optimization target shifts from “win the auction” to “build a good block.”

How Rotation Works

Each builder operates within a 12-second window synchronized with Ethereum:

timing-architecture.png

Slot structure:

  • 8 seconds: Builder’s active window
  • 2 seconds: Buffer before (handoff from previous builder)
  • 2 seconds: Buffer after (handoff to next builder)

During your 8-second window:

  1. Access the private bundle cache
  2. Request sequencer signature
  3. Submit block to Ethereum

Outside your window: 403 errors. The signet-tx-cache authentication layer enforces rotation.

No Latency Games

PBS rewards millisecond optimization. Builders invest in co-located infrastructure, custom networking, and timing attacks. The fastest bid wins—even if it’s only microseconds faster.

Signet’s 8-second window eliminates this. You have 8 full seconds to build the best block you can. No race. No timing advantage. Standard infrastructure works fine.

MetricPBSRound Robin
Block timing~12s (variable)12s (fixed)
CompetitionAuction-basedSlot-based
PredictabilityVariable by bidGuaranteed in slot
InfrastructureLow-latency criticalStandard sufficient

Blind Signing

The sequencer co-signs blocks without seeing their contents:

sequencer-design.png

Signet’s SignRequest includes only the block hash—not transactions. The sequencer validates builder identity and timing, then signs. This design prevents content-based censorship while maintaining accountability.

text
Builder → SignRequest(block_hash) → Sequencer
Sequencer validates: Is this builder? Is it their slot?
Sequencer → SignResponse(signature) → Builder

The sequencer never sees what’s in the block. Censorship resistance through protocol design, not social consensus.

Builder Workflow

1. Collect Transactions

bash
# Public transactions (always accessible)
GET https://transactions.parmigiana.signet.sh/get

# Private bundles (only during your slot)
GET https://transactions.parmigiana.signet.sh/get-bundles

collect-tx.png

The bundle cache authenticates every request. Wrong slot = no access.

2. Simulate Execution

sim-execution.png

Use signet_callBundle to validate conditional transactions:

rust
let response: SignetCallBundleResponse = provider
    .client()
    .request("signet_callBundle", (bundle,))
    .await?;
// Returns: bundle_hash, total_gas_used, orders, fills

Orders with host_fills require Ethereum actions to execute atomically. The OrderDetector enforces cross-chain atomicity within the EVM.

3. Request Co-Signature

req-cosig.png

Submit your block hash. Receive the sequencer’s signature. No negotiation.

4. Submit to Ethereum

sub-to-ethereum.png

The Zenith::BlockHeader type and blob sidecar handle transaction encoding for block submission. Cross-chain operations use multi-call:

  1. submitBlock on Zenith contract
  2. fillPermit2 on Orders contract

Use private relays for cross-chain bundles.

Builder Economics

PBS forces builders to optimize competing constraints:

  • Transaction selection: Compute-intensive simulation
  • Auction timing: Millisecond-sensitive bidding

Time spent simulating reduces auction competitiveness. Builders choose between thorough analysis and timely bids.

Round-robin changes the equation:

PBS workflow: Simulate → Calculate bid → Submit to relays → Hope to win

Round-robin workflow: Wait for slot → Access bundles → Get signature → Submit block

block-builder-comparison.png

Resource allocation shifts:

  • Full compute budget for transaction selection
  • No bid calculation overhead
  • No timing optimization required
  • Standard infrastructure sufficient

Predictable outcomes:

  • Revenue: Internalized MEV without bidding costs
  • Block allocation: 7,200 daily blocks ÷ number of builders
  • Primary optimization: Transaction selection quality

Builders address their actual constraint—computational efficiency—without sacrificing inclusion probability.

Trade-offs

Round-robin has different trade-offs than PBS:

What you gain:

  • Predictable block allocation
  • No capital requirements
  • No latency infrastructure
  • Full simulation time

What you accept:

  • No “optimal” extraction: PBS auctions theoretically maximize MEV extraction. Round-robin prioritizes fairness over extraction efficiency.
  • Builder set is permissioned: Joining rotation requires approval (for now). This is a centralization vector we’re working to address.
  • Lazy builder risk: A builder could submit empty blocks during their slot. Economic incentives (missed fees) mitigate this, but it’s possible.

Why This Matters

round-robin-approach.png

Block production is infrastructure. Infrastructure should be accessible. When two builders control 80% of blocks, the infrastructure is captured.

Round-robin doesn’t eliminate MEV—builders still capture value from transaction ordering. But it distributes the opportunity. More builders can participate. The market is less captured.

Extensibility

The base protocol provides:

  • Atomic execution
  • Fair inclusion
  • Instant settlement

Builders can add services on top:

  • Preconfirmation mechanisms
  • Application-specific guarantees
  • Custom ordering preferences

Complexity remains optional.

Get Started

SDK components:

Integration path:

  1. Register: Get in touch to join the builder set
  2. Authenticate: Set up API credentials
  3. Test: Use staging environment
  4. Deploy: Join rotation on Parmigiana testnet

Questions? Reach out.

ESC

Start typing to search documentation...

Navigate Select ⌘K Open