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