Conversation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
📝 WalkthroughWalkthroughModified GitHub Actions workflow to allow macOS build failures without blocking merge by adding check permissions, making the build job continue-on-error, and introducing a new job that marks certain platform-specific failures as unstable rather than blocking. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #817 +/- ##
=======================================
Coverage 31.25% 31.25%
=======================================
Files 84 84
Lines 4563 4563
Branches 1103 1103
=======================================
Hits 1426 1426
Misses 3137 3137 🚀 New features to boost your workflow:
|
Use the Checks API to flip failed macOS build conclusions to neutral (gray dash) so unstable builds don't show red X marks on PRs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
🧹 Nitpick comments (1)
.github/workflows/build-tests-mac.yml (1)
109-111: Consider defensive handling for the name match.The substring check relies on the matrix job naming convention (
${{ matrix.targetPlatform }} on ${{ matrix.unityVersion }}). If this naming changes, the script would silently skip all runs.An alternative would be to match against the full expected name pattern or use a more explicit marker (like a label or output), but the current approach is pragmatic for this use case.
💡 Optional: More explicit matching
- if (!run.name.includes('StandaloneOSX') && !run.name.includes('iOS')) continue; + const macPlatforms = ['StandaloneOSX', 'iOS']; + const isMacBuild = macPlatforms.some(p => run.name.includes(p)); + if (!isMacBuild) continue;This is slightly more maintainable if you need to add more platforms later (e.g.,
tvOS,VisionOS).🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/build-tests-mac.yml around lines 109 - 111, The current loop over checkRuns.check_runs uses fragile substring checks on run.name (run.name.includes('StandaloneOSX') / 'iOS') and may silently skip runs if naming changes; update the logic in the loop that inspects checkRuns.check_runs to use a more defensive match (e.g., compare against a full expected name pattern or a regex anchored to the expected matrix format, or check for an explicit marker/label in the check run metadata) and add a fallback/warning when no matching runs are found so failures aren't silently ignored; keep the existing early filters (run.conclusion and run.app?.slug) but replace the includes-based checks on run.name with the more reliable matching strategy and a logged warning when no matches occur.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In @.github/workflows/build-tests-mac.yml:
- Around line 109-111: The current loop over checkRuns.check_runs uses fragile
substring checks on run.name (run.name.includes('StandaloneOSX') / 'iOS') and
may silently skip runs if naming changes; update the logic in the loop that
inspects checkRuns.check_runs to use a more defensive match (e.g., compare
against a full expected name pattern or a regex anchored to the expected matrix
format, or check for an explicit marker/label in the check run metadata) and add
a fallback/warning when no matching runs are found so failures aren't silently
ignored; keep the existing early filters (run.conclusion and run.app?.slug) but
replace the includes-based checks on run.name with the more reliable matching
strategy and a logged warning when no matches occur.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 6d0b9231-677b-4e5f-b6cb-2faf7b0d1f78
⛔ Files ignored due to path filters (1)
dist/index.js.mapis excluded by!**/dist/**,!**/*.map
📒 Files selected for processing (1)
.github/workflows/build-tests-mac.yml
Stop modifying the macOS build workflow — leave it identical to main. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Closing — reverting macOS workflow changes, leaving build-tests-mac.yml identical to main. |

Summary
continue-on-error: trueto the macOS build job inbuild-tests-mac.ymlTest plan
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Summary by CodeRabbit