Skip to content

fix: First dispatcher commands now show CLI download status#1419

Merged
hatayama merged 2 commits into
v3-betafrom
fix/v3-dispatcher-download-status-v3-beta
Jun 27, 2026
Merged

fix: First dispatcher commands now show CLI download status#1419
hatayama merged 2 commits into
v3-betafrom
fix/v3-dispatcher-download-status-v3-beta

Conversation

@hatayama

@hatayama hatayama commented Jun 27, 2026

Copy link
Copy Markdown
Owner

Summary

  • First-time dispatcher commands now tell users when the pinned CLI is being downloaded.
  • The download-status dispatcher change is released as the next beta dispatcher version.

User Impact

  • Before this change, the first command after installing the dispatcher could appear stuck while the project-pinned CLI downloaded.
  • After this change, users and agents see a short status line before the download starts.

Changes

  • Pass stderr into the pinned CLI resolution path so the dispatcher can report download startup.
  • Keep the message off stdout so command JSON output remains parseable.
  • Bump the dispatcher beta requirement to 3.0.1-beta.2 for the launcher behavior change.
  • Add regression coverage for cached and uncached pinned CLI resolution.

Verification

  • scripts/check-go-cli.sh
  • cli/dist/darwin-arm64/uloop compile --project-path "/Users/a12115/ghq/hatayama/unity-cli-loop2"
  • go run ./cmd/check-dispatcher-version-bump --base origin/v3-beta --head HEAD
  • EVENT_NAME=push EVENT_REF_NAME=v3-beta scripts/resolve-dispatcher-release-target.sh

Emit a single stderr status line when the dispatcher has to download the project-pinned real CLI, so callers can distinguish first-run preparation from a stalled command without polluting stdout.
@coderabbitai

coderabbitai Bot commented Jun 27, 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: 86abb671-b5f1-48d3-9f65-c0a4c8e0903c

📥 Commits

Reviewing files that changed from the base of the PR and between 0164c09 and b58c2b4.

📒 Files selected for processing (4)
  • .uloop/cli-pin.json
  • Packages/src/Editor/Domain/CliConstants.cs
  • Packages/src/cli-pin.json
  • cli/dispatcher-contract.json
✅ Files skipped from review due to trivial changes (2)
  • .uloop/cli-pin.json
  • Packages/src/cli-pin.json

📝 Walkthrough

Walkthrough

Dispatcher resolution now threads ctx and stderr into the pinned real-CLI lookup and download path. The downloader prints a status line to stderr before fetching the archive, and the dispatcher version pin is updated to 3.0.1-beta.2.

Changes

Dispatcher stderr plumbing

Layer / File(s) Summary
Stderr plumbing
cli/internal/cli/dispatcher.go, cli/internal/cli/dispatcher_download.go
RunDispatcher passes ctx and stderr into resolveDispatcherRealCLI, the resolver forwards stderr to downloadDispatcherRealCLI, and the downloader writes the pinned-CLI download message before starting the fetch.
Stderr tests
cli/internal/cli/dispatcher_test.go
dispatcher_test.go adds a round-tripper helper, checks empty stderr for the cached CLI path, discards writer output for invalid-version resolution, and verifies the download status line and downloaded file contents.

Dispatcher version bump

Layer / File(s) Summary
Version pin updates
.uloop/cli-pin.json, Packages/src/Editor/Domain/CliConstants.cs, Packages/src/cli-pin.json, cli/dispatcher-contract.json
The dispatcher minimum version and contract version values are updated from 3.0.1-beta.1 to 3.0.1-beta.2 across the pin and editor constant files.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 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 change: first dispatcher commands now show CLI download status.
Description check ✅ Passed The description is directly related to the changeset and accurately describes the download-status and version-bump updates.
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 fix/v3-dispatcher-download-status-v3-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.

❤️ Share

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

@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.

No issues found across 3 files

Re-trigger cubic

Release the dispatcher download status change as the next beta dispatcher so CI can verify the launcher input change.
@hatayama
hatayama merged commit 722d799 into v3-beta Jun 27, 2026
10 checks passed
@hatayama
hatayama deleted the fix/v3-dispatcher-download-status-v3-beta branch June 27, 2026 13:04
@github-actions github-actions Bot mentioned this pull request Jun 27, 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