Merge nucleic/olive-jade-civet-rznt into dev
This commit is contained in:
@@ -25,8 +25,11 @@
|
||||
|
||||
.PARAMETER Target
|
||||
protocol — the wire layer only (the required CI leg; needs no SQLite).
|
||||
core — NucleicCore, the full Windows manifest. EXPECTED TO FAIL until the §12
|
||||
item 7-9 shims land; its output is the M0 gap list, not a regression.
|
||||
core — NucleicCore, the full Windows manifest. Builds green as of the §12 item-9
|
||||
shims; a failure here IS a regression. With -Test it instead runs
|
||||
NucleicCarbonTests, which builds every declared target (nucleic-hostd,
|
||||
NucleicProtocolC, nucleic-smoke) — those are §12 items 10+ and may still
|
||||
fail; that output is what's left of the M0 gap list.
|
||||
broker — the C# nucleic-brokerd contract tests (no Swift involved).
|
||||
all — all three, continuing past a failing leg.
|
||||
|
||||
@@ -182,7 +185,9 @@ function Build-Protocol([hashtable]$sql) {
|
||||
|
||||
function Build-Core([hashtable]$sql) {
|
||||
Write-Step 'core: building NucleicCore (full Windows manifest)'
|
||||
Write-Note 'Expected to fail until the §12 item 7-9 shims land — the errors ARE the M0 gap list.'
|
||||
if ($Test) {
|
||||
Write-Note '-Test builds EVERY target (hostd, NucleicProtocolC, smoke) — §12 items 10+ may still fail.'
|
||||
}
|
||||
# NucleicCore only EXISTS when NUCLEIC_WINDOWS_PROTOCOL_ONLY is absent: with it set,
|
||||
# Package.swift narrows the manifest to [NucleicProtocol, NucleicProtocolTests] and this
|
||||
# fails with "no target named 'NucleicCore'". CI never sets it for this job, but a local
|
||||
@@ -230,14 +235,16 @@ try {
|
||||
Write-Step 'Summary'
|
||||
foreach ($k in $results.Keys) {
|
||||
$ok = $results[$k] -eq 0
|
||||
# core is the known-failing gap probe; don't report it as a red build.
|
||||
$label = if ($ok) { 'PASS' } elseif ($k -eq 'core') { 'FAIL (expected — gap list)' } else { 'FAIL' }
|
||||
$color = if ($ok) { 'Green' } elseif ($k -eq 'core') { 'Yellow' } else { 'Red' }
|
||||
# `core -Test` still reaches unported targets (§12 items 10+), so only that
|
||||
# combination is reported as an expected gap rather than a red build.
|
||||
$gap = ($k -eq 'core') -and $Test
|
||||
$label = if ($ok) { 'PASS' } elseif ($gap) { 'FAIL (expected — items 10+ gap list)' } else { 'FAIL' }
|
||||
$color = if ($ok) { 'Green' } elseif ($gap) { 'Yellow' } else { 'Red' }
|
||||
Write-Host (" {0,-9} {1}" -f $k, $label) -ForegroundColor $color
|
||||
}
|
||||
|
||||
# core's failure is informational; anything else failing is a real build break.
|
||||
$hard = @($results.Keys | Where-Object { $_ -ne 'core' -and $results[$_] -ne 0 })
|
||||
$hard = @($results.Keys | Where-Object {
|
||||
$results[$_] -ne 0 -and -not (($_ -eq 'core') -and $Test) })
|
||||
if ($hard.Count -gt 0) { exit 1 }
|
||||
exit 0
|
||||
} finally {
|
||||
|
||||
Reference in New Issue
Block a user