Skip to content

Commit 0aaa488

Browse files
Fix missing MS-MQOD/MS-THCH downloads: retry pass + lower CI throttle
Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent c8e7dba commit 0aaa488

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

.github/workflows/convert-and-publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050
- name: Build publish tree and windows-protocols.zip
5151
shell: pwsh
5252
working-directory: ${{ github.workspace }}
53-
run: .\scripts\Build-Publish.ps1
53+
run: .\scripts\Build-Publish.ps1 -ThrottleLimit 4
5454

5555
- name: Upload publish artifact
5656
uses: actions/upload-artifact@v4

scripts/Build-Publish.ps1

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,22 @@ try {
7777
[void]$downloadedProtocolIds.Add($result.ProtocolId)
7878
}
7979
}
80+
$missingDownloads = @($catalog | Where-Object { -not $downloadedProtocolIds.Contains($_.ProtocolId) } | Select-Object -ExpandProperty ProtocolId -Unique | Sort-Object)
81+
82+
# Retry missing downloads with lower parallelism (helps with CDN rate limiting in CI)
83+
if ($missingDownloads.Count -gt 0) {
84+
Write-Host "Retrying $($missingDownloads.Count) missing downloads with reduced parallelism..."
85+
Start-Sleep -Seconds 10
86+
$retryCatalog = $catalog | Where-Object { $missingDownloads -contains $_.ProtocolId }
87+
$retryResults = $retryCatalog |
88+
Save-OpenSpecDocument -Format DOCX -OutputPath $dlPath -Force -Parallel -ThrottleLimit 2 |
89+
ForEach-Object { $_ }
90+
foreach ($result in ($retryResults | Where-Object { $_.Status -in 'Downloaded', 'Exists' -and $_.ProtocolId })) {
91+
[void]$downloadedProtocolIds.Add($result.ProtocolId)
92+
}
93+
$downloadResults = @($downloadResultsAll | Where-Object { $_.Status -in 'Downloaded', 'Exists' }) + @($retryResults | Where-Object { $_.Status -in 'Downloaded', 'Exists' })
94+
}
95+
8096
$missingDownloads = @($catalog | Where-Object { -not $downloadedProtocolIds.Contains($_.ProtocolId) } | Select-Object -ExpandProperty ProtocolId -Unique | Sort-Object)
8197
if ($missingDownloads.Count -gt 0) {
8298
throw "Missing downloads for $($missingDownloads.Count) specs: $($missingDownloads -join ', ')"

0 commit comments

Comments
 (0)