ci(release): stop running the PR-quality gate on tag releases

Release is gated on the tag only. `bun run verify` runs on PRs and locally,
not at release time, so a failing quality gate no longer blocks publishing.

- release-desktop.yml: remove the quality-preflight job and its `needs`.
- release-workflow.test.ts: assert the release workflow does NOT run verify.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
程序员阿江(Relakkes) 2026-06-04 00:17:51 +08:00
parent 145af8f18f
commit b8aef893d2
2 changed files with 5 additions and 36 deletions

View File

@ -19,36 +19,6 @@ concurrency:
cancel-in-progress: true
jobs:
quality-preflight:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
- name: Install root dependencies
run: bun install
- name: Install desktop dependencies
working-directory: desktop
run: bun install
- name: Install adapter dependencies
working-directory: adapters
run: bun install
- name: Verify PR-quality gate before release packaging
run: bun run verify
signing-preflight:
runs-on: ubuntu-latest
outputs:
@ -93,7 +63,6 @@ jobs:
build:
needs:
- quality-preflight
- signing-preflight
strategy:
fail-fast: false

View File

@ -12,12 +12,13 @@ describe('release desktop workflow', () => {
)?.[0]
}
test('build job waits for a PR-quality preflight before packaging', () => {
test('release packaging does not run the PR-quality gate', () => {
const workflow = readReleaseWorkflow()
expect(workflow).toContain('quality-preflight:')
expect(workflow).toContain('run: bun run verify')
expect(workflow).toContain('- quality-preflight')
// Quality gates run on PRs, not at release time: tagging should not be
// blocked by `bun run verify`. Releasing is gated on the tag only.
expect(workflow).not.toContain('quality-preflight')
expect(workflow).not.toContain('bun run verify')
expect(workflow).toContain('name: Build (${{ matrix.label }})')
})
@ -144,7 +145,6 @@ describe('release desktop workflow', () => {
expect(macRequiredBlock).not.toContain('exit 1')
expect(windowsOptionalBlock).toContain('::warning::')
expect(windowsOptionalBlock).not.toContain('exit 1')
expect(buildJob).toContain('- quality-preflight')
expect(buildJob).toContain('- signing-preflight')
expect(workflow.indexOf('signing-preflight:')).toBeLessThan(workflow.indexOf('build:'))
expect(workflow.indexOf('signing-preflight:')).toBeLessThan(workflow.indexOf('Upload release artifacts for final publish'))