Skip to content

fix: Rename the global uloop launcher to dispatcher in user-facing text#1994

Merged
hatayama merged 2 commits into
v3-betafrom
fix/rename-launcher-to-dispatcher
Jul 25, 2026
Merged

fix: Rename the global uloop launcher to dispatcher in user-facing text#1994
hatayama merged 2 commits into
v3-betafrom
fix/rename-launcher-to-dispatcher

Conversation

@hatayama

@hatayama hatayama commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • User-facing CLI text now calls the global uloop binary a dispatcher, matching docs/glossary.md
  • Avoids confusing that binary with uloop launch (Unity Editor launch)

User Impact

  • Before: uloop update / install / uninstall / help said "launcher", which is not a glossary term and can be misread as the Unity launch command
  • After: those messages say "dispatcher" instead; legacy npm uloop-cli launchers cleanup wording is unchanged

Changes

  • Reword dispatcher / project-runner / installer user-facing strings, help, and related comments/tests from launcherdispatcher
  • Rename printLauncherHelpprintDispatcherHelp and matching test identifiers
  • Refresh shared-inputs-stamp.json for both components after touching shared release inputs
  • Do not change legacy npm launcher cleanup strings, removeLegacyLaunchers, uloop launch, or unrelated SKILL.md / changelog history

Verification

  • scripts/check-go-cli.sh — pass
  • scripts/test-install-release-filter.sh — pass
  • scripts/test-stamp-release-inputs.sh — pass
  • dist/darwin-arm64/uloop --help starts with Dispatcher. Finds the Unity project, ...
  • uloop install --help / uloop uninstall --help use dispatcher wording; legacy npm launcher lines remain
  • uloop compile — 0 errors / 0 warnings
  • Remaining launcher hits are only the intentional exclusions (legacy npm cleanup, removeLegacyLaunchers, etc.)

Known pre-existing test failure (not caused by this PR)

  • NativeCliInstallerTests: 32 / 33 passed
  • Only failure: GetInstallCommand_RemoteBootstrapsEmitProgressLinesInStageOrder
  • Same failure reproduces on a clean origin/v3-beta tree with this PR's changes stashed
  • Root cause: POSIX ManualCommand is wrapped via BuildLoginShellPosixInstallScriptCommand, which escapes inner single quotes through QuotePosixShellValue, so IndexOf("echo 'Downloading installer script...'") returns -1. Production output is correct; the assertion is wrong. Unrelated to the launcher→dispatcher rename

Suggested follow-up (out of scope here)

  • Fix the test, not production strings: assert against the pre-wrap POSIX command, or escape the expected substring with the same QuotePosixShellValue rules. Do not change the production echo progress text to make the brittle assertion pass.

Review in cubic

Align CLI output, help, comments, and tests with docs/glossary.md so
"launcher" is not confused with the uloop launch command. Leave legacy
npm uloop-cli launcher cleanup wording unchanged.

Co-authored-by: Cursor <cursoragent@cursor.com>
@coderabbitai

coderabbitai Bot commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Warning

Review limit reached

@hatayama, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 51 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 40636d68-5638-4f97-a556-0021c85b382b

📥 Commits

Reviewing files that changed from the base of the PR and between 4956bdf and b327d5b.

📒 Files selected for processing (2)
  • cli/dispatcher/internal/dispatcher/dispatcher_bootstrap_routing_test.go
  • cli/dispatcher/internal/dispatcher/dispatcher_test.go
📝 Walkthrough

Walkthrough

The change consistently renames user-facing and test terminology from “launcher” to “dispatcher” across command metadata, help, install/update/uninstall flows, project-runner messaging, documentation comments, and generated input hashes.

Changes

Dispatcher terminology alignment

Layer / File(s) Summary
Dispatcher contracts and command metadata
cli/common/clicore/command_registry.go, cli/dispatcher/dispatchercontract/*, cli/dispatcher/internal/nativepath/path.go
Command descriptions, version documentation, and native path comments now refer to the dispatcher.
Dispatcher help and bootstrap routing
cli/dispatcher/internal/dispatcher/{run_help.go,dispatcher_process.go,bootstrap_platform_errors.go,*_test.go}
Dispatcher help, bootstrap guidance, JSON identity assertions, and routing expectations use dispatcher-specific wording.
Install, update, and uninstall messaging
cli/dispatcher/internal/dispatcher/{install.go,update.go,uninstall.go,*_test.go}, cli/dispatcher/internal/install/command_test.go, cli/dispatcher/internal/uninstall/command_test.go, Assets/Tests/Editor/NativeCliInstallerTests.cs, scripts/install.sh, cli/dispatcher/shared-inputs-stamp.json
Lifecycle output, help text, deferred removal descriptions, scripts, and test names and expectations now identify the dispatcher.
Project-runner delegation messaging
cli/project-runner/internal/projectrunner/*, cli/project-runner/shared-inputs-stamp.json
Runner usage, dispatcher-owned command errors, and related assertions now refer to the global dispatcher.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 32.61% 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 states the main change: renaming launcher wording to dispatcher in user-facing text.
Description check ✅ Passed The description is detailed and directly matches the changeset, including terminology updates, renamed help functions, and verification notes.
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 unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/rename-launcher-to-dispatcher

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.

The launcher-to-dispatcher wording left tautologies that no longer
explained what each test distinguishes.

Co-authored-by: Cursor <cursoragent@cursor.com>
@hatayama
hatayama merged commit 3fdd062 into v3-beta Jul 25, 2026
12 checks passed
@hatayama
hatayama deleted the fix/rename-launcher-to-dispatcher branch July 25, 2026 16:17
@github-actions github-actions Bot mentioned this pull request Jul 25, 2026
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