312 Commits

Author SHA1 Message Date
Henry Mercer
508b83bc41 Merge main into overlay minimum disk feature branch
Resolve the overlap with the separately shipped promotion of the overlay resource checks while preserving the feature-flagged minimum disk thresholds.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-08-18 12:09:09 +01:00
Michael B. Gale
f47bb7b9aa Remove v2 from test title 2026-08-11 14:08:57 +01:00
Michael B. Gale
c205ff6f09 Promote OverlayAnalysisResourceChecksV2
This feature has been rolled out to 100% and therefore the default behaviour for some time.
2026-08-11 14:03:49 +01:00
Henry Mercer
54109818e0 Address review feedback on the disk space check
Say "at or above" in the debug message logged when the check passes,
since the comparison accepts exactly the minimum.

Check each feature flag against the threshold its name declares, rather
than only exercising a few of them, so that a mistake in one of the
mappings cannot go unnoticed. Both sides of the boundary are needed to
pin a threshold down: a mapping to a lower value would still pass the
case at the limit, and one to a higher value would still fail the case
below it.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-08-06 16:41:48 +01:00
Henry Mercer
6117bb503a Derive overlay minimum disk space from feature flags
Overlay analysis required 20 GB of available disk space, lowered to
14 GB when overlay_analysis_resource_checks_v2 was enabled. That gave
us a single step to roll out, and any further reduction needed another
flag and another release.

Determine the threshold from the new overlay_analysis_min_disk_N_gb
flags instead, taking the lowest one that is enabled so that a lower
limit can be rolled out to a subset of repositories without first
disabling the flag above it. When none are enabled, the 14 GB limit
now applies unconditionally, replacing the 20 GB default.

Thresholds remain in decimal MB, matching the bytes-per-MB convention
the disk check already used, so the effective byte values are unchanged
from the previous 14 GB path. Also log the available and required space
at debug level when the check passes, so that run logs show which
threshold took effect.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-08-06 16:38:33 +01:00
Michael B. Gale
da21ad6a71 Remove NewRemoteFileAddresses FF and default to its behaviour 2026-07-20 11:22:34 +01:00
Michael B. Gale
23339952d6 Add expliciit prefix for remote file addresses 2026-07-15 15:59:23 +01:00
Michael B. Gale
c73d965e34 Add failing test for the issue 2026-07-15 14:31:49 +01:00
Michael B. Gale
9c0c11a49e Add tests for loadUserConfig 2026-07-15 14:31:39 +01:00
Michael B. Gale
f181d70282 Update determineUserConfig tests to use new framework 2026-07-13 09:58:52 +01:00
Michael B. Gale
2773684c29 Update test for changed test API 2026-07-13 09:31:38 +01:00
Michael B. Gale
6973946465 Check file on disk and mutated inputs 2026-07-09 23:09:14 +01:00
Michael B. Gale
d2472aa525 Merge remote-tracking branch 'origin/main' into mbg/config/merge 2026-07-09 23:01:05 +01:00
Michael B. Gale
7ccd988125 Merge branch 'main' into mbg/config/merge 2026-07-08 17:31:19 +01:00
Michael B. Gale
8e22350a7e Thread ActionState to initConfig 2026-07-06 15:46:35 +01:00
Michael B. Gale
9a06fa6b38 Set the required workspacePath input 2026-07-06 14:10:30 +01:00
Michael B. Gale
764f470b74 Test inputs.configFile mutation in tests 2026-07-06 13:50:40 +01:00
Michael B. Gale
d149f93d92 Return mergedConfig instead of loading it again 2026-07-06 13:50:39 +01:00
Michael B. Gale
42c0c6aedd Allow merging Default Setup config with config file 2026-07-06 13:50:39 +01:00
Michael B. Gale
31577749b3 Give determineUserConfig access to the environment 2026-07-06 13:50:39 +01:00
Michael B. Gale
0188f395e2 Add unit tests for existing behaviour of determineUserConfig 2026-07-06 13:50:38 +01:00
Michael B. Gale
12821cff0c Make owner optional in parseRemoteFileAddress 2026-06-23 18:13:16 +01:00
Henry Mercer
72b0f9fed4 Clean up codeql.resolveLanguages
Only the betterjson option is now used, so remove the old version.
2026-06-05 12:50:57 +01:00
Henry Mercer
524532393a Disable missing diff-ranges fallback when overlay enabled manually 2026-06-01 15:34:08 +01:00
Sam Robson
9d7243005b Merge remote-tracking branch 'origin/main' into sam-robson/overlay-fallback
* origin/main: (40 commits)
  Bump the npm-minor group across 1 directory with 3 updates
  Bump actions/create-github-app-token
  Nit: Tweak JSDoc for `getRawLanguagesNoAutodetect`
  Enable only `code-scanning`
  Use overlay-aware version for code scanning exclusively
  Add changelog entry
  Rebuild
  Bump five transitive dependencies
  Throw error if multiple analysis kinds are specified
  Bump fast-xml-builder from 1.1.5 to 1.2.0
  Improve tests
  Improve error message
  Remove dead code
  Remove `makeOverlayMatchFeatures` indirection
  Add JSDoc for `getRawLanguagesNoAutodetect`
  Enable overlay-aware version selection in `setup-codeql`
  Minor: Introduce constant to avoid duplication
  Improve changelog note
  Rebuild
  Update changelog and version after v4.35.4
  ...

