René's URL Explorer Experiment


Title: fix(start-proxy): explicitly fail when proxy retries are exhausted by iaadillatif · Pull Request #3531 · github/codeql-action · GitHub

Open Graph Title: fix(start-proxy): explicitly fail when proxy retries are exhausted by iaadillatif · Pull Request #3531 · github/codeql-action

X Title: fix(start-proxy): explicitly fail when proxy retries are exhausted by iaadillatif · Pull Request #3531 · github/codeql-action

Description: This PR hardens proxy startup reliability by converting a silent false-success scenario into an explicit failure. Fixes #3530 issue Previously, the startup loop could exhaust retry attempts without throwing a terminal error. In such cases, outputs could still be set and execution would continue even though the proxy process was not running. Before: Proxy started successfully [process exited immediately] After: Failed to start proxy after 5 attempts (last exit code: 1) This change ensures that proxy initialization fails fast if stabilization does not occur. Root Cause The previous control flow: Retried startup attempts Only threw on immediate spawn error Did not explicitly fail after retry exhaustion Could report success if no process remained alive This allowed workflows to proceed with a non-functional proxy. Changes 1. Extracted startup logic Created src/start-proxy/launcher.ts: Encapsulates startup behavior. Allows dependency injection for testing. Improves separation of concerns. 2. Explicit retry exhaustion handling Tracks lastExitCode. Verifies process remains alive after stabilization delay. Throws Error("Failed to start proxy after 5 attempts (last exit code: X)") when no stable process remains. 3. Tests Added launcher.test.ts covering: Retry exhaustion with exit code diagnostics. Spawn error propagation. Successful stabilization and output configuration. Backward Compatibility No change to output names No change to telemetry format No change to wrapper success/failure reporting No new inputs introduced Behavioral impact is limited to converting silent false-positive startup into explicit failure. Testing Executed: npm run lint npm run build npm run test Added tests in: src/start-proxy/launcher.test.ts All new launcher tests pass on Node 24+. Covering: Exhausted retries Spawn error propagation Stable process success path Why This Matters This improves workflow reliability by: Ensuring failures surface at the correct lifecycle stage Reducing downstream noise Providing clearer diagnostics Fail-fast behavior improves user debugging experience and system robustness.

Open Graph Description: This PR hardens proxy startup reliability by converting a silent false-success scenario into an explicit failure. Fixes #3530 issue Previously, the startup loop could exhaust retry attempts without...

X Description: This PR hardens proxy startup reliability by converting a silent false-success scenario into an explicit failure. Fixes #3530 issue Previously, the startup loop could exhaust retry attempts without...

Opengraph URL: https://github.com/github/codeql-action/pull/3531

X: @github

direct link

Domain: github.com

