Skip to content

fix(flashblocks): handle SystemTime edge case for clock adjustments#626

Merged
refcell merged 5 commits intobase:mainfrom
Himess:fix/systemtime-clock-adjustment
Feb 6, 2026
Merged

fix(flashblocks): handle SystemTime edge case for clock adjustments#626
refcell merged 5 commits intobase:mainfrom
Himess:fix/systemtime-clock-adjustment

Conversation

@Himess
Copy link
Copy Markdown
Contributor

@Himess Himess commented Jan 30, 2026

Closes #602

@cb-heimdall
Copy link
Copy Markdown
Collaborator

cb-heimdall commented Jan 30, 2026

✅ Heimdall Review Status

Requirement Status More Info
Reviews 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

Replace `.unwrap()` with fallback handling to prevent panics when system
clock is adjusted backward (e.g., NTP correction, VM clock sync).
@Himess Himess force-pushed the fix/systemtime-clock-adjustment branch from ce7d83b to 1f7ccb3 Compare January 30, 2026 16:20
@refcell refcell requested a review from haardikk21 January 30, 2026 16:42
@refcell
Copy link
Copy Markdown
Contributor

refcell commented Jan 30, 2026

Requesting @haardikk21 's review since he's more familiar with the builder code

Test code and test_utils don't need fallback handling since they're
outside the hot path. Keep logging only in production code.
@Himess
Copy link
Copy Markdown
Contributor Author

Himess commented Jan 30, 2026

Makes sense, reverted test code to use .unwrap(). Will change if @haardikk21 says otherwise.

@haardikk21
Copy link
Copy Markdown
Collaborator

Is Duration::ZERO a good fallback in the case where we're expecting a unix timestamp? Wouldn't that mess things up in the flow? cc @refcell

Per review feedback: instead of setting unix_now to zero (which would
result in a very large deadline), return Duration::ZERO directly from
the function. This way the effective deadline becomes 0.5s due to the
extra time allotted by the caller.
Test utils code doesn't need clock error handling, keeping original.
@Himess
Copy link
Copy Markdown
Contributor Author

Himess commented Jan 30, 2026

@refcell Done

@refcell
Copy link
Copy Markdown
Contributor

refcell commented Feb 5, 2026

Can you resolve merge conflicts @Himess ? Thanks!

@Himess
Copy link
Copy Markdown
Contributor Author

Himess commented Feb 5, 2026

@refcell Solved Thanks

Copy link
Copy Markdown
Contributor

@refcell refcell left a comment

Choose a reason for hiding this comment

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

This is good now, nice job

@refcell refcell enabled auto-merge February 6, 2026 15:00
@refcell refcell added this pull request to the merge queue Feb 6, 2026
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Feb 6, 2026
@refcell refcell added this pull request to the merge queue Feb 6, 2026
Merged via the queue into base:main with commit 720f6e1 Feb 6, 2026
15 checks passed
mw2000 pushed a commit that referenced this pull request Mar 7, 2026
* bump hokulea version and fix only ethda problem

* name nit

* rename eigenda_blob_provider to eigenda_preimage_provider

* update elf

* restore todo

* chore: bump elf

---------

Co-authored-by: BowenX <bxue@eigenlabs.org>
mw2000 pushed a commit that referenced this pull request Mar 9, 2026
* bump hokulea version and fix only ethda problem

* name nit

* rename eigenda_blob_provider to eigenda_preimage_provider

* update elf

* restore todo

* chore: bump elf

---------

Co-authored-by: BowenX <bxue@eigenlabs.org>
mw2000 pushed a commit that referenced this pull request Mar 16, 2026
* bump hokulea version and fix only ethda problem

* name nit

* rename eigenda_blob_provider to eigenda_preimage_provider

* update elf

* restore todo

* chore: bump elf

---------

Co-authored-by: BowenX <bxue@eigenlabs.org>
haardikk21 pushed a commit that referenced this pull request Mar 17, 2026
…626)

* fix(flashblocks): handle SystemTime edge case for clock adjustments

Replace `.unwrap()` with fallback handling to prevent panics when system
clock is adjusted backward (e.g., NTP correction, VM clock sync).

* Revert test code to use unwrap() per review feedback

Test code and test_utils don't need fallback handling since they're
outside the hot path. Keep logging only in production code.

* Return Duration::ZERO from job_deadline on clock error

Per review feedback: instead of setting unix_now to zero (which would
result in a very large deadline), return Duration::ZERO directly from
the function. This way the effective deadline becomes 0.5s due to the
extra time allotted by the caller.

* Revert node.rs changes per review feedback

Test utils code doesn't need clock error handling, keeping original.
haardikk21 pushed a commit that referenced this pull request Mar 17, 2026
* bump hokulea version and fix only ethda problem

* name nit

* rename eigenda_blob_provider to eigenda_preimage_provider

* update elf

* restore todo

* chore: bump elf

---------

Co-authored-by: BowenX <bxue@eigenlabs.org>
mw2000 pushed a commit that referenced this pull request Mar 19, 2026
* bump hokulea version and fix only ethda problem

* name nit

* rename eigenda_blob_provider to eigenda_preimage_provider

* update elf

* restore todo

* chore: bump elf

---------

Co-authored-by: BowenX <bxue@eigenlabs.org>
mw2000 pushed a commit that referenced this pull request Mar 23, 2026
* bump hokulea version and fix only ethda problem

* name nit

* rename eigenda_blob_provider to eigenda_preimage_provider

* update elf

* restore todo

* chore: bump elf

---------

Co-authored-by: BowenX <bxue@eigenlabs.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(flashblocks): Handle SystemTime edge case for clock adjustments

4 participants