Skip to content

fix(init): rotate spinner messages during long plan-codemods wait#1108

Open
jared-outpost[bot] wants to merge 2 commits into
mainfrom
issue-1107-init-spinner-progress
Open

fix(init): rotate spinner messages during long plan-codemods wait#1108
jared-outpost[bot] wants to merge 2 commits into
mainfrom
issue-1107-init-spinner-progress

Conversation

@jared-outpost

@jared-outpost jared-outpost Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

During plan-codemods, the spinner showed static text ("Planning code changes...") for up to ~3 minutes while the server fetched SDK docs and ran the planner agent, causing users to bail. This adds client-side rotating progress messages that cycle every 12s during resumeWithRecovery() for steps with known long waits (plan-codemods, detect-platform). After exhausting all messages, elapsed time is appended so the user knows the system is still working.

No regression in LoggingUI — the spinner's message() method logs each rotation as a separate line in non-interactive mode, which is the desired behavior.

Testing

  • vitest run test/lib/init/clack-utils.test.ts — 15/15 pass (4 new tests for progress message constants)
  • wizard-runner.test.ts has a pre-existing Stricli alias conflict (-H in local/server.ts) that prevents it from loading; 3 new tests added for the rotation behavior
  • biome check clean on all changed files

Closes #1107

During plan-codemods, the spinner showed static text for up to ~3min
while the server fetched SDK docs and ran the planner agent. Users
assumed the CLI had hung and bailed.

Add client-side rotating progress messages that cycle every 12s during
resumeWithRecovery() for steps with known long waits (plan-codemods,
detect-platform). After exhausting all messages, append elapsed time
so the user knows the system is still working.

Fixes #1107
@github-actions

github-actions Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://cli.sentry.dev/_preview/pr-1108/

Built to branch gh-pages at 2026-06-17 12:12 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@github-actions

github-actions Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Codecov Results 📊

✅ Patch coverage is 89.29%. Project has 5041 uncovered lines.
✅ Project coverage is 81.23%. Comparing base (base) to head (head).

Files with missing lines (1)
File Patch % Lines
src/lib/init/wizard-runner.ts 88.46% ⚠️ 3 Missing and 2 partials
Coverage diff
@@            Coverage Diff             @@
##          main       #PR       +/-##
==========================================
+ Coverage    81.23%    81.23%        —%
==========================================
  Files          386       386         —
  Lines        26831     26858       +27
  Branches     17427     17439       +12
==========================================
+ Hits         21795     21817       +22
- Misses        5036      5041        +5
- Partials      1810      1814        +4

Generated by Codecov Action

@jared-outpost jared-outpost Bot marked this pull request as ready for review June 17, 2026 12:08

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 30115b2. Configure here.

Comment thread src/lib/init/wizard-runner.ts
The rotation timer could overwrite 'Reconnecting...' spinner messages
during stale-step or connection recovery. Add pause/resume to the
rotation handle so resumeWithRecovery can suppress ticks while
recovery is in progress.
@jared-outpost

jared-outpost Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor Author

all CI checks are green. skipping auto-merge since the diff is 363 lines across 4 files (exceeds the 150-line threshold for autonomous merge) — leaving for human review.

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.

init: spinner shows static text for ~3min during plan-codemods (docs fetch + planner agent), users bail

0 participants