From f8e102d2756a56efb6b9d92e578aedc3b7d63084 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Wed, 20 May 2026 12:48:40 +0800
Subject: [PATCH] checkpoint: archive current 7.5.1 before performance optimization

---
 build.sh |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/build.sh b/build.sh
index dd08a5b..68602b9 100644
--- a/build.sh
+++ b/build.sh
@@ -5,6 +5,7 @@
 PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
 BUILD_DIR="$PROJECT_DIR/build"
 APP_BUNDLE="$BUILD_DIR/$APP_NAME.app"
+APP_INFO_PLIST="$APP_BUNDLE/Contents/Info.plist"
 MACOS_DIR="$APP_BUNDLE/Contents/MacOS"
 RESOURCES_DIR="$APP_BUNDLE/Contents/Resources"
 SWIFT_DIR="$PROJECT_DIR/Apptag"
@@ -14,8 +15,9 @@
 TARGET="arm64-apple-macosx15.0"
 
 APP_VERSION=$(/usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" "$INFO_PLIST")
-APP_BUILD=$(/usr/libexec/PlistBuddy -c "Print :CFBundleVersion" "$INFO_PLIST")
-if [ -z "$APP_VERSION" ] || ! [[ "$APP_BUILD" =~ ^[0-9]+$ ]]; then
+APP_BUILD="${APP_BUILD:-$(date '+%Y%m%d.%H%M')}"
+SOURCE_INFO_PLIST_HASH_BEFORE=$(shasum -a 256 "$INFO_PLIST" | awk '{print $1}')
+if [ -z "$APP_VERSION" ] || ! [[ "$APP_BUILD" =~ ^[0-9]{8}\.[0-9]{4}$ ]]; then
     echo "❌ Invalid version metadata in $INFO_PLIST: version='$APP_VERSION' build='$APP_BUILD'"
     exit 1
 fi
@@ -63,7 +65,8 @@
     "${SWIFT_FILES[@]}"
 
 echo "==> Copying Info.plist..."
-cp "$INFO_PLIST" "$APP_BUNDLE/Contents/Info.plist"
+cp "$INFO_PLIST" "$APP_INFO_PLIST"
+/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $APP_BUILD" "$APP_INFO_PLIST"
 
 echo "==> Copying AppIcon.icns..."
 if [ -f "$PROJECT_DIR/icon-icns.icns" ]; then
@@ -125,6 +128,13 @@
     codesign --force --deep --sign - "$APP_BUNDLE"
 fi
 
+echo "==> Verifying source Info.plist was not modified..."
+SOURCE_INFO_PLIST_HASH_AFTER=$(shasum -a 256 "$INFO_PLIST" | awk '{print $1}')
+if [ "$SOURCE_INFO_PLIST_HASH_BEFORE" != "$SOURCE_INFO_PLIST_HASH_AFTER" ]; then
+    echo "❌ Build mutated tracked source file: $INFO_PLIST"
+    exit 1
+fi
+
 echo ""
 echo "✅ App built at: $APP_BUNDLE"
 echo "   Run: open $APP_BUNDLE"

--
Gitblit v1.9.3