react-profiling0
react-import-mapreact,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf
route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:f98f28d3-7818-a53b-c4eb-f78afba3fb52
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idB04C:C8434:9CADFD:CB9B78:6AED3E2A
html-safe-noncee1e5dc003ab2055fa04b4aec2566418563be6f6604a2ae6c854400c6646d2d0e
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCMDRDOkM4NDM0OjlDQURGRDpDQjlCNzg6NkFFRDNFMkEiLCJ2aXNpdG9yX2lkIjoiNDUyMTczODc0MDYzOTI4NDc3OCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmacd5635a53411c70ac55cd096a8bb74a7553a3e64799c6f7466fc665fd9ab3124e
hovercard-subject-tagpull_request:3341496457
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/github/codeql-action/pull/3531/files
twitter:imagehttps://avatars.githubusercontent.com/u/145087959?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/145087959?s=400&v=4
og:image:altThis PR hardens proxy startup reliability by converting a silent false-success scenario into an explicit failure. Fixes #3530 issue Previously, the startup loop could exhaust retry attempts without...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None26c92a9388ddfad3fa88d132b5d5f0b4747030233dcc4e5efb05f1cbae152184
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/github/codeql-action git https://github.com/github/codeql-action.git
octolytics-dimension-user_id9919
octolytics-dimension-user_logingithub
octolytics-dimension-repository_id259445878
octolytics-dimension-repository_nwogithub/codeql-action
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id259445878
octolytics-dimension-repository_network_root_nwogithub/codeql-action
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasec629ad99c254d306375fc8354d04321c2c362236
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/github/codeql-action/pull/3531/files#start-of-content
https://github.com/
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgithub%2Fcodeql-action%2Fpull%2F3531%2Ffiles
GitHubRepository hosting, code review, and collaborationhttps://github.com/platform
CopilotAI coding agent for tasks, projects, and automated workhttps://github.com/features/copilot
ActionsCI/CD and automationhttps://github.com/features/actions
Code QualityQuality analysis, fixes, and enforcementhttps://github.com/features/code-quality
CodespacesCloud development environmentshttps://github.com/features/codespaces
Code SecurityVulnerability detection and remediationhttps://github.com/security/advanced-security/code-security
Secret ProtectionSecret scanning and leak preventionhttps://github.com/security/advanced-security/secret-protection
All Featureshttps://github.com/features
Documentationhttps://docs.github.com/en
Traininghttps://learn.github.com/skills
Certificationshttps://learn.github.com/credentials
Build with Copilothttps://github.com/features/ai
Customize Copilothttps://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/customize-copilot-overview
Integrationshttps://github.com/marketplace
Trending reposhttps://github.com/trending
GitHub Sponsorshttps://github.com/open-source/sponsors
Developer articleshttps://github.com/resources/articles
ChangelogYour source for the latest features, improvements, and fixes across GitHub products, all in one place.https://github.blog/changelog/
Enterpriseshttps://github.com/enterprise
Teamhttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
See all industrieshttps://github.com/solutions/industry
Why GitHubhttps://github.com/why-github
Customer Storieshttps://github.com/customer-stories
Business insightshttps://github.com/solutions/executive-insights
Trust Centerhttps://github.com/trust-center
GitHub Advanced SecurityEnterprise-grade code securityhttps://github.com/security/advanced-security
Copilot for businessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Documentationhttps://docs.github.com/en
Resource centerhttps://github.com/resources
Bloghttps://github.blog/
Events & webinarshttps://github.com/resources/events
Community Forumhttps://github.com/orgs/community/discussions
Customer Storieshttps://github.com/customer-stories
Integrationshttps://github.com/marketplace
Customer supporthttps://help.github.com/
Traininghttps://learn.github.com/skills
GitHub Statushttps://www.githubstatus.com/
Abouthttps://github.com/about
Partnershttps://github.com/partners
Changeloghttps://github.blog/changelog/
GitHub UniverseThe event for developers, by developers — talks, workshops, and what’s next for GitHub.https://githubuniverse.com/
Pricinghttps://github.com/pricing
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgithub%2Fcodeql-action%2Fpull%2F3531%2Ffiles
Sign uphttps://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=github%2Fcodeql-action
Reloadhttps://github.com/github/codeql-action/pull/3531/files
Reloadhttps://github.com/github/codeql-action/pull/3531/files
Reloadhttps://github.com/github/codeql-action/pull/3531/files
githubhttps://github.com/github
codeql-actionhttps://github.com/github/codeql-action
Codehttps://github.com/github/codeql-action
Issues165 (165)https://github.com/github/codeql-action/issues
Pull requests41 (41)https://github.com/github/codeql-action/pulls
Actionshttps://github.com/github/codeql-action/actions
Security and quality2 (2)https://github.com/github/codeql-action/security
Insightshttps://github.com/github/codeql-action/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fgithub%2Fcodeql-action%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fgithub%2Fcodeql-action%2Fissues%2Fnew%2Fchoose
iaadillatifhttps://github.com/iaadillatif
github:mainhttps://github.com/github/codeql-action/tree/main
iaadillatif:fix/start-proxy-retry-exhaustionhttps://github.com/iaadillatif/codeql-action/tree/fix/start-proxy-retry-exhaustion
Conversation 3 https://github.com/github/codeql-action/pull/3531
Commits 1 https://github.com/github/codeql-action/pull/3531/commits
Checks 0 https://github.com/github/codeql-action/pull/3531/checks
Files changed https://github.com/github/codeql-action/pull/3531/files
Please reload this pagehttps://github.com/github/codeql-action/pull/3531/files
fix(start-proxy): explicitly fail when proxy retries are exhausted https://github.com/github/codeql-action/pull/3531/files#top
Show all changes 1 commit https://github.com/github/codeql-action/pull/3531/files
eb577a5 fix(start-proxy): fail explicitly when proxy retries exhausted and im… iaadillatif Mar 1, 2026 https://github.com/github/codeql-action/pull/3531/commits/eb577a588bc7a2c6452e36ce423be735248bae87
Clear filters https://github.com/github/codeql-action/pull/3531/files
Please reload this pagehttps://github.com/github/codeql-action/pull/3531/files
Please reload this pagehttps://github.com/github/codeql-action/pull/3531/files
start-proxy-action.js https://github.com/github/codeql-action/pull/3531/files#diff-9ef3265f6cc827943cc3edade4225dacb911ccb9d6891b38d0e744208d0dbe99
start-proxy-action.ts https://github.com/github/codeql-action/pull/3531/files#diff-cd9fa9ce5ae4ab6ca00904ff3fe18f012544499a88d8d55659b17632b8da7d8a
launcher.test.ts https://github.com/github/codeql-action/pull/3531/files#diff-e5f31f3eb98b0056f4c06620653e471626de61dc4eac547c2d5edfb342965198
launcher.ts https://github.com/github/codeql-action/pull/3531/files#diff-b43ddc9720daf644ced188ed02a948c299d47ba7de5b0b289087aaa0418bae61
Please reload this pagehttps://github.com/github/codeql-action/pull/3531/files
Please reload this pagehttps://github.com/github/codeql-action/pull/3531/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.