# Conflicts:
#	lib/init-action.js
#	src/diff-informed-analysis-utils.test.ts
2026-05-14 13:39:44 +01:00
Henry Mercer
792c223bc1 Merge pull request #3875 from github/dependabot/npm_and_yarn/npm-minor-c8e071f5f8
Bump the npm-minor group across 1 directory with 4 updates
2026-05-08 14:25:05 +00:00
Michael B. Gale
922d6fb888 Use makeMacro instead of test.macro 2026-05-07 14:59:42 +01:00
Sam Robson
e259d26055 refactor: rename overlay-disabled reason and add changelog entry 2026-05-06 20:23:20 +01:00
github-actions[bot]
1848b73afa Rebuild 2026-05-06 18:01:54 +00:00
Sam Robson
3cc8dd3e59 refactor: report missing PR diff ranges via OverlayDisabledReason and disable overlay 2026-04-30 16:12:30 +01:00
Sam Robson
faca00d3ae refactor: address review feedback on overlay fallback 2026-04-23 20:38:10 +01:00
Sam Robson
5d1c58464f refactor: fall back to non-overlay analysis when diff-informed analysis is unavailable 2026-04-23 12:10:22 +01:00
Henry Mercer
90d7616015 Merge branch 'main' into henrymercer/record-all-builtin-languages 2026-04-13 18:00:09 +01:00
Henry Mercer
e6c21da23c Refactoring: Rename KnownLanguage to BuiltInLanguage 2026-04-10 19:09:47 +01:00
Henry Mercer
bad0a744dd Store all built-in languages
While we want the CodeQL Action to work with third-party language support, having a list of all built-in languages can help us create better type-level checks to ensure that we don't miss things that we want to customize for each of our built-in languages.
2026-04-10 19:09:46 +01:00
Henry Mercer
4e8c9ce33c Refactoring: Introduce overlay/caching.ts 2026-04-10 14:55:12 +01:00
Henry Mercer
a507a542a4 Test fallback when repo has no submodules 2026-03-30 15:58:58 +01:00
Henry Mercer
be0a156326 Save a computation of the git root 2026-03-30 13:37:14 +01:00
Henry Mercer
88a7e5118e Don't disable if we don't need the git version 2026-03-27 18:54:26 +00:00
Henry Mercer
6643a7d207 Only require Git 2.36.0 when repo contains submodules 2026-03-27 18:54:24 +00:00
Henry Mercer
28f56f2bed Update minimum Git version required for overlay 2026-03-23 18:36:25 +00:00
idrissrio
074a0dbd16 Feature flag: update test without overlay support 2026-03-19 14:11:02 +01:00
Henry Mercer
926e6dfee5 Stub RUNNER_NAME in unit tests 2026-03-11 20:16:47 +00:00
Henry Mercer
a91b7a3e57 Add unit tests for isTrapCachingEnabled 2026-03-11 19:52:12 +00:00
Henry Mercer
b04e63ffdf Enablement: Move TRAP caching check after overlay 2026-03-11 19:21:17 +00:00
Sam Robson
867f2b0e0a test: verify overlay analysis is disabled for languages without per-language feature flags 2026-03-09 16:46:38 +00:00
Henry Mercer
6d1c37ed8f Fix some tests that should be serial 2026-03-04 18:02:17 +01:00
Henry Mercer
759b5db350 Merge branch 'main' into henrymercer/breakdown-overlay-disabled-reason
# Conflicts:
#	src/config-utils.test.ts
2026-03-04 17:54:35 +01:00
Henry Mercer
60a0e2bf96 Update method naming and JSDoc 2026-03-04 17:50:30 +01:00
Henry Mercer
5fa8dad095 Use Results for enablement return types 2026-03-04 17:36:42 +01:00