GeezerVison is showing github.com — Refactor how the `checkout_path` input is obtained by mbg · Pull Request #4157 · github/codeql-action
Conversation
mbg
commented
Sep 22, 2026
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
A few cherry-picked commits from the draft PR at #4148. These commits just refactor some existing logic that mainly affects the analyze action, where several places query the checkout_path input directly. The refactor here changes this so that the input is only queried once and propagated explicitly to other use sites (with the exception of in workflow.ts and git-utils.ts, which will be addressed separately in the future).
Risk assessment
For internal use only. Please select the risk level of this change:
- Low risk: Changes are fully under feature flags, or have been fully tested and validated in pre-production environments and are highly observable, or are documentation or test only.
Which use cases does this change impact?
Workflow types:
- Advanced setup - Impacts users who have custom CodeQL workflows.
- Managed - Impacts users with
dynamic workflows (Default Setup, Code Quality, ...).
Products:
- Code Scanning - The changes impact analyses when
analysis-kinds: code-scanning.
- Code Quality - The changes impact analyses when
analysis-kinds: code-quality.
- Other first-party - The changes impact other first-party analyses.
- Third-party analyses - The changes affect the
upload-sarif action.
Environments:
- Dotcom - Impacts CodeQL workflows on
github.com and/or GitHub Enterprise Cloud with Data Residency.
- GHES - Impacts CodeQL workflows on GitHub Enterprise Server.
How did/will you validate this change?
- Unit tests - I am depending on unit test coverage (i.e. tests in
.test.ts files).
- End-to-end tests - I am depending on PR checks (i.e. tests in
pr-checks).
If something goes wrong after this change is released, what are the mitigation and rollback strategies?
- Rollback - Change can only be disabled by rolling back the release or releasing a new version with a fix.
How will you know if something goes wrong after this change is released?
- Telemetry - I rely on existing telemetry or have made changes to the telemetry.
- Dashboards - I will watch relevant dashboards for issues after the release. Consider whether this requires this change to be released at a particular time rather than as part of a regular release.
- Alerts - New or existing monitors will trip if something goes wrong with this change.
Are there any special considerations for merging or releasing this change?
- No special considerations - This change can be merged at any time.
Merge / deployment checklist
- Confirm this change is backwards compatible with existing workflows.
- Consider adding a changelog entry for this change.
- Confirm the readme and docs have been updated if necessary.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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
🟡 Changes recommended
Existing analyze-action tests may fail because the new actions-based input lookup is not configured.
Get a fresh assessment by requesting another Copilot review.
Review effort: Balanced
Findings: 1
· 1 
Open (2)
What changed in this PR
Refactors checkout_path retrieval so the analyze action reads it once and explicitly propagates it.
Changes:
- Passes
checkoutPath to diff analysis, caching, and database upload.
- Migrates environment reads to
ActionState.env.
- Updates database-upload tests for the new state-based API.
| File |
Description |
src/analyze-action.ts |
Retrieves and propagates checkout_path. |
src/analyze.ts |
Accepts the checkout path explicitly. |
src/database-upload.ts |
Uses propagated state and checkout path. |
src/database-upload.test.ts |
Updates calls for the refactored API. |
src/overlay/caching.ts |
Accepts checkout path explicitly. |
src/init-action.ts |
Uses state-based environment access. |
src/setup-codeql-action.ts |
Uses state-based environment access. |
lib/entry-points.js |
Generated bundle; excluded from review. |
Files excluded by content exclusion policy (1)
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
This was referenced Sep 23, 2026
Uh oh!
There was an error while loading. Please reload this page.
Assignees
No one assigned
Labels
size/M
Should be of average difficulty to review
Milestone
No milestone
Development
Successfully merging this pull request may close these issues.
Uh oh!
There was an error while loading. Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.