2026-10-19T14:02:14.7186145Z Current runner version: '2.337.0' 2026-10-19T14:02:14.7209285Z ##[group]Runner Image Provisioner 2026-10-19T14:02:14.7210011Z Hosted Compute Agent 2026-10-19T14:02:14.7210613Z Version: 20261012.601 2026-10-19T14:02:14.7211135Z Commit: f3dc54e1fb89da6852db922499a0233137369e1d 2026-10-19T14:02:14.7211754Z Build Date: 2026-10-12T17:48:21Z 2026-10-19T14:02:14.7212357Z Worker ID: {25223d2a-3cc2-4602-9260-6b135c565f4a} 2026-10-19T14:02:14.7212949Z Region: westus 2026-10-19T14:02:14.7213453Z Cloud: Azure 2026-10-19T14:02:14.7213896Z ##[endgroup] 2026-10-19T14:02:14.7215352Z ##[group]Operating System 2026-10-19T14:02:14.7215910Z Ubuntu 2026-10-19T14:02:14.7216354Z 24.04.5 2026-10-19T14:02:14.7216821Z LTS 2026-10-19T14:02:14.7217249Z ##[endgroup] 2026-10-19T14:02:14.7217688Z ##[group]Runner Image 2026-10-19T14:02:14.7218294Z Image: ubuntu-24.04 2026-10-19T14:02:14.7218806Z Version: 20261012.334.1 2026-10-19T14:02:14.7219881Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20261012.334/images/ubuntu/Ubuntu2404-Readme.md 2026-10-19T14:02:14.7221130Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20261012.334 2026-10-19T14:02:14.7222044Z ##[endgroup] 2026-10-19T14:02:14.7223026Z ##[group]GITHUB_TOKEN Permissions 2026-10-19T14:02:14.7225121Z Contents: read 2026-10-19T14:02:14.7225621Z Metadata: read 2026-10-19T14:02:14.7226176Z Packages: read 2026-10-19T14:02:14.7226630Z ##[endgroup] 2026-10-19T14:02:14.7228774Z Secret source: Actions 2026-10-19T14:02:14.7229523Z Cache mode: write 2026-10-19T14:02:14.7230069Z Prepare workflow directory 2026-10-19T14:02:14.7491759Z Prepare all required actions 2026-10-19T14:02:14.7531224Z Getting action download info 2026-10-19T14:02:15.1097289Z Download action repository 'actions/checkout@v4' (SHA:11d5960a326750d5838078e36cf38b85af677262) 2026-10-19T14:02:15.2238491Z Download action repository 'hacs/action@main' (SHA:1ebf01c408f29afcb6406bd431bc98fd8cbb15aa) 2026-10-19T14:02:15.5417861Z Complete job name: hacs 2026-10-19T14:02:15.5815649Z ##[group]Pull down action image 'ghcr.io/hacs/action:main' 2026-10-19T14:02:15.5906471Z ##[command]/usr/bin/docker pull ghcr.io/hacs/action:main 2026-10-19T14:02:16.3789596Z main: Pulling from hacs/action 2026-10-19T14:02:16.5303792Z e2de96513ba9: Already exists 2026-10-19T14:02:16.5344700Z 48f6a2588427: Pulling fs layer 2026-10-19T14:02:16.5345294Z 2a22c5887fa2: Pulling fs layer 2026-10-19T14:02:16.5345793Z d486488257d0: Pulling fs layer 2026-10-19T14:02:16.5346275Z 4f2f4aeb91e6: Pulling fs layer 2026-10-19T14:02:16.5346761Z 15f7511e3297: Pulling fs layer 2026-10-19T14:02:16.5347272Z dd9a8f7a1d13: Pulling fs layer 2026-10-19T14:02:16.5347735Z 4f2f4aeb91e6: Waiting 2026-10-19T14:02:16.5348165Z 15f7511e3297: Waiting 2026-10-19T14:02:16.5348589Z dd9a8f7a1d13: Waiting 2026-10-19T14:02:16.6778727Z d486488257d0: Verifying Checksum 2026-10-19T14:02:16.6779598Z d486488257d0: Download complete 2026-10-19T14:02:16.6835279Z 48f6a2588427: Verifying Checksum 2026-10-19T14:02:16.6838438Z 48f6a2588427: Download complete 2026-10-19T14:02:16.7506544Z 2a22c5887fa2: Verifying Checksum 2026-10-19T14:02:16.7507426Z 2a22c5887fa2: Download complete 2026-10-19T14:02:16.8333131Z 15f7511e3297: Verifying Checksum 2026-10-19T14:02:16.8334817Z 15f7511e3297: Download complete 2026-10-19T14:02:16.8908205Z 4f2f4aeb91e6: Verifying Checksum 2026-10-19T14:02:16.8909430Z 4f2f4aeb91e6: Download complete 2026-10-19T14:02:17.3131355Z dd9a8f7a1d13: Verifying Checksum 2026-10-19T14:02:17.3131896Z dd9a8f7a1d13: Download complete 2026-10-19T14:02:24.1305093Z 48f6a2588427: Pull complete 2026-10-19T14:02:25.3721911Z 2a22c5887fa2: Pull complete 2026-10-19T14:02:25.3814561Z d486488257d0: Pull complete 2026-10-19T14:02:25.3957053Z 4f2f4aeb91e6: Pull complete 2026-10-19T14:02:25.5796522Z 15f7511e3297: Pull complete 2026-10-19T14:02:49.9497150Z dd9a8f7a1d13: Pull complete 2026-10-19T14:02:49.9525085Z Digest: sha256:702294c324576814c5b093a24a9c737065a47a07576d4e834280318a4d2d8ef9 2026-10-19T14:02:49.9545577Z Status: Downloaded newer image for ghcr.io/hacs/action:main 2026-10-19T14:02:49.9552303Z ghcr.io/hacs/action:main 2026-10-19T14:02:49.9569669Z ##[endgroup] 2026-10-19T14:02:49.9811923Z ##[group]Run actions/checkout@v4 2026-10-19T14:02:49.9812372Z with: 2026-10-19T14:02:49.9812567Z repository: Mezzle/govee-bluetooth 2026-10-19T14:02:49.9814812Z token: *** 2026-10-19T14:02:49.9814993Z ssh-strict: true 2026-10-19T14:02:49.9815214Z ssh-user: git 2026-10-19T14:02:49.9815400Z persist-credentials: true 2026-10-19T14:02:49.9815612Z clean: true 2026-10-19T14:02:49.9815788Z sparse-checkout-cone-mode: true 2026-10-19T14:02:49.9815995Z fetch-depth: 1 2026-10-19T14:02:49.9816172Z fetch-tags: false 2026-10-19T14:02:49.9816350Z show-progress: true 2026-10-19T14:02:49.9816522Z lfs: false 2026-10-19T14:02:49.9816679Z submodules: false 2026-10-19T14:02:49.9816848Z set-safe-directory: true 2026-10-19T14:02:49.9817047Z allow-unsafe-pr-checkout: false 2026-10-19T14:02:49.9817404Z ##[endgroup] 2026-10-19T14:02:50.0686291Z Syncing repository: Mezzle/govee-bluetooth 2026-10-19T14:02:50.0688152Z ##[group]Getting Git version info 2026-10-19T14:02:50.0688783Z Working directory is '/home/runner/work/govee-bluetooth/govee-bluetooth' 2026-10-19T14:02:50.0689565Z [command]/usr/bin/git version 2026-10-19T14:02:50.0739528Z git version 2.55.0 2026-10-19T14:02:50.0756566Z ##[endgroup] 2026-10-19T14:02:50.0768802Z Temporarily overriding HOME='/home/runner/work/_temp/504ce351-50ea-417d-ad4c-b92bb6ffb3b1' before making global git config changes 2026-10-19T14:02:50.0769888Z Adding repository directory to the temporary git global config as a safe directory 2026-10-19T14:02:50.0773101Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/govee-bluetooth/govee-bluetooth 2026-10-19T14:02:50.0820141Z Deleting the contents of '/home/runner/work/govee-bluetooth/govee-bluetooth' 2026-10-19T14:02:50.0825281Z ##[group]Initializing the repository 2026-10-19T14:02:50.0827764Z [command]/usr/bin/git init /home/runner/work/govee-bluetooth/govee-bluetooth 2026-10-19T14:02:50.0906851Z hint: Using 'master' as the name for the initial branch. This default branch name 2026-10-19T14:02:50.0907715Z hint: will change to "main" in Git 3.0. To configure the initial branch name 2026-10-19T14:02:50.0908593Z hint: to use in all of your new repositories, which will suppress this warning, 2026-10-19T14:02:50.0909271Z hint: call: 2026-10-19T14:02:50.0909702Z hint: 2026-10-19T14:02:50.0910449Z hint: git config --global init.defaultBranch 2026-10-19T14:02:50.0910760Z hint: 2026-10-19T14:02:50.0911020Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 2026-10-19T14:02:50.0911441Z hint: 'development'. The just-created branch can be renamed via this command: 2026-10-19T14:02:50.0911742Z hint: 2026-10-19T14:02:50.0911911Z hint: git branch -m 2026-10-19T14:02:50.0912098Z hint: 2026-10-19T14:02:50.0912354Z hint: Disable this message with "git config set advice.defaultBranchName false" 2026-10-19T14:02:50.0912819Z Initialized empty Git repository in /home/runner/work/govee-bluetooth/govee-bluetooth/.git/ 2026-10-19T14:02:50.0923060Z [command]/usr/bin/git remote add origin https://github.com/Mezzle/govee-bluetooth 2026-10-19T14:02:50.0965013Z ##[endgroup] 2026-10-19T14:02:50.0965521Z ##[group]Disabling automatic garbage collection 2026-10-19T14:02:50.0968935Z [command]/usr/bin/git config --local gc.auto 0 2026-10-19T14:02:50.0998831Z ##[endgroup] 2026-10-19T14:02:50.0999406Z ##[group]Setting up auth 2026-10-19T14:02:50.1006047Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-19T14:02:50.1034851Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" 2026-10-19T14:02:50.1330107Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader 2026-10-19T14:02:50.1364700Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" 2026-10-19T14:02:50.1571737Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: 2026-10-19T14:02:50.1602091Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url 2026-10-19T14:02:50.1789328Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** 2026-10-19T14:02:50.3564383Z ##[endgroup] 2026-10-19T14:02:50.3564891Z ##[group]Fetching the repository 2026-10-19T14:02:50.3573154Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +535e1e936a0dd4e3eb9d99100f311674ffc75f93:refs/remotes/origin/feat/rgbic-probe-diagnostics 2026-10-19T14:02:51.0353125Z From https://github.com/Mezzle/govee-bluetooth 2026-10-19T14:02:51.0354006Z * [new ref] 535e1e936a0dd4e3eb9d99100f311674ffc75f93 -> origin/feat/rgbic-probe-diagnostics 2026-10-19T14:02:51.0356717Z ##[endgroup] 2026-10-19T14:02:51.0357219Z ##[group]Determining the checkout info 2026-10-19T14:02:51.0359953Z ##[endgroup] 2026-10-19T14:02:51.0365960Z [command]/usr/bin/git sparse-checkout disable 2026-10-19T14:02:51.0417446Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig 2026-10-19T14:02:51.0450804Z ##[group]Checking out the ref 2026-10-19T14:02:51.0457131Z [command]/usr/bin/git checkout --progress --force -B feat/rgbic-probe-diagnostics refs/remotes/origin/feat/rgbic-probe-diagnostics 2026-10-19T14:02:51.0568900Z Switched to a new branch 'feat/rgbic-probe-diagnostics' 2026-10-19T14:02:51.0572626Z branch 'feat/rgbic-probe-diagnostics' set up to track 'origin/feat/rgbic-probe-diagnostics'. 2026-10-19T14:02:51.0578129Z ##[endgroup] 2026-10-19T14:02:51.0623756Z [command]/usr/bin/git log -1 --format=%H 2026-10-19T14:02:51.0651496Z 535e1e936a0dd4e3eb9d99100f311674ffc75f93 2026-10-19T14:02:51.0865479Z ##[group]Run hacs/action@main 2026-10-19T14:02:51.0865745Z with: 2026-10-19T14:02:51.0865922Z category: integration 2026-10-19T14:02:51.0866109Z comment: true 2026-10-19T14:02:51.0868140Z github_token: *** 2026-10-19T14:02:51.0868331Z ##[endgroup] 2026-10-19T14:02:51.0959264Z ##[command]/usr/bin/docker run --name ghcriohacsactionmain_dcb63a --label 938bc5 --workdir /github/workspace --rm -e "INPUT_CATEGORY" -e "INPUT_IGNORE" -e "INPUT_REPOSITORY" -e "INPUT_COMMENT" -e "INPUT_GITHUB_TOKEN" -e "HOME" -e "GITHUB_JOB" -e "GITHUB_REF" -e "GITHUB_SHA" -e "GITHUB_REPOSITORY" -e "GITHUB_REPOSITORY_OWNER" -e "GITHUB_REPOSITORY_OWNER_ID" -e "GITHUB_RUN_ID" -e "GITHUB_RUN_NUMBER" -e "GITHUB_RETENTION_DAYS" -e "GITHUB_RUN_ATTEMPT" -e "GITHUB_ACTOR_ID" -e "GITHUB_ACTOR" -e "GITHUB_WORKFLOW" -e "GITHUB_HEAD_REF" -e "GITHUB_BASE_REF" -e "GITHUB_EVENT_NAME" -e "GITHUB_SERVER_URL" -e "GITHUB_API_URL" -e "GITHUB_GRAPHQL_URL" -e "GITHUB_REF_NAME" -e "GITHUB_REF_PROTECTED" -e "GITHUB_REF_TYPE" -e "GITHUB_WORKFLOW_REF" -e "GITHUB_WORKFLOW_SHA" -e "GITHUB_REPOSITORY_ID" -e "GITHUB_TRIGGERING_ACTOR" -e "GITHUB_WORKSPACE" -e "GITHUB_ACTION" -e "GITHUB_EVENT_PATH" -e "GITHUB_ACTION_REPOSITORY" -e "GITHUB_ACTION_REF" -e "GITHUB_PATH" -e "GITHUB_ENV" -e "GITHUB_STEP_SUMMARY" -e "GITHUB_STATE" -e "GITHUB_OUTPUT" -e "GITHUB_ARTIFACTS" -e "GITHUB_ARTIFACTS_LIST" -e "RUNNER_OS" -e "RUNNER_ARCH" -e "RUNNER_NAME" -e "RUNNER_ENVIRONMENT" -e "RUNNER_TOOL_CACHE" -e "RUNNER_TEMP" -e "RUNNER_WORKSPACE" -e "ACTIONS_RUNTIME_URL" -e "ACTIONS_RUNTIME_TOKEN" -e "ACTIONS_CACHE_URL" -e "ACTIONS_RESULTS_URL" -e "ACTIONS_CACHE_MODE" -e "ACTIONS_ORCHESTRATION_ID" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp":"/github/runner_temp" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/govee-bluetooth/govee-bluetooth":"/github/workspace" ghcr.io/hacs/action:main 2026-10-19T14:02:59.3670419Z ::INFO:: Category: integration 2026-10-19T14:02:59.3672858Z ::INFO:: Repository: Mezzle/govee-bluetooth@refs/heads/feat/rgbic-probe-diagnostics 2026-10-19T14:03:00.5429198Z ::INFO:: completed 2026-10-19T14:03:00.5429658Z ::INFO:: completed 2026-10-19T14:03:00.5430025Z ::INFO:: completed 2026-10-19T14:03:00.5430596Z ::INFO:: completed 2026-10-19T14:03:00.5445404Z ::INFO:: completed 2026-10-19T14:03:00.5446163Z ::INFO:: completed 2026-10-19T14:03:00.5446548Z ::INFO:: completed 2026-10-19T14:03:02.7239786Z ::INFO:: completed 2026-10-19T14:03:02.7333873Z ::INFO:: completed 2026-10-19T14:03:02.7334807Z ::INFO:: All (9) checks passed 2026-10-19T14:03:03.7349747Z ::INFO:: Validation completed 2026-10-19T14:03:03.7368774Z ##[group]data 2026-10-19T14:03:03.7369278Z { 2026-10-19T14:03:03.7369594Z "data": { 2026-10-19T14:03:03.7370057Z "archived": false, 2026-10-19T14:03:03.7370389Z "authors": [ 2026-10-19T14:03:03.7431667Z "@mezzle" 2026-10-19T14:03:03.7432177Z ], 2026-10-19T14:03:03.7434580Z "category": "integration", 2026-10-19T14:03:03.7434952Z "config_flow": true, 2026-10-19T14:03:03.7435298Z "default_branch": "main", 2026-10-19T14:03:03.7436096Z "description": "Home Assistant integration for Govee LED strips over Bluetooth LE, via local adapters or ESPHome Bluetooth proxies. No cloud.", 2026-10-19T14:03:03.7436827Z "domain": "govee_bluetooth", 2026-10-19T14:03:03.7437121Z "downloads": 0, 2026-10-19T14:03:03.7437583Z "etag_repository": "W/\"c857356876d4076b6f25634f60d95e783f288bc754f19d24399c33f87fa489c4\"", 2026-10-19T14:03:03.7438628Z "etag_releases": null, 2026-10-19T14:03:03.7438934Z "file_name": "", 2026-10-19T14:03:03.7439215Z "first_install": false, 2026-10-19T14:03:03.7439536Z "full_name": "Mezzle/govee-bluetooth", 2026-10-19T14:03:03.7439870Z "hide": false, 2026-10-19T14:03:03.7440152Z "has_issues": true, 2026-10-19T14:03:03.7440455Z "id": "1424335838", 2026-10-19T14:03:03.7440735Z "installed_commit": null, 2026-10-19T14:03:03.7441051Z "installed_version": null, 2026-10-19T14:03:03.7441355Z "installed": false, 2026-10-19T14:03:03.7441643Z "last_commit": null, 2026-10-19T14:03:03.7441973Z "last_updated": "2026-10-19T14:02:06Z", 2026-10-19T14:03:03.7442326Z "last_version": "v0.1.0", 2026-10-19T14:03:03.7442650Z "manifest_name": "Govee Bluetooth", 2026-10-19T14:03:03.7442975Z "new": true, 2026-10-19T14:03:03.7443245Z "open_issues": 1, 2026-10-19T14:03:03.7443533Z "prerelease": null, 2026-10-19T14:03:03.7443975Z "published_tags": [ 2026-10-19T14:03:03.7452981Z "v0.1.0" 2026-10-19T14:03:03.7453236Z ], 2026-10-19T14:03:03.7453410Z "releases": true, 2026-10-19T14:03:03.7453687Z "selected_tag": "refs/heads/feat/rgbic-probe-diagnostics", 2026-10-19T14:03:03.7453979Z "show_beta": false, 2026-10-19T14:03:03.7454383Z "stargazers_count": 0, 2026-10-19T14:03:03.7454663Z "topics": [ 2026-10-19T14:03:03.7454905Z "bluetooth", 2026-10-19T14:03:03.7455169Z "bluetooth-le", 2026-10-19T14:03:03.7455441Z "esphome", 2026-10-19T14:03:03.7455615Z "govee", 2026-10-19T14:03:03.7455777Z "hacs", 2026-10-19T14:03:03.7455946Z "home-assistant", 2026-10-19T14:03:03.7456155Z "home-assistant-integration" 2026-10-19T14:03:03.7456366Z ] 2026-10-19T14:03:03.7456515Z }, 2026-10-19T14:03:03.7456676Z "manifest": { 2026-10-19T14:03:03.7456858Z "content_in_root": false, 2026-10-19T14:03:03.7457068Z "country": [], 2026-10-19T14:03:03.7457477Z "filename": null, 2026-10-19T14:03:03.7457663Z "hacs": null, 2026-10-19T14:03:03.7457847Z "hide_default_branch": false, 2026-10-19T14:03:03.7458062Z "homeassistant": "2025.6.0", 2026-10-19T14:03:03.7458275Z "manifest": { 2026-10-19T14:03:03.7458481Z "name": "Govee Bluetooth", 2026-10-19T14:03:03.7458696Z "render_readme": true, 2026-10-19T14:03:03.7458911Z "homeassistant": "2025.6.0" 2026-10-19T14:03:03.7459117Z }, 2026-10-19T14:03:03.7459277Z "name": "Govee Bluetooth", 2026-10-19T14:03:03.7459490Z "persistent_directory": null, 2026-10-19T14:03:03.7459706Z "render_readme": true, 2026-10-19T14:03:03.7459911Z "zip_release": false 2026-10-19T14:03:03.7460129Z }, 2026-10-19T14:03:03.7460315Z "release": { 2026-10-19T14:03:03.7460497Z "tag": "v0.1.0", 2026-10-19T14:03:03.7460676Z "assets": [] 2026-10-19T14:03:03.7460847Z }, 2026-10-19T14:03:03.7461005Z "category": "integration", 2026-10-19T14:03:03.7461238Z "ref": "refs/heads/feat/rgbic-probe-diagnostics" 2026-10-19T14:03:03.7461487Z } 2026-10-19T14:03:03.7461916Z ##[endgroup] 2026-10-19T14:03:04.6821734Z Post job cleanup. 2026-10-19T14:03:04.7586357Z [command]/usr/bin/git version 2026-10-19T14:03:04.7627136Z git version 2.55.0 2026-10-19T14:03:04.7660501Z Temporarily overriding HOME='/home/runner/work/_temp/e73bac94-ee36-4127-9ad5-1b7171cc604e' before making global git config changes 2026-10-19T14:03:04.7661436Z Adding repository directory to the temporary git global config as a safe directory 2026-10-19T14:03:04.7666518Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/govee-bluetooth/govee-bluetooth 2026-10-19T14:03:04.7707498Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-19T14:03:04.7754304Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" 2026-10-19T14:03:04.7972011Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader 2026-10-19T14:03:04.8001054Z http.https://github.com/.extraheader 2026-10-19T14:03:04.8011312Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader 2026-10-19T14:03:04.8045723Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" 2026-10-19T14:03:04.8277399Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: 2026-10-19T14:03:04.8319608Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url 2026-10-19T14:03:04.8671202Z Cleaning up orphan processes 2026-10-19T14:03:04.8973467Z ##[warning]Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/