Skip to content

Revert "fix(unity-builder): retry mac builds on transient licensing-client signature error" - #228

Merged
frostebite merged 1 commit into
mainfrom
revert/mac-licensing-retry
Aug 28, 2026
Merged

Revert "fix(unity-builder): retry mac builds on transient licensing-client signature error"#228
frostebite merged 1 commit into
mainfrom
revert/mac-licensing-retry

Conversation

@frostebite

@frostebite frostebite commented Aug 28, 2026

Copy link
Copy Markdown
Member

Summary

Reverts #226. That PR added a retry wrapper around MacBuilder.run()'s whole entrypoint.sh invocation for Unity's transient "Code 10 while verifying Licensing Client signature" error — but there's already a pre-existing, better-designed retry mechanism for exactly this error class: dist/platforms/mac/steps/activate.sh and build.sh already retry the specific failing sub-step (not the whole entrypoint) up to UNITY_LICENSE_RETRY_MAX_ATTEMPTS (default 4) times with exponential backoff (20s/40s/80s), documented in src/logic/unity/environment.ts.

I missed this when writing #226 and duplicated it at a coarser outer layer — my version retried the entire entrypoint.sh (re-running successful activation from scratch) with a flat 10s delay and only 3 attempts, layered on top of the existing 4-attempt inner retry. Confirmed live on game-ci/unity-builder#844's CI: a job hit the existing inner mechanism's all 4 attempts, still failed — evidence that when the flake is persistent enough to exhaust well-tuned exponential backoff, an additional outer retry just wastes more wall-clock time rather than improving reliability.

No replacement fix needed here — the existing mechanism is already the right one; this PR is pure cleanup.

Test plan

  • vitest run in plugins/unity — clean (mac-builder.test.ts removed along with the reverted code)
  • tsc --noEmit — clean

Summary by CodeRabbit

  • Behavior Changes
    • macOS Unity builds now run the entrypoint once and return its exit status directly.
    • Automatic retries for transient Unity Licensing Client signature-verification errors have been removed.
    • Build command output remains suppressed while non-zero exit codes are handled directly.

…ensing-client signature error (#226)"

This reverts commit 65f5019.
@coderabbitai

coderabbitai Bot commented Aug 28, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 34b47605-6b17-47fd-b3aa-245ff367d04b

📥 Commits

Reviewing files that changed from the base of the PR and between c0449a2 and 1284001.

⛔ Files ignored due to path filters (2)
  • plugins/unity/dist/unity-builder/model/mac-builder.d.ts is excluded by !**/dist/**
  • plugins/unity/dist/unity-builder/model/mac-builder.js is excluded by !**/dist/**
📒 Files selected for processing (2)
  • plugins/unity/src/unity-builder/model/mac-builder.test.ts
  • plugins/unity/src/unity-builder/model/mac-builder.ts
💤 Files with no reviewable changes (1)
  • plugins/unity/src/unity-builder/model/mac-builder.test.ts

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

MacBuilder.run now executes the macOS entrypoint once and returns its exit code. The retry logic, transient licensing error detection, warning call, and related tests were removed.

Changes

MacBuilder execution

Layer / File(s) Summary
Single macOS entrypoint execution
plugins/unity/src/unity-builder/model/mac-builder.ts, plugins/unity/src/unity-builder/model/mac-builder.test.ts
MacBuilder.run removes transient licensing error retries and warning handling. The test suite for the removed retry behavior was also deleted.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: 🔵 Low · up to 12840

This revert removes retry coverage for macOS Unity licensing failures, and the checked-in scripts do not provide the claimed replacement retry. A transient licensing-signature error can now fail a build on its first attempt, so merge requires explicit owner awareness that this reliability tradeoff is intentional.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the main change: reverting the previous retry fix for transient licensing-client signature errors.
Description check ✅ Passed The description clearly explains the reverted approach, the existing replacement mechanism, the reason for the change, and the completed test plan. It does not use the template headings or include the…
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description clearly explains the reverted approach, the existing replacement mechanism, the reason for the change, and the completed test plan. It does not use the template headings or include the full checklist, but the required information is mostly present.

Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1 files.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch revert/mac-licensing-retry

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@frostebite
frostebite merged commit 6003d28 into main Aug 28, 2026
15 checks passed
@frostebite
frostebite deleted the revert/mac-licensing-retry branch August 28, 2026 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant