From 97285a121e3ddd6d93c78d9208d6f0e94b733868 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Tue, 07 Jul 2026 14:35:36 +0800
Subject: [PATCH] release: finalize 8.3.6 app store package

---
 /dev/null                                                                                        |    5 --
 C2.builds/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt                                            |    3 +
 K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/PKG_PREFLIGHT_REPORT.md                          |   63 +++++++++++++++++++++++++++++++
 K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg  |    0 
 K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/QA_RELEASE_EVIDENCE.md                           |    3 +
 K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/RELEASE_MANIFEST.md                              |   11 +++--
 C2.builds/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg           |    0 
 K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg |    0 
 C2.builds/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg          |    0 
 K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt                                   |    3 +
 10 files changed, 76 insertions(+), 12 deletions(-)

diff --git a/C2.builds/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg b/C2.builds/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg
index e7f83db..6e34676 100644
--- a/C2.builds/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+++ b/C2.builds/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg
Binary files differ
diff --git a/C2.builds/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt b/C2.builds/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt
index d196c0b..d63d093 100644
--- a/C2.builds/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt
+++ b/C2.builds/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt
@@ -1 +1,2 @@
-6b899e1961ac203a777f7d285eaaed0fb14e5c4a4e9cec6500f779cda7a3333e  Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+d9156ed6e6d4fba7e7212749a410b1591bf45992f01771124bfbe690dcb4319c  Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+5bb36957d038e4c00112edc0f4b526ddf3a8bb48ffcbdb62840da7b997ccf15c  Upload/TagLauncher-8.3.6-build20260707.1242.pkg
diff --git a/C2.builds/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg b/C2.builds/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg
new file mode 100644
index 0000000..c95a366
--- /dev/null
+++ b/C2.builds/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg
Binary files differ
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/APP_STORE_UPLOAD_BLOCKER.md" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/APP_STORE_UPLOAD_BLOCKER.md"
deleted file mode 100644
index 9f21af3..0000000
--- "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/APP_STORE_UPLOAD_BLOCKER.md"
+++ /dev/null
@@ -1,79 +0,0 @@
-# TagLauncher 8.3.6 App Store Upload Blocker
-
-Date: 2026-07-07
-
-## Blocker
-
-The App Store Connect upload `.pkg` cannot be generated on this Mac because the required company signing identities and provisioning profile are not available locally.
-
-Required for upload:
-
-- `3rd Party Mac Developer Application: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)`
-- `3rd Party Mac Developer Installer: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)`
-- Mac App Store provisioning profile for `CR3J54M8BQ.com.taglauncher.app`
-
-Observed local keychain identities:
-
-```text
-PrivateVoice Local Code Signing
-Apple Development: junfeng zhang (9MYR6D5R5U)
-```
-
-Observed provisioning profile directory:
-
-```text
-~/Library/MobileDevice/Provisioning Profiles
-```
-
-No local `.provisionprofile` files were found there during this release gate.
-
-## Important Constraint
-
-Do not sign the App Store upload package with `Apple Development: junfeng zhang (9MYR6D5R5U)` or any personal development identity. That would produce the wrong distribution artifact and is not acceptable for ASC submission.
-
-## Completed Anyway
-
-- Source code is frozen at `d76f5d61a7463dee1600d6b40eb85cabfa75a914`.
-- Version/build metadata is `8.3.6 (20260707.1242)`.
-- Local ad-hoc QA app and local rollback DMG were generated and verified.
-
-## Resume Condition
-
-After the company certificates and provisioning profile are installed, regenerate the App Store upload package from the frozen source commit using the company identities, then run PKG preflight:
-
-```bash
-cd /Users/ar/Projects/Taglauncher/03-O/C1.source
-APP_STORE=1 \
-APP_BUILD=20260707.1242 \
-CODESIGN_IDENTITY="3rd Party Mac Developer Application: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)" \
-bash build.sh
-```
-
-Before final App Store signing, the Mac App Store provisioning profile for `CR3J54M8BQ.com.taglauncher.app` must be embedded into the app bundle and the app must then be signed with the company application identity. The current `build.sh` does not automatically embed a provisioning profile, so the resume step must either update the script to do this or perform the profile copy before the final codesign:
-
-```bash
-cp "/path/to/TagLauncher Mac App Store.provisionprofile" \
-  build/TagLauncher.app/Contents/embedded.provisionprofile
-
-codesign --force --deep \
-  --sign "3rd Party Mac Developer Application: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)" \
-  --entitlements Apptag/TagLauncher.entitlements \
-  build/TagLauncher.app
-```
-
-Then create the ASC upload package with the company installer identity:
-
-```bash
-productbuild \
-  --component build/TagLauncher.app /Applications \
-  --sign "3rd Party Mac Developer Installer: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)" \
-  /Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg
-```
-
-Required preflight after package generation:
-
-```bash
-pkgutil --check-signature /Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg
-pkgutil --expand-full /Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg /Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/Preflight/expanded
-codesign --verify --deep --strict --verbose=2 /Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Release/AppStore-8.3.6-20260707.1242/Preflight/expanded/com.taglauncher.app.pkg/Payload/TagLauncher.app
-```
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg"
index e7f83db..6e34676 100644
--- "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg"
+++ "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Archive/TagLauncher-8.3.6-build20260707.1242.dmg"
Binary files differ
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/PKG_PREFLIGHT_REPORT.md" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/PKG_PREFLIGHT_REPORT.md"
new file mode 100644
index 0000000..708d07d
--- /dev/null
+++ "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/PKG_PREFLIGHT_REPORT.md"
@@ -0,0 +1,63 @@
+# TagLauncher 8.3.6 App Store PKG Preflight
+
+Date: 2026-07-07
+Version: 8.3.6
+Build: 20260707.1242
+
+## Package
+
+- Upload package: `Upload/TagLauncher-8.3.6-build20260707.1242.pkg`
+- Local rollback DMG: `Archive/TagLauncher-8.3.6-build20260707.1242.dmg`
+
+## Signing
+
+- App signing identity: `3rd Party Mac Developer Application: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)`
+- Installer signing identity: `3rd Party Mac Developer Installer: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)`
+- Embedded provisioning profile: `TagLauncher Mac App Store 20260707`
+- Provisioning profile UUID: `3ee49163-ef5c-4467-8971-f93cc1fc6b6d`
+- Provisioning profile expiry: `2027-07-07 05:17:38 +0000`
+
+## Entitlements
+
+The packaged app is signed with:
+
+- `com.apple.security.app-sandbox`: `true`
+- `com.apple.security.files.user-selected.read-write`: `true`
+
+The embedded profile provides:
+
+- `com.apple.application-identifier`: `CR3J54M8BQ.com.taglauncher.app`
+- `com.apple.developer.team-identifier`: `CR3J54M8BQ`
+- `keychain-access-groups`: `CR3J54M8BQ.*`
+
+## Verification
+
+Commands completed successfully:
+
+```bash
+pkgutil --check-signature Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg
+pkgutil --expand-full Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg Release/AppStore-8.3.6-20260707.1242/Preflight/expanded
+codesign --verify --deep --strict --verbose=2 Release/AppStore-8.3.6-20260707.1242/Preflight/expanded/com.taglauncher.app.pkg/Payload/TagLauncher.app
+hdiutil verify /Users/ar/Projects/Taglauncher/03-O/C1.source/build/TagLauncher.dmg
+```
+
+Observed package payload metadata:
+
+- `CFBundleShortVersionString`: `8.3.6`
+- `CFBundleVersion`: `20260707.1242`
+- Bundle ID: `com.taglauncher.app`
+- Team ID: `CR3J54M8BQ`
+
+No `com.apple.quarantine` xattr, AppleDouble files, or `.DS_Store` files were found in the expanded package preflight check.
+
+Non-gating local distribution check:
+
+- `spctl -a -vv -t install Upload/TagLauncher-8.3.6-build20260707.1242.pkg` returns `rejected` with origin `3rd Party Mac Developer Installer: Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)`.
+- This package is built for App Store Connect upload, not Developer ID local distribution. Treat `pkgutil --check-signature`, payload `codesign --verify`, embedded provisioning profile, and ASC upload validation as the release gates for this artifact.
+
+## Hashes
+
+```text
+d9156ed6e6d4fba7e7212749a410b1591bf45992f01771124bfbe690dcb4319c  Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+5bb36957d038e4c00112edc0f4b526ddf3a8bb48ffcbdb62840da7b997ccf15c  Upload/TagLauncher-8.3.6-build20260707.1242.pkg
+```
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/QA_RELEASE_EVIDENCE.md" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/QA_RELEASE_EVIDENCE.md"
index 271f1c6..66a5a01 100644
--- "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/QA_RELEASE_EVIDENCE.md"
+++ "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/QA_RELEASE_EVIDENCE.md"
@@ -3,6 +3,7 @@
 Date: 2026-07-07
 Build: `8.3.6 (20260707.1242)`
 Source freeze commit: `d76f5d61a7463dee1600d6b40eb85cabfa75a914`
