CI: fix sweep and compat flakes#10828
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses two sources of flakiness in the test suite. First, it improves the robustness of sweep tests by accounting for potential RBF replacements during block mining. Second, it enhances the reliability of cross-version compatibility tests by ensuring routing information is fully synchronized between nodes before payment attempts are initiated. Highlights
New Features🧠 You can now enable Memory (public preview) to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request enhances the reliability of integration and backward compatibility tests. In the Go integration tests, a new helper MineBlockAndAssertOutpointSpent is introduced to correctly handle RBF-sensitive transactions by verifying that a specific outpoint is spent in a block, regardless of the transaction ID. The backward compatibility shell scripts are also updated with a wait_for_route utility to ensure the network graph is sufficiently synced before attempting payments. I have no feedback to provide.
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Fixes CI flakes in itest sweeps and bw compatibility by making assertions resilient to RBF and waiting for routable graph state before sending payments.
Changes:
- Add a compatibility-test helper to wait until
queryroutessucceeds before attempting payments. - Add a harness miner helper to assert a mined block spends a specific outpoint (RBF-stable) rather than relying on pre-mine txids.
- Update the sweep itest to assert the mined sweep spends the pending sweep outpoint (stable across RBF).
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| scripts/bw-compatibility-test/network.sh | Adds wait_for_route and gates payments on route availability to avoid “no route” flakes. |
| lntest/harness_miner.go | Adds block-mining helper that asserts an outpoint is spent in a mined block (RBF-safe). |
| itest/lnd_sweep_test.go | Switches sweep assertion from txid-based to outpoint-spent-based to tolerate RBF replacements. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
🟢 PR Severity: LOW
🟢 Low (3 files)
AnalysisAll changed files fall into the LOW severity category:
No severity bump was triggered: only 1 non-test file changed (threshold: 20), and only 51 non-test lines changed (threshold: 500). This PR only modifies test helpers and a compatibility test script, requiring best-effort review. To override, add a |
bf4d1b1 to
b3c37a2
Compare
Found in #10827
Fix the itest failure
What happened:
ffb0...979cin the mempool before mining.ac13...4c95.and fix the compatibility test
What happened:
queryroutesto succeed before sending each test payment.