fix: Unity startup recovery avoids premature readiness timeouts - #1296
Conversation
Avoid spending the project IPC readiness timeout while Unity is still compiling, updating, or completing domain reload work after the endpoint has already bound. The idle wait stays bounded by the readiness timeout so recovery fails instead of hanging when Unity never becomes ready.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThe PR adds an "editor idle" gate to the server readiness-probe flow. The controller now waits until the Unity editor is not busy before running the readiness probe, with configurable timeout and injectable predicates for determining busy state and retry delay. ChangesEditor Idle Wait Gate
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 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 |
Summary
User Impact
Changes
Verification
cli/dist/darwin-arm64/uloop compile --project-path "$(git rev-parse --show-toplevel)"cli/dist/darwin-arm64/uloop run-tests --project-path "$(git rev-parse --show-toplevel)" --test-mode EditMode --filter-type exact --filter-value "io.github.hatayama.UnityCliLoop.Tests.Editor.UnityCliLoopServerControllerRecoveryTests.StartRecoveryIfNeededAsync_WhenEditorNeverBecomesIdle_ShouldFailWithoutReadinessProbe"cli/dist/darwin-arm64/uloop run-tests --project-path "$(git rev-parse --show-toplevel)" --test-mode EditMode --filter-type regex --filter-value "UnityCliLoopServerControllerRecoveryTests|UnityCliLoopServerStartupProtectionTests"git diff --check HEAD~1 HEADcodex-review v3-betaclean