mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
ci(windows): non-blocking via continue-on-error; drop the warning wrapper and the demo test
The ::warning:: wrapper kept the lane job green on failure — honest about not gating merges, but a Windows regression was visible only as an annotation buried in the run summary. GitHub has no yellow job state, so the choice is green+annotation (too hidden) or a red X on a non-required job (visible, still non-blocking). Take the red X: job-level continue-on-error, plain 'Run gates' step, one less wrapper. The step stays on the runner's native pwsh — never shell: bash — per the MSYS-parent leak recorded in the windows-support RFC. Also remove the temporary Windows-only failing demo test that exercised the wrapper's annotation path (REVERT ME commit a496b9ae).
This commit is contained in:
19
.github/workflows/ci.yml
vendored
19
.github/workflows/ci.yml
vendored
@@ -161,7 +161,7 @@ jobs:
|
||||
run: uv run --python 3.10 --group test --project python/sdk pytest
|
||||
|
||||
# Blocking Windows build lane: keep the already-green native build protected
|
||||
# while the broader observational gate job below exposes the remaining
|
||||
# while the broader observational gate matrix below exposes the remaining
|
||||
# portability work without blocking mainline merges.
|
||||
windows-build:
|
||||
runs-on: windows-2025
|
||||
@@ -182,10 +182,12 @@ jobs:
|
||||
- name: Build (tsc -b + tsdown)
|
||||
run: pnpm run build
|
||||
|
||||
# Observational Windows mirror of the Linux gate lanes. Snapshot stays
|
||||
# Linux-only while its replay goldens remain platform-specific. The wrapper
|
||||
# runs from native PowerShell 7 so an MSYS parent cannot leak into the suite.
|
||||
# Observational, non-blocking Windows mirror of the Linux gate lanes. Snapshot
|
||||
# stays Linux-only while its replay goldens remain platform-specific. Run the
|
||||
# gates from native PowerShell: an MSYS parent would change the environment
|
||||
# being measured. This job intentionally stays out of all-checks-passed.needs.
|
||||
windows-gates:
|
||||
continue-on-error: true
|
||||
runs-on: windows-2025
|
||||
name: windows node 24 / ${{ matrix.lane }}
|
||||
env:
|
||||
@@ -244,7 +246,6 @@ jobs:
|
||||
run: '"path=$(pnpm store path --silent)" >> $env:GITHUB_OUTPUT'
|
||||
|
||||
- uses: actions/cache@v4
|
||||
if: matrix.lane == 'lint'
|
||||
with:
|
||||
path: ${{ steps.pnpm-store.outputs.path }}
|
||||
key: ${{ runner.os }}-node-${{ env.PRIMARY_NODE_VERSION }}-pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
@@ -256,6 +257,7 @@ jobs:
|
||||
run: pnpm install --frozen-lockfile
|
||||
|
||||
- uses: actions/cache@v4
|
||||
if: matrix.lane == 'lint'
|
||||
with:
|
||||
path: .cache/eslint
|
||||
key: ${{ runner.os }}-node-${{ env.PRIMARY_NODE_VERSION }}-eslint-${{ hashFiles('pnpm-lock.yaml', 'eslint.config.mjs', 'tsconfig.json', 'packages/*/*/tsconfig.json', 'examples/*/tsconfig.json') }}
|
||||
@@ -264,12 +266,7 @@ jobs:
|
||||
|
||||
- name: Run gates
|
||||
shell: pwsh
|
||||
run: |
|
||||
${{ matrix.command }}
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Write-Output "::warning::Windows lane '${{ matrix.lane }}' failed (exit $LASTEXITCODE) — observational, does not block merge. See logs above."
|
||||
}
|
||||
exit 0
|
||||
run: ${{ matrix.command }}
|
||||
|
||||
# Single stable required check for branch protection: require "all checks
|
||||
# passed" instead of enumerating matrix legs whose names change as lanes and
|
||||
|
||||
Reference in New Issue
Block a user