@@ -75,11 +75,19 @@ jobs:
7575 jq -r '.assets[] | select(.name | endswith(".js") or endswith(".wasm") or endswith(".json") or endswith(".d.ts")) | "\(.browser_download_url)|\(.name)"' | \
7676 while IFS='|' read -r url name; do
7777 if [ -n "$url" ] && [ "$url" != "null" ] && [ -n "$name" ]; then
78- # Handle asset names that might have paths like "pkg/sentience_core.js"
78+ # Handle asset names that might have paths like "pkg/sentience_core.js" or "extension-package/manifest.json"
7979 # GitHub releases might preserve directory structure in asset names
80- # If name starts with "pkg/", we want to preserve that structure
81- # If name is just a filename, put it at root
82- if [[ "$name" == pkg/* ]]; then
80+ # Strip "extension-package/" prefix if present, as we'll handle it in copy step
81+ if [[ "$name" == extension-package/* ]]; then
82+ # Asset name is "extension-package/manifest.json" - strip prefix
83+ filename="${name#extension-package/}"
84+ dir=$(dirname "$filename")
85+ if [ "$dir" != "." ]; then
86+ mkdir -p "$dir"
87+ fi
88+ echo " Downloading $name -> $filename"
89+ curl -L -H "Authorization: token ${{ secrets.SENTIENCE_CHROME_TOKEN }}" "$url" -o "$filename"
90+ elif [[ "$name" == pkg/* ]]; then
8391 # Asset name is "pkg/sentience_core.js" - create pkg directory
8492 mkdir -p pkg
8593 filename=$(basename "$name")
@@ -103,6 +111,19 @@ jobs:
103111 echo ""
104112 echo "Directory structure:"
105113 ls -laR . | head -50
114+ echo ""
115+ echo "🔍 Verifying critical files:"
116+ if [ -f "manifest.json" ]; then
117+ echo "✅ manifest.json found ($(wc -c < manifest.json) bytes)"
118+ head -5 manifest.json
119+ else
120+ echo "❌ manifest.json NOT FOUND"
121+ fi
122+ if [ -d "pkg" ]; then
123+ echo "✅ pkg directory found with $(ls -1 pkg | wc -l) files"
124+ else
125+ echo "❌ pkg directory NOT FOUND"
126+ fi
106127
107128 - name : Copy extension files
108129 if : steps.release.outputs.skip != 'true'
@@ -113,11 +134,42 @@ jobs:
113134 # Copy extension files (handle both root and extension-package/ subdirectory)
114135 # Check root first, then extension-package/ subdirectory
115136 if [ -f "extension-temp/manifest.json" ]; then
116- cp extension-temp/manifest.json sentience/extension/
137+ size=$(wc -c < extension-temp/manifest.json)
138+ if [ "$size" -gt 0 ]; then
139+ echo "✅ Copying manifest.json ($size bytes)"
140+ cp extension-temp/manifest.json sentience/extension/
141+ # Verify copy
142+ if [ -f "sentience/extension/manifest.json" ] && [ "$(wc -c < sentience/extension/manifest.json)" -gt 0 ]; then
143+ echo "✅ manifest.json copied successfully"
144+ else
145+ echo "❌ manifest.json copy failed or file is empty"
146+ exit 1
147+ fi
148+ else
149+ echo "❌ manifest.json is empty ($size bytes)"
150+ exit 1
151+ fi
117152 elif [ -f "extension-temp/extension-package/manifest.json" ]; then
118- cp extension-temp/extension-package/manifest.json sentience/extension/
153+ size=$(wc -c < extension-temp/extension-package/manifest.json)
154+ if [ "$size" -gt 0 ]; then
155+ echo "✅ Copying manifest.json from extension-package/ ($size bytes)"
156+ cp extension-temp/extension-package/manifest.json sentience/extension/
157+ # Verify copy
158+ if [ -f "sentience/extension/manifest.json" ] && [ "$(wc -c < sentience/extension/manifest.json)" -gt 0 ]; then
159+ echo "✅ manifest.json copied successfully"
160+ else
161+ echo "❌ manifest.json copy failed or file is empty"
162+ exit 1
163+ fi
164+ else
165+ echo "❌ manifest.json is empty ($size bytes)"
166+ exit 1
167+ fi
119168 else
120- echo "⚠️ manifest.json not found"
169+ echo "❌ manifest.json not found in extension-temp/"
170+ echo "Available files:"
171+ find extension-temp -type f | head -20
172+ exit 1
121173 fi
122174
123175 if [ -f "extension-temp/content.js" ]; then
0 commit comments