diff --git a/.github/AGENTS.md b/.github/AGENTS.md new file mode 100644 index 0000000000..00e3ed8f87 --- /dev/null +++ b/.github/AGENTS.md @@ -0,0 +1,3 @@ +# AGENTS.md — CI gates + +Run Windows gates from native `pwsh`, invoke pnpm shell-free, and normalize repo-relative glob paths to `/` at ingestion. Keep platform fixes at each gate boundary; do not add a shared platform layer. diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bac25b07cb..de9a03288b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -182,11 +182,9 @@ jobs: - name: Build (tsc -b + tsdown) run: pnpm run build - # Observational, non-blocking Windows static, lint, and artifact lanes. Coverage - # and snapshot stay Linux-only until their platform-specific runtime failures - # have dedicated support. 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. + # Observational, non-blocking Windows mirror of the Linux gate lanes. 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 @@ -194,6 +192,7 @@ jobs: env: DSH_GATE_CONCURRENCY: ${{ matrix.gate_concurrency }} DSH_PUBLINT_CONCURRENCY: ${{ matrix.publint_concurrency }} + DSH_COVERAGE_MAX_WORKERS: ${{ matrix.coverage_max_workers }} DSH_ESLINT_CACHE: ${{ matrix.eslint_cache }} strategy: fail-fast: false @@ -203,16 +202,31 @@ jobs: command: pnpm run check:ci:static gate_concurrency: '4' publint_concurrency: '8' + coverage_max_workers: '' eslint_cache: '' - lane: lint command: pnpm run check:ci:lint gate_concurrency: '1' publint_concurrency: '8' + coverage_max_workers: '' eslint_cache: '1' + - lane: coverage + command: pnpm run check:ci:coverage + gate_concurrency: '1' + publint_concurrency: '8' + coverage_max_workers: '4' + eslint_cache: '' + - lane: snapshot + command: pnpm run check:ci:snapshot + gate_concurrency: '1' + publint_concurrency: '8' + coverage_max_workers: '' + eslint_cache: '' - lane: artifacts command: pnpm run check:ci:artifacts gate_concurrency: '3' publint_concurrency: '8' + coverage_max_workers: '' eslint_cache: '' steps: - uses: actions/checkout@v6 diff --git a/scripts/AGENTS.md b/scripts/AGENTS.md new file mode 100644 index 0000000000..2d1ebafc27 --- /dev/null +++ b/scripts/AGENTS.md @@ -0,0 +1,3 @@ +# AGENTS.md — Repository scripts + +Gate-related scripts follow the [CI gate rules](../.github/AGENTS.md).