Report queried feature flags in status reports by mbg · Pull Request #3437 · github/codeql-action
It is useful to know which feature flags are affecting a particular CodeQL workflow. Although this is typically determined by querying the /features API, it can also be influenced by environment variables, CLI versions, etc.
This PR modifies the Features class to track which feature flags are queried during a particular step and what they evaluated to. This data is then included in status reports when possible.
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
dynamicworkflows (Default Setup, CCR, ...).
Products:
- Code Scanning - The changes impact analyses when
analysis-kinds: code-scanning. - Code Quality - The changes impact analyses when
analysis-kinds: code-quality. - CCR - The changes impact analyses for Copilot Code Reviews.
- Third-party analyses - The changes affect the
upload-sarifaction.
Environments:
- Dotcom - Impacts CodeQL workflows on
github.comand/or GitHub Enterprise Cloud with Data Residency.
How did/will you validate this change?
- Unit tests - I am depending on unit test coverage (i.e. tests in
.test.tsfiles). - 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.