+Package generation baseline: `464905b597a98bc09b269936c2b35a27ec46fdce`
 
 ## User-Facing Requirement
 
@@ -58,4 +59,4 @@
 ## Release Gate Conclusion
 
 - Local QA app / DMG: PASS for the scoped UI change.
-- App Store upload package: BLOCKED by missing company signing materials; see `APP_STORE_UPLOAD_BLOCKER.md`.
+- App Store upload package: PASS. `Upload/TagLauncher-8.3.6-build20260707.1242.pkg` is signed with the company Mac App Store installer identity and its payload app is signed with the company application identity.
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/RELEASE_MANIFEST.md" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/RELEASE_MANIFEST.md"
index 2e55404..a49c630 100644
--- "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/RELEASE_MANIFEST.md"
+++ "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/RELEASE_MANIFEST.md"
@@ -7,6 +7,7 @@
 - Version: `8.3.6`
 - Build: `20260707.1242`
 - Source freeze commit: `d76f5d61a7463dee1600d6b40eb85cabfa75a914`
+- Package generation baseline: `464905b597a98bc09b269936c2b35a27ec46fdce`
 - Branch: `codex/slim-migration-taglauncher2`
 - CODEGRAPH: checked and updated for the Settings fixed Pro header visual contract and Pro feature QA coverage.
 - codebase-memory: not applicable for this release gate; current project handoff uses `CODEGRAPH.md` as the maintained engineering map.
