- Add pre-build cleanup on GitHub-hosted runner using jlumbroso/free-disk-space plus Docker builder/system prune to maximize available disk for Docker builds.
- Add pre-build Docker cache pruning and disk checks on self-hosted runner to keep it minimal and appropriate for ephemeral runners.
- Change fallback logic to run self-hosted only if the GitHub-hosted build fails, using needs.<job>.result with always() to ensure the fallback job triggers after a primary failure.
- Keep GHCR login via docker/login-action@v3 and Buildx via docker/setup-buildx-action@v3; build with docker/build-push-action@v6.
- Publish release only if either build path succeeds; fail workflow if both builds or release publish fail.
- Remove post-build cleanup steps (BuildKit image removal and general pruning) to align with instruction not to worry about post cleanup on ephemeral runners.
- Gate on new upstream release whose tag matches comfyui_version.py; skip if already released locally.
- Sync master from upstream (keep local README.md), then build and push image on GH runner with pre-clean; fallback to ephemeral self-hosted if GH build fails; publish release if either path succeeds.
- Remove unnecessary post-job cleanup since runners are ephemeral; rely on setup-buildx cleanup.