2026-10-31T23:44:46.2554006Z Current runner version: '2.338.2' 2026-10-31T23:44:46.2580754Z ##[group]Runner Image Provisioner 2026-10-31T23:44:46.2581711Z Hosted Compute Agent 2026-10-31T23:44:46.2582410Z Version: 20261021.618 2026-10-31T23:44:46.2583106Z Commit: 21505ad2541d5be6135ed84fc33697146cf75b8e 2026-10-31T23:44:46.2584334Z Build Date: 2026-10-21T00:45:21Z 2026-10-31T23:44:46.2585208Z Worker ID: {af1b3958-0c7f-4af5-997c-4e2c77213abf} 2026-10-31T23:44:46.2585994Z Region: eastus 2026-10-31T23:44:46.2586579Z Cloud: Azure 2026-10-31T23:44:46.2587233Z ##[endgroup] 2026-10-31T23:44:46.2588834Z ##[group]Operating System 2026-10-31T23:44:46.2589735Z Ubuntu 2026-10-31T23:44:46.2590367Z 26.04.1 2026-10-31T23:44:46.2591181Z LTS 2026-10-31T23:44:46.2591774Z ##[endgroup] 2026-10-31T23:44:46.2592375Z ##[group]Runner Image 2026-10-31T23:44:46.2593101Z Image: ubuntu-26.04 2026-10-31T23:44:46.2594080Z Version: 20261025.179.1 2026-10-31T23:44:46.2595518Z Included Software: https://github.com/actions/runner-images/blob/ubuntu26/20261025.179/images/ubuntu/Ubuntu2604-Readme.md 2026-10-31T23:44:46.2597167Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu26%2F20261025.179 2026-10-31T23:44:46.2598234Z ##[endgroup] 2026-10-31T23:44:46.2599456Z ##[group]GITHUB_TOKEN Permissions 2026-10-31T23:44:46.2601733Z Actions: write 2026-10-31T23:44:46.2602411Z Metadata: read 2026-10-31T23:44:46.2603145Z ##[endgroup] 2026-10-31T23:44:46.2606206Z Secret source: Actions 2026-10-31T23:44:46.2607318Z Cache mode: write 2026-10-31T23:44:46.2608291Z Prepare workflow directory 2026-10-31T23:44:46.3156941Z Prepare all required actions 2026-10-31T23:44:46.3227271Z Complete job name: Budget gate 2026-10-31T23:44:46.4492415Z ##[group]Run visibility="$(gh api "repos/$REPO" --jq .visibility || echo unknown)" 2026-10-31T23:44:46.4493830Z visibility="$(gh api "repos/$REPO" --jq .visibility || echo unknown)" 2026-10-31T23:44:46.4494729Z if [ "$visibility" = public ]; then 2026-10-31T23:44:46.4495678Z  echo "Public repository: hosted standard runners are not billed." 2026-10-31T23:44:46.4496545Z  echo "ok=true" >> "$GITHUB_OUTPUT" 2026-10-31T23:44:46.4497180Z  exit 0 2026-10-31T23:44:46.4497664Z fi 2026-10-31T23:44:46.4498162Z since="$(date -u +%Y-%m-01)" 2026-10-31T23:44:46.4498944Z # Count only runs that executed jobs; draft-PR runs skip every job. 2026-10-31T23:44:46.4500734Z runs="$(gh api --paginate "repos/$REPO/actions/workflows/ci.yml/runs?created=>=$since&status=completed&per_page=100" --jq '[.workflow_runs[] | select(.conclusion != "skipped")] | length' | awk '{n += $1} END {print n + 0}')" 2026-10-31T23:44:46.4502573Z echo "Executed CI runs this month: $runs of $MAX_RUNS (visibility: $visibility)" 2026-10-31T23:44:46.4503466Z if [ "$runs" -ge "$MAX_RUNS" ]; then 2026-10-31T23:44:46.4504328Z  echo "ok=false" >> "$GITHUB_OUTPUT" 2026-10-31T23:44:46.4505104Z  echo "::warning::Monthly CI budget reached; CI jobs skipped." 2026-10-31T23:44:46.4506036Z  # Disable only when the repository is known to be private, so a 2026-10-31T23:44:46.4506974Z  # failed visibility lookup cannot switch CI off for later runs. 2026-10-31T23:44:46.4507800Z  if [ "$visibility" = private ]; then 2026-10-31T23:44:46.4508604Z  gh api -X PUT "repos/$REPO/actions/workflows/ci.yml/disable" || 2026-10-31T23:44:46.4509678Z  echo "::warning::Could not disable the workflow; jobs stay skipped while the cap holds." 2026-10-31T23:44:46.4510562Z  fi 2026-10-31T23:44:46.4511030Z else 2026-10-31T23:44:46.4511560Z  echo "ok=true" >> "$GITHUB_OUTPUT" 2026-10-31T23:44:46.4512157Z fi 2026-10-31T23:44:46.5343546Z shell: /usr/bin/bash -e {0} 2026-10-31T23:44:46.5345392Z env: 2026-10-31T23:44:46.5346175Z MAX_RUNS: 150 2026-10-31T23:44:46.5354213Z GH_TOKEN: *** 2026-10-31T23:44:46.5355152Z REPO: collection-of-things/aggregate-mail 2026-10-31T23:44:46.5356738Z ##[endgroup] 2026-10-31T23:44:46.9930281Z Public repository: hosted standard runners are not billed. 2026-10-31T23:44:47.0106585Z Evaluate and set job outputs 2026-10-31T23:44:47.0114400Z Set output 'ok' 2026-10-31T23:44:47.0116818Z Cleaning up orphan processes