Skip to content

Always remove settled tasks from scheduler queues when stale timeout is disabled#505

Open
Copilot wants to merge 2 commits into
mainfrom
copilot/fix-scheduler-task-leak
Open

Always remove settled tasks from scheduler queues when stale timeout is disabled#505
Copilot wants to merge 2 commits into
mainfrom
copilot/fix-scheduler-task-leak

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 15, 2026

  • Locate scheduler task cleanup logic and related tests
  • Run baseline validation (lint, build, tests) to capture current state
  • Implement minimal scheduler fix so completed/rejected tasks are always removed
  • Add/adjust focused tests for stale-timeout-disabled cleanup behavior
  • Run targeted tests for scheduler behavior
  • Run full validation (lint, build, tests) and parallel validation
  • Share summary of changes and results

Copilot AI linked an issue May 15, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Fix task scheduler memory leak when stale timeout is disabled Always remove settled tasks from scheduler queues when stale timeout is disabled May 15, 2026
Copilot finished work on behalf of MSNev May 15, 2026 21:36
Copilot AI requested a review from MSNev May 15, 2026 21:36
@MSNev
Copy link
Copy Markdown
Contributor

MSNev commented May 15, 2026

@copilot explain why there are no changes to fix this issue?

Copy link
Copy Markdown
Contributor Author

Copilot AI commented May 15, 2026

@copilot explain why there are no changes to fix this issue?

You’re right — the prior commit only contained the initial plan and no code fix. I’ve now pushed the actual fix and test coverage in commit f2400f2 (scheduler cleanup now removes tasks from both running/waiting queues, and adds a staleTimeout(0) queue-cleanup regression test).

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4699 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-41358618 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,5978003076304371102,11230692761731136208,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,5437006664148670216,17222556617054254721,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
    • Triggering command: /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome --user-data-dir=/tmp/karma-41358618 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu --disable-web-security --disable-dev-shm-usage http://localhost:9876/?id=41358618 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4940 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57668136 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,8333439997554850951,1467885476475177177,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,15180970467649142697,12497101424162373868,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
  • android.clients.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4699 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-41358618 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,5978003076304371102,11230692761731136208,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,5437006664148670216,17222556617054254721,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
    • Triggering command: /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome --user-data-dir=/tmp/karma-41358618 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu --disable-web-security --disable-dev-shm-usage http://localhost:9876/?id=41358618 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4940 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57668136 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,8333439997554850951,1467885476475177177,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,15180970467649142697,12497101424162373868,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4699 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-41358618 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,5978003076304371102,11230692761731136208,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,5437006664148670216,17222556617054254721,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
    • Triggering command: /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome --user-data-dir=/tmp/karma-41358618 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu --disable-web-security --disable-dev-shm-usage http://localhost:9876/?id=41358618 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4940 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57668136 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,8333439997554850951,1467885476475177177,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,15180970467649142697,12497101424162373868,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4699 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-41358618 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,5978003076304371102,11230692761731136208,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,5437006664148670216,17222556617054254721,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
    • Triggering command: /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome --user-data-dir=/tmp/karma-41358618 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu --disable-web-security --disable-dev-shm-usage http://localhost:9876/?id=41358618 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4940 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57668136 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,8333439997554850951,1467885476475177177,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,15180970467649142697,12497101424162373868,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
  • update.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4699 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-41358618 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,5978003076304371102,11230692761731136208,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,5437006664148670216,17222556617054254721,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
    • Triggering command: /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome --user-data-dir=/tmp/karma-41358618 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu --disable-web-security --disable-dev-shm-usage http://localhost:9876/?id=41358618 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4940 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57668136 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,8333439997554850951,1467885476475177177,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,15180970467649142697,12497101424162373868,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4699 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-41358618 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,5978003076304371102,11230692761731136208,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,5437006664148670216,17222556617054254721,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
    • Triggering command: /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome /home/REDACTED/.cache/puppeteer/chrome/linux-148.0.7778.97/chrome-linux64/chrome --user-data-dir=/tmp/karma-41358618 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu --disable-web-security --disable-dev-shm-usage http://localhost:9876/?id=41358618 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=network --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4940 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57668136 --change-stack-guard-on-fork=enable --shared-files=network_parent_dirs_pipe:100,v8_context_snapshot_data:101 --field-trial-handle=3,i,8333439997554850951,1467885476475177177,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,15180970467649142697,12497101424162373868,4 --trace-process-track-uuid=3190708989122997041 git (dns block)
  • www.googleapis.com
    • Triggering command: /usr/local/bin/node node install.js (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot finished work on behalf of MSNev May 15, 2026 22:12
@MSNev MSNev marked this pull request as ready for review May 15, 2026 22:23
@MSNev MSNev requested review from a team as code owners May 15, 2026 22:23
@codecov
Copy link
Copy Markdown

codecov Bot commented May 15, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.56%. Comparing base (1678613) to head (f2400f2).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #505   +/-   ##
=======================================
  Coverage   97.56%   97.56%           
=======================================
  Files          27       27           
  Lines        1439     1440    +1     
  Branches      339      339           
=======================================
+ Hits         1404     1405    +1     
  Misses         35       35           
Files with missing lines Coverage Δ
lib/src/scheduler/taskScheduler.ts 98.65% <100.00%> (+<0.01%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

Bug: Scheduler leaks tasks when stale timeout is disabled

2 participants