Skip to content

test(e2e): bump resume checkpoint-advance timeout to 60s for CI flakiness - #1902

Closed
gtrrz-victor wants to merge 1 commit into
mainfrom
fix/e2e-resume-checkpoint-advance-timeout
Closed

test(e2e): bump resume checkpoint-advance timeout to 60s for CI flakiness#1902
gtrrz-victor wants to merge 1 commit into
mainfrom
fix/e2e-resume-checkpoint-advance-timeout

Conversation

@gtrrz-victor

@gtrrz-victor gtrrz-victor commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

https://entire.io/gh/entireio/cli/trails/977

De-flakes TestResumeSquashMergeMultipleCheckpoints on the Vogon canary.

Failing job

test-canary (git-branch) — run 30997514111, attempt 1

resume_test.go:100: checkpoint state did not advance from 56ea54d9 within 30s

It surfaced on #1896's CI and passed on attempt 2 with no code change — a timing flake, not a regression. The test job failure in the same run is a cascade (needs: test-canary).

Root cause

The second checkpoint condenses onto the single entire/checkpoints/v1 branch. That advance is normally inline in the post-commit hook, but on a loaded CI runner it can lag behind the 30s poll window. #787 already moved this class 15s→30s for the same "CI slower than local" reason; this test still occasionally exceeds 30s.

Not reproducible locally (20/20 on the git-branch backend) — the local machine is too fast to lose the race.

Change

Bump the two checkpoint waits in this test (30s → 60s). Test-timing only; no production code touched.

Out of scope (noted, not fixed here)

A separate latent bug: git-branch setPrimaryRef advances the shared v1 branch with a read-tip-then-set-ref and no compare-and-swap (checkpoint/persistent.go), so genuinely concurrent checkpoint writers could clobber v1. Not reachable in this single-session test (no concurrent writer); worth its own issue.

🤖 Generated with Claude Code


Note

Low Risk
E2E test timeout and comment changes only; no production or security impact.

Overview
Addresses intermittent CI failures in TestResumeSquashMergeMultipleCheckpoints on the git-branch backend, where checkpoint state sometimes did not advance within the previous 30s poll window on loaded runners.

WaitForCheckpoint and WaitForCheckpointAdvanceFrom in that test are increased to 60s, with comments tying the flake to lag when the second checkpoint condenses onto the shared entire/checkpoints/v1 branch (same timing class as #787). Test-only change; no production behavior.

Reviewed by Cursor Bugbot for commit 1571da8. Configure here.

TestResumeSquashMergeMultipleCheckpoints flaked on the git-branch canary
with "checkpoint state did not advance from <ref> within 30s". The second
checkpoint condenses onto the single entire/checkpoints/v1 branch, whose
advance can lag on a loaded CI runner; the same run passed on rerun with no
code change. 30s reduced but did not eliminate the flake (#787 moved this
class 15s->30s); give the two waits in this test 60s. CI-timing only, no
production change.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@gtrrz-victor
gtrrz-victor requested a review from a team as a code owner August 5, 2026 11:18
Copilot AI lite review requested due to automatic review settings August 5, 2026 11:18

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR de-flakes the Vogon canary E2E test TestResumeSquashMergeMultipleCheckpoints by increasing checkpoint-advance polling timeouts to better tolerate slower CI runners, without changing production behavior.

Changes:

  • Increase WaitForCheckpoint timeout from 30s → 60s in TestResumeSquashMergeMultipleCheckpoints.
  • Increase WaitForCheckpointAdvanceFrom timeout from 30s → 60s in the same test.
  • Add an explanatory comment describing why CI may need the longer poll window.

Comment thread e2e/tests/resume_test.go
Comment on lines +89 to +92
// The second checkpoint condenses onto the single git-branch v1 branch,
// whose advance can lag on a loaded CI runner. 30s flaked here
// intermittently (only on the git-branch backend); give it 60s. See #787
// for the same CI-slower-than-local timing class.
@gtrrz-victor
gtrrz-victor marked this pull request as draft August 5, 2026 11:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants