完善桌面端界面、发布检查与邮箱域名同步
Client Quality Gates / Shared client and Web (push) Has been cancelled
Client Quality Gates / macOS Desktop (push) Has been cancelled

This commit is contained in:
Cheng Zhou
2026-07-01 10:49:31 +08:00
parent c923f887a0
commit 9cac75e85c
32 changed files with 5392 additions and 2684 deletions
+64 -10
View File
@@ -3,14 +3,13 @@ name: Client Quality Gates
on:
pull_request:
paths:
- "AGENTS.md"
- "frontend/**"
- "frontend/scripts/**"
- ".github/workflows/client-quality-gates.yml"
- "docs/branch-governance.md"
- "docs/audits/desktop-release-stabilization-checklist.md"
- "docs/guides/client-release.md"
- "docs/guides/branch-maintenance-sop-zh.md"
- "docs/branch-governance.md"
- "docs/desktop-project-plan.md"
- "docs/desktop-phase-1-design.md"
- "docs/desktop-phase-2-design.md"
- "docs/audits/desktop-release-stabilization-checklist.md"
- "docs/guides/client-release.md"
- "docs/guides/branch-maintenance-sop-zh.md"
@@ -19,10 +18,19 @@ on:
- dev
- main
- release
tags:
- "v*"
paths:
- "AGENTS.md"
- "frontend/**"
- "frontend/scripts/**"
- ".github/workflows/client-quality-gates.yml"
- "docs/branch-governance.md"
- "docs/desktop-project-plan.md"
- "docs/desktop-phase-1-design.md"
- "docs/desktop-phase-2-design.md"
- "docs/audits/desktop-release-stabilization-checklist.md"
- "docs/guides/client-release.md"
- "docs/guides/branch-maintenance-sop-zh.md"
jobs:
web:
@@ -45,6 +53,26 @@ jobs:
- name: Install dependencies
run: npm ci
- name: Resolve build metadata
id: build-metadata
shell: bash
run: |
if [[ "${GITHUB_REF_TYPE}" == "tag" ]]; then
channel="release"
elif [[ "${GITHUB_REF_NAME}" == "dev" || "${GITHUB_REF_NAME}" == "main" || "${GITHUB_REF_NAME}" == "release" ]]; then
channel="${GITHUB_REF_NAME}"
else
channel="dev"
fi
echo "channel=${channel}" >> "${GITHUB_OUTPUT}"
echo "commit=${GITHUB_SHA}" >> "${GITHUB_OUTPUT}"
- name: Check release build metadata
run: npm run release:env:check
env:
VITE_BUILD_CHANNEL: ${{ steps.build-metadata.outputs.channel }}
VITE_BUILD_COMMIT: ${{ steps.build-metadata.outputs.commit }}
- name: Check synchronized client version
run: npm run version:check
@@ -54,6 +82,9 @@ jobs:
- name: Check desktop release and security gate
run: npm run desktop:release:check
- name: Check UI contract
run: npm run ui:contract
- name: Type check
run: npm run type-check
@@ -63,8 +94,8 @@ jobs:
- name: Build Web artifact
run: npm run build
env:
VITE_BUILD_CHANNEL: ${{ github.ref_name }}
VITE_BUILD_COMMIT: ${{ github.sha }}
VITE_BUILD_CHANNEL: ${{ steps.build-metadata.outputs.channel }}
VITE_BUILD_COMMIT: ${{ steps.build-metadata.outputs.commit }}
desktop:
name: macOS Desktop
@@ -89,6 +120,26 @@ jobs:
- name: Install dependencies
run: npm ci
- name: Resolve build metadata
id: build-metadata
shell: bash
run: |
if [[ "${GITHUB_REF_TYPE}" == "tag" ]]; then
channel="release"
elif [[ "${GITHUB_REF_NAME}" == "dev" || "${GITHUB_REF_NAME}" == "main" || "${GITHUB_REF_NAME}" == "release" ]]; then
channel="${GITHUB_REF_NAME}"
else
channel="dev"
fi
echo "channel=${channel}" >> "${GITHUB_OUTPUT}"
echo "commit=${GITHUB_SHA}" >> "${GITHUB_OUTPUT}"
- name: Check release build metadata
run: npm run release:env:check
env:
VITE_BUILD_CHANNEL: ${{ steps.build-metadata.outputs.channel }}
VITE_BUILD_COMMIT: ${{ steps.build-metadata.outputs.commit }}
- name: Check synchronized client version
run: npm run version:check
@@ -98,8 +149,11 @@ jobs:
- name: Check desktop release and security gate
run: npm run desktop:release:check
- name: Check UI contract
run: npm run ui:contract
- name: Build unsigned macOS application smoke artifact
run: npm run desktop:build:app
env:
VITE_BUILD_CHANNEL: ${{ github.ref_name }}
VITE_BUILD_COMMIT: ${{ github.sha }}
VITE_BUILD_CHANNEL: ${{ steps.build-metadata.outputs.channel }}
VITE_BUILD_COMMIT: ${{ steps.build-metadata.outputs.commit }}