@@ -44,12 +44,6 @@ export class AnvilTestWatcher {
4444 // Tracks when we first observed the current unfilled slot with pending txs (real wall time).
4545 private unfilledSlotFirstSeen ?: { slot : number ; realTime : number } ;
4646
47- // Latest target slot for which the proposer has built a block destined for L1 but which has
48- // not yet been committed. Set by the proposer-pipelining hook from `block-proposed` events so
49- // the watcher can advance L1 (and the injected date provider) to the target slot ahead of the
50- // publisher's `sendRequestsAt` sleep, instead of waiting a full wall-clock slot.
51- private proposedTargetSlot ?: number ;
52-
5347 constructor (
5448 private cheatcodes : EthCheatCodes ,
5549 rollupAddress : EthAddress ,
@@ -92,18 +86,6 @@ export class AnvilTestWatcher {
9286 this . isSequencerBuilding = fn ;
9387 }
9488
95- /**
96- * Records the target slot for which the proposer has built a block destined for L1. Used by
97- * the local-network watcher to fast-forward L1 (and the injected date provider) ahead of the
98- * pipelined publisher's `sendRequestsAt` sleep so it ends promptly instead of waiting a full
99- * wall-clock slot. Only ratchets up — late warps for stale slots are no-ops.
100- */
101- setProposedTargetSlot ( slot : number ) {
102- if ( this . proposedTargetSlot === undefined || slot > this . proposedTargetSlot ) {
103- this . proposedTargetSlot = slot ;
104- }
105- }
106-
10789 async start ( ) {
10890 if ( this . filledRunningPromise ) {
10991 throw new Error ( 'Watcher already watching for filled slot' ) ;
@@ -195,20 +177,6 @@ export class AnvilTestWatcher {
195177 return ;
196178 }
197179
198- // Pipelined-publish shortcut: if the proposer has built a block destined for a slot
199- // beyond the current L1 slot, fast-forward L1 to that slot's timestamp so the publisher's
200- // `sendRequestsAt(targetSlot)` sleep ends and the multicall mines inside the target slot.
201- // Without this, the publisher waits up to a full real-time slot for wall clock to catch up.
202- if ( this . proposedTargetSlot !== undefined && this . proposedTargetSlot > currentSlot ) {
203- const targetSlotTimestamp = Number (
204- await this . rollup . read . getTimestampForSlot ( [ BigInt ( this . proposedTargetSlot ) ] ) ,
205- ) ;
206- if ( await this . warpToTimestamp ( targetSlotTimestamp ) ) {
207- this . logger . info ( `Warped L1 to target slot ${ this . proposedTargetSlot } for pipelined publish` ) ;
208- }
209- return ;
210- }
211-
212180 // If there are pending txs and the sequencer missed them, warp quickly (after a 2s real-time debounce) so the
213181 // sequencer can retry in the next slot. Without this, we'd have to wait a full real-time slot duration (~36s) for
214182 // the dateProvider to catch up to the next slot timestamp. We skip the warp if the sequencer is actively building
0 commit comments