@@ -21,10 +22,10 @@
 
 ## Artifacts
 
-- Local QA DMG: `Archive/TagLauncher-8.3.6-build20260707.1242.dmg`
+- Local rollback DMG: `Archive/TagLauncher-8.3.6-build20260707.1242.dmg`
+- App Store upload package: `Upload/TagLauncher-8.3.6-build20260707.1242.pkg`
 - Visual QA screenshot: `QA/taglauncher-8.3.6-settings-about-no-pro-header-frame.png`
 - Hash file: `SHA256SUMS.txt`
-- App Store upload package: blocked; see `APP_STORE_UPLOAD_BLOCKER.md`
 
 ## Build Commands
 
@@ -50,11 +51,13 @@
 
 - `bash Scripts/quick_search_app_name_qa.sh`: skipped because the Sunlogin wrapper fixture app is not installed on this Mac.
 - `bash Scripts/window_logic_qa.sh`: blocked because `cliclick` is not installed.
-- App Store `.pkg`: blocked because the company Mac App Store signing identities and provisioning profile are not present locally.
+
+App Store package preflight passed. See `PKG_PREFLIGHT_REPORT.md`.
 
 ## Hashes
 
 ```text
-6b899e1961ac203a777f7d285eaaed0fb14e5c4a4e9cec6500f779cda7a3333e  Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+d9156ed6e6d4fba7e7212749a410b1591bf45992f01771124bfbe690dcb4319c  Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+5bb36957d038e4c00112edc0f4b526ddf3a8bb48ffcbdb62840da7b997ccf15c  Upload/TagLauncher-8.3.6-build20260707.1242.pkg
 c49127307de06d4be71536502bfdaece185bd0196a668f74e9c7fb55d60a6f8f  QA/taglauncher-8.3.6-settings-about-no-pro-header-frame.png
 ```
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt"
index 4c82266..5a81a0f 100644
--- "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt"
+++ "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/SHA256SUMS.txt"
@@ -1,2 +1,3 @@
-6b899e1961ac203a777f7d285eaaed0fb14e5c4a4e9cec6500f779cda7a3333e  Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+d9156ed6e6d4fba7e7212749a410b1591bf45992f01771124bfbe690dcb4319c  Archive/TagLauncher-8.3.6-build20260707.1242.dmg
+5bb36957d038e4c00112edc0f4b526ddf3a8bb48ffcbdb62840da7b997ccf15c  Upload/TagLauncher-8.3.6-build20260707.1242.pkg
 c49127307de06d4be71536502bfdaece185bd0196a668f74e9c7fb55d60a6f8f  QA/taglauncher-8.3.6-settings-about-no-pro-header-frame.png
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Upload/README.md" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Upload/README.md"
deleted file mode 100644
index 77fb42f..0000000
--- "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Upload/README.md"
+++ /dev/null
@@ -1,5 +0,0 @@
-# Upload
-
-No App Store Connect `.pkg` is present in this directory.
-
-Reason: the required company Mac App Store signing identities and provisioning profile for `Hainan Wanxing Technology Co., Ltd. (CR3J54M8BQ)` are not installed on this Mac. Do not place a package signed with a personal Apple Development identity here.
diff --git "a/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg" "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg"
new file mode 100644
index 0000000..c95a366
--- /dev/null
+++ "b/K3.\350\277\220\350\220\245\344\270\216\345\217\221\345\270\203\350\265\204\346\226\231/Release/AppStore-8.3.6-20260707.1242/Upload/TagLauncher-8.3.6-build20260707.1242.pkg"
Binary files differ

--
Gitblit v1.9.3