Skip to content

Restore Taiko FCU timestamp validation allowing equal timestamps#10810

Open
jmadibekov wants to merge 3 commits intomasterfrom
jmadibekov/fix-taiko-fcu-timestamp-validation
Open

Restore Taiko FCU timestamp validation allowing equal timestamps#10810
jmadibekov wants to merge 3 commits intomasterfrom
jmadibekov/fix-taiko-fcu-timestamp-validation

Conversation

@jmadibekov
Copy link
Contributor

@jmadibekov jmadibekov commented Mar 12, 2026

Changes

  • Add GetMinRequiredTimestamp virtual method to ForkchoiceUpdatedHandler (returns Timestamp + 1 by default for strict increase)
  • Override in TaikoForkchoiceUpdatedHandler as a one-liner returning Timestamp (allowing equal timestamps)
  • Add unit tests covering equal, greater, and lesser timestamp scenarios
  • Reduce timeout-minutes from 45 to 20 in ci-surge.yml and ci-taiko.yml, add step-level 15m timeout on the test step so timeouts surface as failures instead of cancellations

PR #10325 renamed IsPayloadAttributesTimestampValidArePayloadAttributesTimestampAndSlotNumberValid, removed virtual, and deleted the Taiko override. In Taiko Pacaya, multiple L2 blocks can be derived from a single L1 block sharing the same L1 anchor timestamp, so equal timestamps must be allowed.

Types of changes

What types of changes does your code introduce?

  • Bugfix (a non-breaking change that fixes an issue)

Testing

Requires testing

  • Yes

If yes, did you write tests?

  • Yes

Notes on testing

Added 3 test cases in TaikoEngineApiTests verifying equal timestamps are accepted, greater timestamps are accepted, and lesser timestamps are rejected.

Integration tests passed on this PR:

Documentation

Requires documentation update

  • No

Requires explanation in Release Notes

  • No

…amps

Commit 195829e (Bal devnet 2) renamed IsPayloadAttributesTimestampValid,
removed the virtual keyword, and deleted TaikoForkchoiceUpdatedHandler's
override that allowed equal timestamps. This broke Taiko Pacaya where
multiple L2 blocks derived from a single L1 block share the same timestamp.
@github-actions github-actions bot added bug fix + reliability taiko related to the taiko alethia rollup labels Mar 12, 2026
@jmadibekov jmadibekov self-assigned this Mar 12, 2026
@jmadibekov jmadibekov changed the title fix: Restore Taiko FCU timestamp validation allowing equal timestamps Restore Taiko FCU timestamp validation allowing equal timestamps Mar 12, 2026
Copy link
Member

@LukaszRozmej LukaszRozmej left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe make the change smaller by having something like GetMinRequiredTimestamp overridable. Thus overriding a one-liner?

@smartprogrammer93
Copy link
Contributor

@copilot implement the following suggestion to this PR::

Maybe make the change smaller by having something like GetMinRequiredTimestamp overridable. Thus overriding a one-liner?

Copy link
Contributor

Copilot AI commented Mar 12, 2026

@smartprogrammer93 I've opened a new pull request, #10811, to work on those changes. Once the pull request is ready, I'll request review from you.

Job-level timeout 45m → 20m, add step-level 15m timeout on the test
step so timeouts show as failures instead of cancellations.
@jmadibekov jmadibekov requested review from a team and rubo as code owners March 12, 2026 17:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug fix + reliability devops taiko related to the taiko alethia rollup

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants