BaoCut 桌面版本發佈
這是 Electron v3 應用程式 (com.baocut.app)。舊的 baocut-app 技能僅供參考,並非此工作目錄的可執行工作流程。請將此開發者技能保留在應用程式的 craft skills/ 目錄之外;請勿呼叫舊版 GPUI/npm/Homebrew 發佈。
選擇工作流程
| 使用者意圖 | 閱讀並遵循 |
|---|---|
| 一般發佈/發佈請求;未指定方法 | 標籤發佈 — 預設。推送凍結的來源標籤;先發佈已驗證的 Mac arm64,然後將 Windows CPU/CUDA/Vulkan 附加到同一個 Release。 |
| 明確指定本機套件/候選版本、傳統或手動發佈、單一平台恢復/延續 | 傳統發佈。尊重所要求的平台以及僅限本機/公開範圍。 |
| 僅簽署身分、可攜式備份或 GitHub 憑證 | 簽署/備份。請勿建立標籤或發佈。 |
僅載入所選意圖所需的參考資料。當使用者未指定發佈方法時,請勿要求他們在兩種方法之間選擇:直接使用標籤發佈。在 Actions 失敗後,請勿默默回退到傳統打包方式。明確的「僅限本機」或「僅限平台」指令會覆蓋預設的全平台範圍;請遵循使用者明確指定的方法與限制。
共用發佈限制
- 在進行編輯前檢查 git 狀態;保留不相關或同時進行的工作。在凍結發佈之前,先提交任務所屬的來源碼變更。遵循儲存庫提交、當前任務推送授權以及工作目錄清理規則;請勿重複使用其他任務的推送授權,或在此處已授予授權時再次要求。
apps/desktop/package.json擁有應用程式版本。透過 npm 同步根版本與 lockfile;請勿為了應用程式發佈而提升 Cargo 或協定版本。- 在選擇構建之前,先查詢實際的發佈/摘要。構建會嚴格遞增;已發佈的標籤/檔案是不可變的。
- 將標籤與所有平台構件繫結到同一個完整的來源 SHA。絕不可發佈帶有髒來源碼的二進位檔、私人簽署材料或中繼公證提交。
- 一旦 Mac 候選版本通過,立即發佈 Mac Release、其整合的變更日誌以及經過驗證的下載連結;Windows/CUDA 構建不會阻塞此階段。後續的完成作業會更新該 Release 的資產、備註與摘要,絕不會更新 Git 標籤或其來源 SHA。分別報告未完成的平台;在下方完成步驟中推動 Latest。
- 對於每個新發佈的版本/構建,請遵循發佈備註:列出完整的提交/PR 範圍,將大範圍批次總結,整合涵蓋範圍並發佈統一的變更日誌。本機候選版本會在本機保留相同的備註;平台延續會重複使用現有版本的範圍。
- 在每次公開發佈或平台延續之後,使用下載連結檢查下載連結。README 與 baocut.com 會連結到
baocut.com/download/<id>,該連結會自動跟隨 GitHub Releases。請勿為了發佈而編輯 README 或重新部署網站;請確認 baocut.com 提供新的構建版本。 - 報告實際的檢查與跳過項目。僅推送標籤或檢查憑證並不等同於完成發佈;發佈需要成功的作業、公開讀回、摘要、已驗證的發佈備註以及通過 baocut.com 下載檢查。
完成公開發佈
在所有選定平台均已發佈、公開資產與摘要已通過讀回檢查,且整合的發佈備註已驗證之後,將 GitHub Releases 分頁中最新的穩定桌面版本標記為 Latest:
gh release edit "$release_tag" --repo "$release_repo" --latest
gh api "repos/$release_repo/releases/latest" --jq '.tag_name'
使用此任務已驗證的儲存庫與標籤;讀回結果必須匹配該標籤。平台發佈者會在驗證與上傳進行中時保留前一個 Latest,因此即使 Actions 成功,仍需要此最終步驟。本機候選版本、草稿與預發佈版本不會推進 Latest。當延續較舊的發佈時,請保留較新的已發佈桌面版本/構建作為 Latest。在完成報告中包含已驗證的 Latest 標籤。
桌面指南擁有打包機制;模式特定的參考資料會說明何時載入它。僅要求變更發佈設定的請求不得建立發佈標籤或進行發佈。