Pin an exact Node version in the workflow instead of a floating range, e.g. node-version 16.17.1 rather than 16.x. When a previously green pipeline starts hanging with no code changes, suspect the runner image or a floating tool version first and bisect by pinning versions one at a time. Report the bad version upstream so the incompatibility can be investigated.

Context: GitHub issue pulumi/pulumi#11889 (closed): pulumi preview and pulumi up hang intermittently on GitHub Actions while working fine on the reporter machine. The reporter bisected it to the Node runtime: setup-node resolving 16.x moved from 16.18.1 to 16.19.0 and the hangs started; pinning to 16.17.1 restored full success.