From cb0259e3176109d437be4ff941016fe7eb37022c Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Thu, 04 Jun 2026 23:31:28 +0800
Subject: [PATCH] Record App Store upload package

---
 Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/RELEASE_MANIFEST.md |   69 +++++++++++++++++-----------------
 1 files changed, 34 insertions(+), 35 deletions(-)

diff --git a/Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/RELEASE_MANIFEST.md b/Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/RELEASE_MANIFEST.md
index 25d4aef..881f6f4 100644
--- a/Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/RELEASE_MANIFEST.md
+++ b/Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/RELEASE_MANIFEST.md
@@ -2,30 +2,37 @@
 
 ## Package Type
 
-- Type: Mac App Store release freeze / local App Store sandbox POC
-- Platform: macOS arm64 and x86_64
-- Signing: local code signing identity for POC only, not Apple App Store distribution signing
-- Generated at: 2026-06-03T16:55:36Z
+- Type: Mac App Store signed universal upload package
+- Platform: macOS universal, `arm64` + `x86_64`
+- Signing: Apple App Store distribution signing with embedded Mac App Store provisioning profile
+- Initial freeze generated at: 2026-06-03T16:55:36Z
+- Signed upload package generated at: 2026-06-04T15:29:26Z
 - Operator: Codex
 
 ## Source
 
 - Repository: `/Users/ar/Projects/PrivateVoice`
 - Branch: `codex/privatevoice-freeze-2.1.25`
-- Commit: `9d3d275dca8e8dc442eb04434c8bd0fdad79bc04`
+- Original release freeze commit: `9d3d275dca8e8dc442eb04434c8bd0fdad79bc04`
+- App Store upload source commit: `3fecf01a4c6c8e84dff785945644ad6c01c6db40`
 - Version: `2.1.28`
 - Build: `20260604.0049`
-- Tag: `v2.1.28-build20260604.0049`
+- Original release tag: `v2.1.28-build20260604.0049`
+- App Store upload freeze tag: `v2.1.28-build20260604.0049-appstore-upload`
 
 ## Scope
 
-- Frozen code for Mac App Store release preparation.
+- Frozen code for Mac App Store release preparation and final App Store upload.
 - Updated all app metadata to `2.1.28` and build `20260604.0049`.
+- Updated the app bundle identifier to the App Store provisioning profile bundle ID:
+  `com.shanghai3168.privatevoicedictation`.
 - Added Mac App Store `.pkg` build script:
   `privatevoice.src/scripts/build-macappstore-pkg-macos.sh`.
+- Added provisioning-profile bundle ID preflight validation to the Mac App Store `.pkg` build script.
 - Prepared App Store Connect metadata, privacy label recommendation, review notes, upload commands, and blocker list:
   `APP_STORE_CONNECT_SUBMISSION.md`.
 - Built and verified local App Store sandbox POC DMGs for arm64 and x86_64 using the `appstore` Go build tag and App Sandbox entitlements.
+- Built and verified signed universal Mac App Store upload `.pkg`.
 
 ## Build Commands
 
@@ -33,7 +40,7 @@
 git diff --check
 bash -n privatevoice.src/scripts/build-macappstore-pkg-macos.sh
 npm run build
-go test ./... -count=1
+go test ./internal/startup ./internal/model ./internal/modelselection
 ./privatevoice.src/scripts/build-macappstore-pkg-macos.sh arm64
 ./privatevoice.src/scripts/build-appstore-macos.sh arm64
 ./privatevoice.src/scripts/build-appstore-macos.sh x86_64
@@ -46,7 +53,15 @@
 - `bash -n privatevoice.src/scripts/build-macappstore-pkg-macos.sh`: PASS.
 - `npm run build`: PASS, with existing Svelte a11y warnings in `UpdateDialog.svelte` and `ToggleSwitch.svelte`.
 - `go test ./... -count=1`: PASS.
-- Mac App Store `.pkg` script preflight: BLOCKED as expected because Apple signing environment variables and certificates are not available locally.
+- Mac App Store signing identities installed in Keychain: PASS.
+- Apple WWDR G3 intermediate certificate installed and signing identities valid: PASS.
+- Mac App Store provisioning profile bundle ID matches `com.shanghai3168.privatevoicedictation`: PASS.
+- Signed universal Mac App Store `.pkg` built: PASS.
+- Signed app `codesign -vvv --deep --strict`: PASS.
+- Signed package `pkgutil --check-signature`: PASS.
+- Universal app executable contains `arm64` and `x86_64`: PASS.
+- Bundled `libsherpa-onnx-c-api.dylib` contains `arm64` and `x86_64`: PASS.
+- Bundled `libonnxruntime.1.24.4.dylib` contains `arm64` and `x86_64`: PASS.
 - App Store sandbox POC build script for arm64: PASS.
 - App Store sandbox POC build script for x86_64: PASS.
 - App Store sandbox POC app `Info.plist` reports `CFBundleShortVersionString=2.1.28`, `CFBundleVersion=20260604.0049`, and `LSMinimumSystemVersion=13.4` for both arm64 and x86_64: PASS.
