Skip to content

fix: Skill updates no longer show a completion dialog#1432

Merged
hatayama merged 3 commits into
v3-betafrom
feature/improve-skill-update-view
Jun 29, 2026
Merged

fix: Skill updates no longer show a completion dialog#1432
hatayama merged 3 commits into
v3-betafrom
feature/improve-skill-update-view

Conversation

@hatayama

@hatayama hatayama commented Jun 29, 2026

Copy link
Copy Markdown
Owner

Summary

  • Skill updates in Setup Wizard and Settings now finish by refreshing the UI to Installed without showing a success dialog.
  • First-time skill installs still show the Skills Installed confirmation.

User Impact

  • Updating existing skills no longer interrupts the flow with an unnecessary completion popup.
  • Users still get confirmation when they install skills for the first time.

Changes

  • Track whether the selected skill target or install target list is outdated before running skill installation.
  • Show the success dialog only when the operation is a first-time install.
  • Add editor tests for the update-vs-install dialog decision.

Verification

  • Passed: cli/dist/darwin-arm64/uloop compile --project-path <PROJECT_ROOT>
  • Passed: cli/dist/darwin-arm64/uloop run-tests --test-mode EditMode --filter-type regex --filter-value ".ShouldShowSkillsInstalledDialog."
  • Note: The broader filtered run for SetupWizardWindowTests and UnityCliLoopSettingsWindowCliActionTests still has existing CLI dispatcher-version expectation failures outside this change.

Review in cubic

Keep the first-install success dialog while making skill updates rely on the refreshed Installed state instead of showing a completion dialog.
@coderabbitai

coderabbitai Bot commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 25b39235-a7cf-49e2-9778-b605ecbd651d

📥 Commits

Reviewing files that changed from the base of the PR and between d2d81f6 and bb06526.

📒 Files selected for processing (4)
  • Assets/Tests/Editor/SetupWizardWindowTests.cs
  • Assets/Tests/Editor/UnityCliLoopSettingsWindowCliActionTests.cs
  • Packages/src/Editor/Presentation/Setup/SetupWizardWindow.cs
  • Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs
🚧 Files skipped from review as they are similar to previous changes (1)
  • Packages/src/Editor/Presentation/Setup/SetupWizardWindow.cs

📝 Walkthrough

Walkthrough

Two editor windows add internal helpers to decide when to show the skills-installed dialog. The SetupWizard path now checks all installable targets, and the UnityCliLoop path checks the selected target after resolving its install state. Tests cover Missing, Outdated, and different-layout cases.

Changes

Conditional skills-installed dialog

Layer / File(s) Summary
SetupWizardWindow dialog gate
Packages/src/Editor/Presentation/Setup/SetupWizardWindow.cs, Assets/Tests/Editor/SetupWizardWindowTests.cs
Adds a helper that returns true only when every installable target is not Outdated and has no different-layout skills, then uses it to guard the post-install dialog in SetupWizardWindow; tests cover Missing, Outdated, and different-layout targets.
UnityCliLoopSettingsWindow dialog gate
Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs, Assets/Tests/Editor/UnityCliLoopSettingsWindowCliActionTests.cs
Refactors selected-target resolution, adds a helper that checks one target for Outdated and different-layout state, and conditionally shows the skills-installed dialog after install; tests cover the updated helper behavior.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main behavior change: skill updates no longer show a completion dialog.
Description check ✅ Passed The description matches the PR changes and explains the update-vs-install dialog behavior and tests.
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.
✨ 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 feature/improve-skill-update-view

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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs`:
- Around line 1027-1028: The dialog decision is still based on the cached
_selectedTargetInstallState, which may be stale because it is refreshed
asynchronously. Update UnityCliLoopSettingsWindow so the selected target’s
install state is recomputed with a fresh check immediately before calling
ShouldShowSkillsInstalledDialog, and use that fresh value instead of the cached
field when deriving shouldShowSkillsInstalledDialog. Keep the fix localized
around the existing ShouldShowSkillsInstalledDialog flow and the
_selectedTargetInstallState usage.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: fac7be07-20c3-4073-95d4-b223e26a4368

📥 Commits

Reviewing files that changed from the base of the PR and between 0e6338b and d2d81f6.

📒 Files selected for processing (4)
  • Assets/Tests/Editor/SetupWizardWindowTests.cs
  • Assets/Tests/Editor/UnityCliLoopSettingsWindowCliActionTests.cs
  • Packages/src/Editor/Presentation/Setup/SetupWizardWindow.cs
  • Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs

Comment thread Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs Outdated
Treat existing skills in a different layout as an update path so Setup Wizard does not show the first-install success dialog after migrating them.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 4 files

You’re at about 91% of the monthly reviewed-line limit. You may want to disable incremental reviews to conserve quota. Reviews will continue until that limit is exceeded. If you need help avoiding interruptions, please contact contact@cubic.dev.

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs">

<violation number="1" location="Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs:1028">
P2: Race condition: `_selectedTargetInstallState` is refreshed asynchronously and may be stale when the user clicks install. If the async refresh hasn't completed yet, an actually `Outdated` target could still hold `Missing` state, causing the success dialog to incorrectly appear during an update flow. Consider re-evaluating the install state synchronously here (e.g., via `GetSelectedTargetInstallState` with a freshness check) before deciding whether to show the dialog.</violation>
</file>

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread Packages/src/Editor/Presentation/UnityCliLoopSettingsWindow.cs Outdated
Read the selected skill target details before installing so Settings treats existing skills in a different layout as an update instead of a first install.
@hatayama hatayama merged commit b99fb41 into v3-beta Jun 29, 2026
10 checks passed
@hatayama hatayama deleted the feature/improve-skill-update-view branch June 29, 2026 15:16
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