ci(nextest): demote gear-lazy-pages leak detection to non-fatal#5513
ci(nextest): demote gear-lazy-pages leak detection to non-fatal#5513grishasobol wants to merge 2 commits into
Conversation
gear-lazy-pages tests trip LEAK-FAIL on macos-aarch64 (Apple Silicon) debug runs even though every test passes its assertions. Reproduced on trivial tests like pages::tests::end_offset that do nothing but arithmetic: the test function returns in <20ms but the binary process does not close its stdout/stderr handles within nextest's default 5s leak-timeout, so nextest marks it leaky. The crate pulls in wasmer-vm and (on Apple) the mach exception-ports plumbing. Their teardown at process exit can exceed 5s on a busy GHA runner; this is the same shape as the ethexe-service flake fixed in 4857095. Same mitigation: 10s leak window with result = pass for gear-lazy-pages. Leaks still surface in nextest output for inspection but no longer fail the run. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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 intermittent CI failures in the gear-lazy-pages package caused by false-positive leak detection in nextest. Due to slow teardown of dependencies like wasmer-vm on macOS runners, the default 5-second leak window was being exceeded. The changes extend this window to 10 seconds and demote leak failures to non-fatal, ensuring that actual test assertions remain the primary indicator of success or failure. Highlights
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 updates the .config/nextest.toml configuration file to add a test profile override for the gear-lazy-pages package. Specifically, it increases the leak timeout period to 10 seconds and sets the result to pass. This change addresses occasional test failures on busy Apple Silicon runners caused by the teardown of wasmer-vm and mach exception ports exceeding the default leak window. I have no feedback to provide as there are no review comments.
Updated comment to clarify wasm execution VM behavior.
|
Not actual after #4860 |
Summary
gear-lazy-pagestests sporadically tripLEAK-FAILon thebuild / unix / macos-aarch64 (debug)job even though every test passes its assertions (e.g. https://github.com/gear-tech/gear/actions/runs/26409463111/job/77745159307).pages::tests::end_offset— pure arithmetic, no I/O. The test function returns in <20ms but the binary process does not close its stdout/stderr handles within nextest's default 5s leak window, so nextest marks the run leaky.wasmer-vmand (on Apple Silicon) themachexception-ports plumbing; their teardown at process exit can exceed 5s on a busy GHA runner. Same shape as theethexe-serviceflake fixed in 4857095.result = passforgear-lazy-pages. Leaks still surface in nextest output for inspection but no longer fail the run.Test plan
leak-timeoutand will still fail the run🤖 Generated with Claude Code