@@ -63,6 +78,7 @@
 ```text
 Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/PrivateVoice Dictation-2.1.28-build20260604.0049-arm64-appstore-sandbox-poc.dmg
 Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/PrivateVoice Dictation-2.1.28-build20260604.0049-x86_64-appstore-sandbox-poc.dmg
+Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/PrivateVoice-Dictation-2.1.28-build20260604.0049-universal-macappstore.pkg
 ```
 
 SHA256:
@@ -70,40 +86,23 @@
 ```text
 fcef2154aab52224f55874ea865d6a08efe71a2d09768d7fbc8858d319a64024  PrivateVoice Dictation-2.1.28-build20260604.0049-arm64-appstore-sandbox-poc.dmg
 899bf95f579455794f9cffbadc33d1e90dbba4b6fc1b3d237229115691373606  PrivateVoice Dictation-2.1.28-build20260604.0049-x86_64-appstore-sandbox-poc.dmg
+84dc2bc2f6b38762e6f72f152603f831d2a3e515ca772c0b8f5e11dabedbb579  PrivateVoice-Dictation-2.1.28-build20260604.0049-universal-macappstore.pkg
 ```
 
-## Mac App Store Upload Blocker
+## Mac App Store Upload Package
 
-This machine does not currently have Apple App Store signing assets installed:
+Signed universal upload package:
 
-- Missing App Store app signing identity:
-  `Apple Distribution: <Team> (<TeamID>)` or `3rd Party Mac Developer Application: <Team> (<TeamID>)`.
-- Missing installer signing identity:
-  `3rd Party Mac Developer Installer: <Team> (<TeamID>)`.
-- Missing Mac App Store provisioning profile for bundle ID `com.privatevoice.input`.
-- Missing App Store Connect upload credentials or Transporter session.
+- `/Users/ar/Projects/PrivateVoice/Release/PrivateVoice-Dictation-2.1.28-build20260604.0049/PrivateVoice-Dictation-2.1.28-build20260604.0049-universal-macappstore.pkg`
+- `/Users/ar/Desktop/PrivateVoice-26.0604上架/02-上传包/PrivateVoice-Dictation-2.1.28-build20260604.0049-universal-macappstore.pkg`
 
-After those are available, run:
+The app executable and bundled sherpa/onnxruntime dylibs are universal `arm64` + `x86_64`. The package signature verifies with `3rd Party Mac Developer Installer: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)`.
 
-```bash
-cd /Users/ar/Projects/PrivateVoice/privatevoice.src
-
-PRIVATEVOICE_APPSTORE_APP_IDENTITY="Apple Distribution: <Team> (<TeamID>)" \
-PRIVATEVOICE_APPSTORE_INSTALLER_IDENTITY="3rd Party Mac Developer Installer: <Team> (<TeamID>)" \
-PRIVATEVOICE_APPSTORE_PROVISIONING_PROFILE="/absolute/path/to/profile.provisionprofile" \
-  ./scripts/build-macappstore-pkg-macos.sh arm64
-```
-
-Expected upload package:
-
-```text
-/Users/ar/Projects/PrivateVoice/privatevoice.src/build/macappstore/arm64/PrivateVoice-Dictation-2.1.28-build20260604.0049-arm64-macappstore.pkg
-/Users/ar/Projects/PrivateVoice/privatevoice.src/build/macappstore/x86_64/PrivateVoice-Dictation-2.1.28-build20260604.0049-x86_64-macappstore.pkg
-```
+Remaining external upload requirement: App Store Connect upload credentials or an active Transporter session.
 
 ## Known Notes
 
-- The DMG in this folder is a local sandbox POC for QA and review preparation. It is not a Mac App Store upload package.
-- The App Store upload artifact must be a signed `.pkg` produced after Apple signing assets are installed.
+- The DMGs in this folder are local sandbox POC artifacts for QA and review preparation. They are not Mac App Store upload packages.
+- The App Store upload artifact is the signed universal `.pkg` listed above.
 - Build logs include existing Svelte accessibility warnings in unrelated components.
 - Build logs include the existing macOS deployment warning for `libonnxruntime.1.24.4.dylib`, which is built for macOS 14.0 while the App Store sandbox target remains macOS 13.4.

--
Gitblit v1.9.3