@plainconceptsplatform/workflows 0.28.7 → 0.28.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -152,6 +152,17 @@ post-steps:
152
152
  npm install -g "agent-browser@${{ env.AGENT_BROWSER_VERSION }}"
153
153
  # The npm package alone cannot drive a browser: the Chromium binary is a separate
154
154
  # download, and a self-hosted Linux runner needs the system dependencies too.
155
+ # --with-deps is agent-browser's best effort but misses libraries on ubuntu-24.04.
156
+ chrome_dir=$(agent-browser path 2>/dev/null | grep -oE '/[^ ]+chrome[^ ]*' | head -1 || true)
157
+ if [ -n "$chrome_dir" ] && [ -d "$(dirname "$chrome_dir")/.." ]; then
158
+ ldd "$chrome_dir" 2>/dev/null | grep "not found" || true
159
+ fi
160
+ # Install the known missing Chromium dependencies on Debian/ubuntu runners.
161
+ # agent-browser install --with-deps may leave these out depending on the runner image.
162
+ sudo apt-get update -qq && sudo apt-get install -y --no-install-recommends \
163
+ libnss3 libatk1.0-0 libatk-bridge2.0-0 libdrm2 libgbm1 \
164
+ libasound2t64 libxkbcommon0 libcairo2 libpango-1.0-0 libxcomposite1 \
165
+ libxdamage1 libxfixes3 libxrandr2 2>/dev/null || true
155
166
  agent-browser install --with-deps
156
167
  agent-browser --version
157
168
 
@@ -205,6 +216,9 @@ post-steps:
205
216
  echo "Found $waypoint_count waypoints"
206
217
  captured=0
207
218
  i=0
219
+ # agent-browser uses Chromium which needs --no-sandbox on CI runners where
220
+ # there is no SYS_ADMIN capability. Set it once via the config file.
221
+ export AGENT_BROWSER_ARGS="${AGENT_BROWSER_ARGS:-} --no-sandbox"
208
222
  while [ "$i" -lt "$waypoint_count" ]; do
209
223
  i=$((i + 1))
210
224
  url=$(jq -r ".waypoints[$((i - 1))].url" "$PLAN_FILE")
@@ -224,6 +238,10 @@ post-steps:
224
238
  captured=$((captured + 1))
225
239
  else
226
240
  echo "::warning::waypoint $i: screenshot failed"
241
+ # Diagnostic: show what's in the output dir and any browser errors
242
+ ls -la "$OUTPUT_DIR/" 2>/dev/null || true
243
+ echo "--- agent-browser debug ---"
244
+ agent-browser screenshot "$OUTPUT_DIR/debug-$i.png" --full 2>&1 || true
227
245
  fi
228
246
  done
229
247
  echo "captured=$([ "$captured" -gt 0 ] && echo true || echo false)" >> "$GITHUB_OUTPUT"
@@ -233,7 +251,7 @@ post-steps:
233
251
  # instead (app never started, no plan, or every waypoint failed). `always()` because it
234
252
  # must run even when the capture step above warned its way to the end.
235
253
  - name: Attach screenshots to the issue
236
- if: always() && needs.subject.outputs.found == 'true' && needs.subject.outputs.enabled == 'true'
254
+ if: always() && env.VISUAL_VERIFY_ENABLED == 'true' && env.VISUAL_VERIFY_START_COMMAND != ''
237
255
  uses: ./.github/actions/attach-screenshots
238
256
  with:
239
257
  token: ${{ github.token }}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plainconceptsplatform/workflows",
3
- "version": "0.28.7",
3
+ "version": "0.28.9",
4
4
  "description": "Install and update Platform GitHub agentic workflows.",
5
5
  "keywords": [
6
6
  "github-actions",