You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(labeler): implement SteamCMD Linux support check
* Added a new function `runSteamCmdLinuxCheck` to assess Linux platform support using SteamCMD.
* Enhanced existing logic to incorporate SteamCMD results alongside Steam API checks.
* Updated comments to clarify the distinction between server tool AppIDs and client platform support.
* Improved error handling and logging for SteamCMD assessments.
Co-authored-by: Copilot <copilot@github.com>
const NO_LINUX_LABEL = 'status: no linux support';
@@ -947,7 +1042,11 @@ jobs:
947
1042
if (isSteamNo) reasons.push('request is marked as non-Steam, so Steam platform checks were intentionally skipped');
948
1043
if (noLinuxFromSteam) reasons.push(`Steam API reports no Linux platform support for AppID ${steamAppId}`);
949
1044
if (confirmedLinuxFromSteam) reasons.push(`Steam API reports Linux platform support for AppID ${steamAppId}`);
950
-
if (steamAppIsServerTool) reasons.push(`AppID ${steamAppId} has no Steam store page (common for dedicated server tools) — Steam platform check inconclusive`);
1045
+
if (steamAppIsServerTool) reasons.push(`AppID ${steamAppId} has no Steam store page (typical for dedicated server tool AppIDs) — Steam client platform check is not applicable to server support`);
1046
+
if (noLinuxFromSteamCmd && steamCmdAssessment?.reason) reasons.push(steamCmdAssessment.reason);
1047
+
if (confirmedLinuxFromSteamCmd && steamCmdAssessment?.reason) reasons.push(steamCmdAssessment.reason);
1048
+
if (steamCmdAssessment?.status === 'unknown' && steamCmdAssessment?.reason) reasons.push(steamCmdAssessment.reason);
1049
+
if (steamCmdAssessment?.status === 'error' && steamCmdAssessment?.reason) reasons.push(steamCmdAssessment.reason);
951
1050
if (noLinuxFromAi && aiLinuxAssessment?.reason) reasons.push(`AI analysis of provided documentation: ${aiLinuxAssessment.reason}`);
952
1051
if (linuxYesFromAi && aiLinuxAssessment?.reason) reasons.push(`AI analysis indicates Linux support: ${aiLinuxAssessment.reason}`);
953
1052
if (likelySupportedByCheckbox) reasons.push('requester confirmed Linux support via the form checkbox; no contradicting evidence found');
@@ -959,6 +1058,8 @@ jobs:
959
1058
verdictLine = 'This server request **may not** have native Linux support based on submitted evidence.';
960
1059
} else if (confirmedLinuxFromSteam) {
961
1060
verdictLine = 'Steam metadata confirms this server has Linux platform support.';
1061
+
} else if (confirmedLinuxFromSteamCmd) {
1062
+
verdictLine = 'SteamCMD metadata indicates this server has Linux platform/depot support.';
962
1063
} else if (linuxYesFromAi) {
963
1064
verdictLine = 'Submitted documentation appears to indicate Linux server support.';
964
1065
} else if (likelySupportedByCheckbox) {
@@ -975,16 +1076,33 @@ jobs:
975
1076
? 'Inconclusive — AppID has no store page (typical for dedicated server tools)'
976
1077
: 'No definitive platform response';
977
1078
1079
+
const steamCmdStatus = isSteamNo
1080
+
? 'Not applicable'
1081
+
: !steamAppId
1082
+
? 'Skipped until valid AppID is provided'
1083
+
: steamLinuxSupport !== null
1084
+
? 'Not needed (Steam API returned a definitive result)'
1085
+
: steamCmdAssessment?.status === 'linux'
1086
+
? 'Linux platform/depot metadata found'
1087
+
: steamCmdAssessment?.status === 'windows-only'
1088
+
? 'Windows-only platform metadata found'
1089
+
: steamCmdAssessment?.status === 'unknown'
1090
+
? 'No clear Linux server metadata found'
1091
+
: steamCmdAssessment?.status === 'error'
1092
+
? 'Lookup failed'
1093
+
: 'Not run';
1094
+
978
1095
const steamBlock = isSteamNo
979
1096
? '**Steam:** No (non-Steam request)\n**Steam API:** Not applicable\n\n'
0 commit comments