From c3bd2c5c58d103a1644f06cadabae526c6e29b94 Mon Sep 17 00:00:00 2001 From: ModeIO Local Date: Fri, 17 Apr 2026 17:38:32 +0800 Subject: [PATCH] Update: gate package-smoke CI jobs to release branches The macOS package-smoke-arm64 and package-smoke-x64 jobs perform a full PyInstaller build + tarball + npm/homebrew validation roundtrip on every PR and every main push. They run for 1.5-3.5 minutes on top of the macos-* runner queue time, despite being redundant with the Release workflow for normal code changes. Gate them behind 'release/**' branches + workflow_dispatch so: - PR CI: only backend-compat + frontend-validate (~41s) - Push to main CI: same, no package-smoke - Push to release/* branches: full CI including package-smoke - Manual trigger: full CI via workflow_dispatch This cuts typical PR CI wall time from ~4m30s to under 1 minute while keeping release-gate signal intact. --- .github/workflows/ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7d8e8ee..45bf44b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,6 +4,7 @@ on: push: branches: - main + - "release/**" paths-ignore: - README.md - CONTRIBUTING.md @@ -17,6 +18,7 @@ on: - SECURITY.md - LICENSE - assets/** + workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} @@ -88,6 +90,7 @@ jobs: package-smoke-arm64: runs-on: macos-14 + if: startsWith(github.ref, 'refs/heads/release/') || github.event_name == 'workflow_dispatch' needs: - backend-compat - frontend-validate @@ -138,6 +141,7 @@ jobs: package-smoke-x64: runs-on: macos-15-intel + if: startsWith(github.ref, 'refs/heads/release/') || github.event_name == 'workflow_dispatch' needs: - backend-compat - frontend-validate