Separate CodeQL bundle resolution from installation - #4145
Conversation
Co-authored-by: Copilot App <[email protected]>
There was a problem hiding this comment.
Warning
- Copilot's review of this pull request may be incomplete because some of the changed files are excluded by your Copilot content exclusion settings. See Excluding content from Copilot for details.
Copilot review overview
🟢 Approval recommended
The refactor preserves existing behavior and includes comprehensive focused tests.
Review tier: Balanced
Findings: None
What changed in this PR
Separates CodeQL bundle resolution from download and installation while preserving existing behavior.
Changes:
- Introduces a resolved download-source model.
- Moves toolcache cleanup into download orchestration.
- Expands version, caching, cleanup, and failure tests.
| File | Description |
|---|---|
src/setup-codeql.ts |
Refactors bundle resolution and download orchestration. |
src/setup-codeql.test.ts |
Adds focused orchestration and edge-case coverage. |
src/codeql.test.ts |
Tests version reporting and cache keys. |
lib/entry-points.js |
Excluded generated artifact; not reviewed. |
Files excluded by content exclusion policy (1)
- lib/entry-points.js
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
mbg
left a comment
There was a problem hiding this comment.
Mostly minor comments on this, largely related to the documentation. At a high-level, I think this PR is a bit harder to review than it needs to be, because all of the changes are in one commit. There are several refactorings here that could have been split up or done in stages.
Co-authored-by: Copilot App <[email protected]>
mbg
left a comment
There was a problem hiding this comment.
Thank you for making those minor improvements and addressing all of my review comments! I spotted a couple of minor things in the changes in the last commit that could be improved further, but again nothing major or blocking.
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Pass a resolved bundle source to the downloader instead of separate URL, compression, and version arguments. Keep version reporting in setup and move toolcache cleanup into download orchestration. Bundle selection, cache keys, and local installation behavior are unchanged.
Risk assessment
For internal use only. Please select the risk level of this change:
Which use cases does this change impact?
Workflow types:
dynamicworkflows (Default Setup, Code Quality, ...).Products:
analysis-kinds: code-scanning.analysis-kinds: code-quality.Environments:
github.comand/or GitHub Enterprise Cloud with Data Residency.How did/will you validate this change?
.test.tsfiles).All 101 tests in the combined setup-codeql, codeql, and tools-download suites passed. TypeScript compilation, runtime generation, and scoped lint also passed.
If something goes wrong after this change is released, what are the mitigation and rollback strategies?
How will you know if something goes wrong after this change is released?
Are there any special considerations for merging or releasing this change?
Merge / deployment checklist