Skip to content

Commit a0d9a82

Browse files
spalladinoclaude
authored andcommitted
fix(archiver): swallow error when rollup contract not yet finalized on L1 (#22156)
## Motivation Right after deployment, the archiver's L1 sync queries `getProvenCheckpointNumber` at the finalized L1 block tag. But if the rollup contract didn't exist yet at that L1 block, the call returns no data and logs a noisy warning on every sync iteration. ## Approach Swallow the "returned no data" error in `updateFinalizedCheckpoint` since it's an expected transient condition. Other errors still log a warning. ## Changes - **archiver**: Silence the `ContractFunctionExecutionError` with "returned no data" in `updateFinalizedCheckpoint`, which occurs when the rollup contract is too new to exist at the finalized L1 block Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 5528388 commit a0d9a82

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

yarn-project/archiver/src/modules/l1_synchronizer.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -256,8 +256,11 @@ export class ArchiverL1Synchronizer implements Traceable {
256256
},
257257
);
258258
}
259-
} catch (err) {
260-
this.log.warn(`Failed to update finalized checkpoint: ${err}`);
259+
} catch (err: any) {
260+
// The rollup contract may not exist at the finalized L1 block right after deployment.
261+
if (!err?.message?.includes('returned no data')) {
262+
this.log.warn(`Failed to update finalized checkpoint: ${err}`);
263+
}
261264
}
262265
}
263266

0 commit comments

Comments
 (0)