diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7e506e050..6c81e257d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -311,15 +311,11 @@ jobs: run: npm run verify:inspector apple-artifacts: - name: Real Apple artifact CLI/MCP E2E (${{ matrix.group }}) + name: Real Apple artifact CLI/MCP E2E needs: changes if: needs.changes.outputs.apple == 'true' runs-on: macos-15 timeout-minutes: 15 - strategy: - fail-fast: false - matrix: - group: [artifacts, native-regressions] steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 @@ -328,7 +324,6 @@ jobs: cache: npm - run: npm ci - name: Verify Apple artifact formats and metadata - if: matrix.group == 'artifacts' run: | npm run verify:keyed-archive npm run verify:asset-catalog @@ -337,7 +332,6 @@ jobs: npm run verify:apple-dispatch npm run verify:interface-builder - name: Run native Apple and process boundary regressions - if: matrix.group == 'native-regressions' run: >- npm run test:focused -- tests/boundary/filesystem/installScript.test.ts diff --git a/docs/testing.md b/docs/testing.md index 45f624923..82c6f0263 100644 --- a/docs/testing.md +++ b/docs/testing.md @@ -835,11 +835,10 @@ target-free analysis, configuration backups/recovery, Evidence and owned lifecycle; Inspector checks execute source-owned loopback targets and special filename cases. -The Apple artifact CLI/MCP lane uses two macOS jobs: artifact-format and metadata -verifiers run together in one group, while the existing focused native and -process-boundary regressions run in the other. Both groups retain the same -`macos-15` host and timeout; the process-boundary test group remains ordered -within its Vitest run. +The Apple artifact CLI/MCP lane uses one `macos-15` job to avoid adding demand +for scarce macOS runner capacity. It runs the artifact-format and metadata +verifiers, followed by one consolidated focused invocation containing all +existing native and process-boundary regression paths. The Linux source-test shards download a shared runtime and generated test metadata snapshot produced by the build job with `npm run test:prepare`. The