Skip to content

disable bhs full tests for vrfv2/plus#21718

Open
Tofel wants to merge 1 commit intodevelopfrom
skip-bhs-tests
Open

disable bhs full tests for vrfv2/plus#21718
Tofel wants to merge 1 commit intodevelopfrom
skip-bhs-tests

Conversation

@Tofel
Copy link
Contributor

@Tofel Tofel commented Mar 26, 2026

Why? These tests were flaky and originals weren't running in CI anyway.
Plus use a stronger runner for LogPoller tests to make sure CL node doesn't crash at the end.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 26, 2026

✅ No conflicts with other open PRs targeting develop

@Tofel Tofel marked this pull request as ready for review March 26, 2026 10:12
@Tofel Tofel requested a review from a team as a code owner March 26, 2026 10:12
Copilot AI review requested due to automatic review settings March 26, 2026 10:12
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Risk Rating: MEDIUM — this change effectively disables two E2E subtests, which can hide regressions unless there’s an alternative signal/coverage.

This PR aims to reduce CI flakiness by skipping VRF BHS “full” E2E test paths in the devenv test suite.

Changes:

  • Skip the VRFv2 BHS full E2E subtest that waits ~256 blocks then funds and expects fulfillment.
  • Skip the VRFv2Plus BHS full E2E subtest that waits ~256 blocks then funds and expects fulfillment.

Targeted areas for scrupulous human review:

  • Whether the skips should be CI-only (or opt-in) so the E2E scenarios remain runnable for debugging/regression verification.
  • Whether the PR description should be updated to remove/reflect the LogPoller runner change claim.

Suggested reviewers (per CODEOWNERS): @smartcontractkit/devex-tooling (for /devenv/)

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.

File Description
devenv/tests/vrfv2plus/bhs_test.go Unconditionally skips the “complete E2E fund later and fulfill” subtest.
devenv/tests/vrfv2/bhs_test.go Unconditionally skips the “complete E2E” subtest that waits 256 blocks then funds.

})

t.Run("BHS complete E2E fund later and fulfill", func(t *testing.T) {
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
Copy link

Copilot AI Mar 26, 2026

Choose a reason for hiding this comment

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

Skip message grammar: "Originally it only run on live testnets" should be "Originally it only ran on live testnets" (or similar).

Suggested change
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
t.Skip("This test is flaky on CI. Originally it only ran on live testnets. Owners should work on fixing it.")

Copilot uses AI. Check for mistakes.
Comment on lines +61 to +62
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
// Failure reason: blockhash not found in the store.
Copy link

Copilot AI Mar 26, 2026

Choose a reason for hiding this comment

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

t.Skip is unconditional, but the message says the test is flaky on CI. As written, it will also skip for local/manual runs, which prevents running this E2E scenario when debugging. Consider gating the skip on a CI signal (e.g., os.Getenv("CI")) or requiring an explicit env var to enable the long/flaky path.

Copilot uses AI. Check for mistakes.
require.NoError(t, err, "failed to connect to Chainlink nodes")

t.Run("BHS Job with complete E2E - wait 256 blocks to see if Rand Request is fulfilled", func(t *testing.T) {
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
Copy link

Copilot AI Mar 26, 2026

Choose a reason for hiding this comment

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

Skip message grammar: "Originally it only run on live testnets" should be "Originally it only ran on live testnets" (or similar).

Suggested change
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
t.Skip("This test is flaky on CI. Originally it only ran on live testnets. Owners should work on fixing it.")

Copilot uses AI. Check for mistakes.
Comment on lines 60 to +61
t.Run("BHS Job with complete E2E - wait 256 blocks to see if Rand Request is fulfilled", func(t *testing.T) {
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
Copy link

Copilot AI Mar 26, 2026

Choose a reason for hiding this comment

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

PR description mentions "use a stronger runner for LogPoller tests" but this PR only changes VRF BHS tests. If LogPoller changes are no longer part of this PR, please update the description (or include the missing changes) to avoid confusion for reviewers/release notes.

Copilot uses AI. Check for mistakes.
Comment on lines +116 to +117
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
// Failure reason: blockhash not found in the store.
Copy link

Copilot AI Mar 26, 2026

Choose a reason for hiding this comment

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

t.Skip is unconditional, but the message says the test is flaky on CI. As written, it will also skip for local/manual runs (including on live testnets), which makes it hard to reproduce or debug. Consider gating the skip on a CI signal (e.g., os.Getenv("CI")/GITHUB_ACTIONS) or using an explicit opt-in env var to run the E2E path.

Copilot uses AI. Check for mistakes.
@trunk-io
Copy link

trunk-io bot commented Mar 26, 2026

Static BadgeStatic BadgeStatic BadgeStatic Badge

View Full Report ↗︎Docs

@cl-sonarqube-production
Copy link

@Tofel Tofel enabled auto-merge March 26, 2026 11:14
})

t.Run("BHS complete E2E fund later and fulfill", func(t *testing.T) {
t.Skip("This test is flaky on CI. Originally it only run on live testnets. Owners should work on fixing it.")
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can we just mark this as flaky in Trunk instead of direct skip?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

why would we do that? original was also skipped.

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.

3 participants