@@ -760,10 +760,12 @@ export async function getOverlayDatabaseMode(
760760 overlayDatabaseMode : OverlayDatabaseMode ;
761761 useOverlayDatabaseCaching : boolean ;
762762 skippedDueToCachedStatus : boolean ;
763+ disabledByRepositoryProperty : boolean ;
763764} > {
764765 let overlayDatabaseMode = OverlayDatabaseMode . None ;
765766 let useOverlayDatabaseCaching = false ;
766767 let skippedDueToCachedStatus = false ;
768+ let disabledByRepositoryProperty = false ;
767769
768770 const modeEnv = process . env . CODEQL_OVERLAY_DATABASE_MODE ;
769771 // Any unrecognized CODEQL_OVERLAY_DATABASE_MODE value will be ignored and
@@ -786,6 +788,7 @@ export async function getOverlayDatabaseMode(
786788 `because the ${ RepositoryPropertyName . DISABLE_OVERLAY } repository property is set to true.` ,
787789 ) ;
788790 overlayDatabaseMode = OverlayDatabaseMode . None ;
791+ disabledByRepositoryProperty = true ;
789792 } else if (
790793 await isOverlayAnalysisFeatureEnabled (
791794 features ,
@@ -856,6 +859,7 @@ export async function getOverlayDatabaseMode(
856859 overlayDatabaseMode : OverlayDatabaseMode . None ,
857860 useOverlayDatabaseCaching : false ,
858861 skippedDueToCachedStatus,
862+ disabledByRepositoryProperty,
859863 } ;
860864
861865 if ( overlayDatabaseMode === OverlayDatabaseMode . None ) {
@@ -921,6 +925,7 @@ export async function getOverlayDatabaseMode(
921925 overlayDatabaseMode,
922926 useOverlayDatabaseCaching,
923927 skippedDueToCachedStatus,
928+ disabledByRepositoryProperty,
924929 } ;
925930}
926931
@@ -1071,6 +1076,7 @@ export async function initConfig(
10711076 overlayDatabaseMode,
10721077 useOverlayDatabaseCaching,
10731078 skippedDueToCachedStatus : overlaySkippedDueToCachedStatus ,
1079+ disabledByRepositoryProperty : overlayDisabledByRepositoryProperty ,
10741080 } = await getOverlayDatabaseMode (
10751081 inputs . codeql ,
10761082 inputs . features ,
@@ -1119,6 +1125,31 @@ export async function initConfig(
11191125 ) ;
11201126 }
11211127
1128+ if ( overlayDisabledByRepositoryProperty ) {
1129+ addNoLanguageDiagnostic (
1130+ config ,
1131+ makeDiagnostic (
1132+ "codeql-action/overlay-disabled-by-repository-property" ,
1133+ "Improved incremental analysis disabled by repository property" ,
1134+ {
1135+ attributes : {
1136+ languages : config . languages ,
1137+ } ,
1138+ markdownMessage :
1139+ "Improved incremental analysis has been disabled because the " +
1140+ `\`${ RepositoryPropertyName . DISABLE_OVERLAY } \` repository property is set to \`true\`. ` +
1141+ "To re-enable improved incremental analysis, set this property to `false` or remove it." ,
1142+ severity : "note" ,
1143+ visibility : {
1144+ cliSummaryTable : true ,
1145+ statusPage : true ,
1146+ telemetry : true ,
1147+ } ,
1148+ } ,
1149+ ) ,
1150+ ) ;
1151+ }
1152+
11221153 if (
11231154 overlayDatabaseMode === OverlayDatabaseMode . Overlay ||
11241155 ( await shouldPerformDiffInformedAnalysis (
0 commit comments