From 0e5f1c5e03a05d7ad40d8356b29195df56cb8414 Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Mon, 24 Nov 2025 16:13:50 +0000 Subject: [PATCH 1/9] CLI: Update clack --- code/core/package.json | 2 +- .../node-logger/prompts/prompt-functions.ts | 20 ++++++++++++++++--- .../prompts/prompt-provider-base.ts | 3 ++- .../prompts/prompt-provider-clack.ts | 8 ++++++-- code/core/src/node-logger/tasks.ts | 6 +++--- code/yarn.lock | 20 +++++++++---------- 6 files changed, 39 insertions(+), 20 deletions(-) diff --git a/code/core/package.json b/code/core/package.json index e8f6e3b21cbb..390f37270f11 100644 --- a/code/core/package.json +++ b/code/core/package.json @@ -220,7 +220,7 @@ "@babel/parser": "^7.26.9", "@babel/traverse": "^7.26.9", "@babel/types": "^7.26.8", - "@clack/prompts": "1.0.0-alpha.6", + "@clack/prompts": "1.0.0-alpha.7", "@devtools-ds/object-inspector": "^1.1.2", "@discoveryjs/json-ext": "^0.5.3", "@emotion/cache": "^11.14.0", diff --git a/code/core/src/node-logger/prompts/prompt-functions.ts b/code/core/src/node-logger/prompts/prompt-functions.ts index 30182d843900..2aa790b50d89 100644 --- a/code/core/src/node-logger/prompts/prompt-functions.ts +++ b/code/core/src/node-logger/prompts/prompt-functions.ts @@ -122,11 +122,18 @@ export const spinner = (options: SpinnerOptions): SpinnerInstance => { spinnerInstance.start(message); } }, - stop: (message?: string) => { + cancel: (message?: string) => { activeSpinner = null; restoreConsoleLog(); if (shouldLog('info')) { - spinnerInstance.stop(message); + spinnerInstance.cancel(message); + } + }, + error: (message?: string) => { + activeSpinner = null; + restoreConsoleLog(); + if (shouldLog('error')) { + spinnerInstance.error(message); } }, message: (text: string) => { @@ -146,11 +153,18 @@ export const spinner = (options: SpinnerOptions): SpinnerInstance => { maybeLog(message); } }, - stop: (message) => { + cancel: (message) => { if (message) { maybeLog(message); } }, + error: (message) => { + if (message) { + if (shouldLog('error')) { + logger.error(message); + } + } + }, message: (message) => { maybeLog(message); }, diff --git a/code/core/src/node-logger/prompts/prompt-provider-base.ts b/code/core/src/node-logger/prompts/prompt-provider-base.ts index b9b2bd9b54c9..cf1d7b02394b 100644 --- a/code/core/src/node-logger/prompts/prompt-provider-base.ts +++ b/code/core/src/node-logger/prompts/prompt-provider-base.ts @@ -45,7 +45,8 @@ export interface PromptOptions { export interface SpinnerInstance { start: (message?: string) => void; - stop: (message?: string) => void; + cancel: (message?: string) => void; + error: (message?: string) => void; message: (text: string) => void; } diff --git a/code/core/src/node-logger/prompts/prompt-provider-clack.ts b/code/core/src/node-logger/prompts/prompt-provider-clack.ts index 38880c47dfca..b94f34d0ff98 100644 --- a/code/core/src/node-logger/prompts/prompt-provider-clack.ts +++ b/code/core/src/node-logger/prompts/prompt-provider-clack.ts @@ -101,9 +101,13 @@ export class ClackPromptProvider extends PromptProvider { logTracker.addLog('info', `${spinnerId}: ${message}`); task.message(message); }, - stop: (message) => { + cancel: (message) => { logTracker.addLog('info', `${spinnerId}-stop: ${message}`); - task.stop(message); + task.cancel(message); + }, + error: (message) => { + logTracker.addLog('error', `${spinnerId}-stop: ${message}`); + task.error(message); }, }; } diff --git a/code/core/src/node-logger/tasks.ts b/code/core/src/node-logger/tasks.ts index cbd5b67569e5..54db166ce32d 100644 --- a/code/core/src/node-logger/tasks.ts +++ b/code/core/src/node-logger/tasks.ts @@ -149,7 +149,7 @@ export const executeTaskWithSpinner = async ( await childProcess; } logTracker.addLog('info', success); - task.stop(success); + task.cancel(success); } catch (err: any) { const isAborted = abortController?.signal.aborted || @@ -158,12 +158,12 @@ export const executeTaskWithSpinner = async ( if (isAborted) { logTracker.addLog('info', `${intro} aborted`); - task.stop(CLI_COLORS.warning(`${intro} aborted`)); + task.cancel(CLI_COLORS.warning(`${intro} aborted`)); return; } const errorMessage = err instanceof Error ? (err.stack ?? err.message) : String(err); logTracker.addLog('error', error, { error: errorMessage }); - task.stop(CLI_COLORS.error(error)); + task.error(CLI_COLORS.error(error)); throw err; } finally { cleanup?.(); diff --git a/code/yarn.lock b/code/yarn.lock index 1d672ebd3d2b..de0ed9916a16 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -2104,24 +2104,24 @@ __metadata: languageName: node linkType: hard -"@clack/core@npm:1.0.0-alpha.6": - version: 1.0.0-alpha.6 - resolution: "@clack/core@npm:1.0.0-alpha.6" +"@clack/core@npm:1.0.0-alpha.7": + version: 1.0.0-alpha.7 + resolution: "@clack/core@npm:1.0.0-alpha.7" dependencies: picocolors: "npm:^1.0.0" sisteransi: "npm:^1.0.5" - checksum: 10c0/5d8949d74bccda55d31510f481a93828f8341e2ecfde1c5809cdd3e5b4d9f2c8fd74e34a3a38062b73fcf8897178edceaa3f884b48943b6473991e878e69eda2 + checksum: 10c0/e3d706101c57252d41c77abfb16d1f163bc9e4b81cacbc70c022a859c500ceb7024049d8ff907c8869dcaa9e141e4ef6bb57b83c46027fcdc188072f7b0cc728 languageName: node linkType: hard -"@clack/prompts@npm:1.0.0-alpha.6": - version: 1.0.0-alpha.6 - resolution: "@clack/prompts@npm:1.0.0-alpha.6" +"@clack/prompts@npm:1.0.0-alpha.7": + version: 1.0.0-alpha.7 + resolution: "@clack/prompts@npm:1.0.0-alpha.7" dependencies: - "@clack/core": "npm:1.0.0-alpha.6" + "@clack/core": "npm:1.0.0-alpha.7" picocolors: "npm:^1.0.0" sisteransi: "npm:^1.0.5" - checksum: 10c0/c6a18a805aba72ffc879d7870dda28596f5081ccba30808e0e1d7f7cd9c3fad93101ff252de3e0001de564fbe8d162ebd637de2c7c06c39c12301d2d876c9544 + checksum: 10c0/21f657868fe538e260f0c79026cca909b51013ad8017a6951869c976dded786383b604db616fed2a799b40c300f7df672fa3e7f4c2e1484819c7fc482b2bd9bb languageName: node linkType: hard @@ -25878,7 +25878,7 @@ __metadata: "@babel/parser": "npm:^7.26.9" "@babel/traverse": "npm:^7.26.9" "@babel/types": "npm:^7.26.8" - "@clack/prompts": "npm:1.0.0-alpha.6" + "@clack/prompts": "npm:1.0.0-alpha.7" "@devtools-ds/object-inspector": "npm:^1.1.2" "@discoveryjs/json-ext": "npm:^0.5.3" "@emotion/cache": "npm:^11.14.0" From 33ca730b329b345b3b9dd9a8f891c824acd98bd1 Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 10:45:47 +0100 Subject: [PATCH 2/9] CLI: Change task message from stop to cancel for project detection --- code/lib/cli-storybook/src/util.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/cli-storybook/src/util.ts b/code/lib/cli-storybook/src/util.ts index a1009b5f056c..5b62a0115600 100644 --- a/code/lib/cli-storybook/src/util.ts +++ b/code/lib/cli-storybook/src/util.ts @@ -678,7 +678,7 @@ export const getProjects = async ( const projects = await collectProjects(options, detectedConfigDirs, () => task.message(`Detecting projects: ${++count} projects`) ); - task.stop(`${projects.length} ${projects.length > 1 ? 'projects' : 'project'} detected`); + task.cancel(`${projects.length} ${projects.length > 1 ? 'projects' : 'project'} detected`); // Separate valid and error projects const validProjects = projects.filter(isSuccessResult); From 9524438823d0ce725225631961197117d99eeb95 Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 10:58:12 +0100 Subject: [PATCH 3/9] CLI: Change spinner message from stop to error and update success message to cancel in project scaffolding --- code/lib/create-storybook/src/scaffold-new-project.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/lib/create-storybook/src/scaffold-new-project.ts b/code/lib/create-storybook/src/scaffold-new-project.ts index 11db471d014c..597aa7a23d53 100644 --- a/code/lib/create-storybook/src/scaffold-new-project.ts +++ b/code/lib/create-storybook/src/scaffold-new-project.ts @@ -179,7 +179,7 @@ export const scaffoldNewProject = async ( cwd: targetDir, }); } catch (e) { - spinner.stop( + spinner.error( `Failed to create a new "${projectDisplayName}" project with ${packageManagerName}` ); throw new GenerateNewProjectOnInitError({ @@ -189,7 +189,7 @@ export const scaffoldNewProject = async ( }); } - spinner.stop(`${projectDisplayName} project with ${packageManagerName} created successfully!`); + spinner.cancel(`${projectDisplayName} project with ${packageManagerName} created successfully!`); if (!disableTelemetry) { await telemetry('scaffolded-empty', { From 9876f8524a24474b1ba2ee79dedb821d99768232 Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 12:02:59 +0000 Subject: [PATCH 4/9] Revert --- scripts/tasks/sandbox-parts.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/tasks/sandbox-parts.ts b/scripts/tasks/sandbox-parts.ts index 98e3de51ab48..631f27488efa 100644 --- a/scripts/tasks/sandbox-parts.ts +++ b/scripts/tasks/sandbox-parts.ts @@ -198,7 +198,7 @@ export const init: Task['run'] = async ( await executeCLIStep(steps.init, { cwd, optionValues: { - loglevel: debug ? 'debug' : 'info', + loglevel: 'debug', yes: true, ...extra, ...(template.initOptions || {}), From e02f7e671e2a4565ab11b8170f6e3d209c56c482 Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 12:36:35 +0000 Subject: [PATCH 5/9] CLI: Use spinner.stop for success and reserve spinner.cancel for aborted flows --- AGENTS.md | 47 +++++++++++++++++++ .../src/scaffold-new-project.ts | 3 +- 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 000000000000..4adb4f79ade7 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,47 @@ +# Repository Guidelines + +## Project Structure & Module Organization +- Root packages live under `code/*` (e.g., `code/core`, `code/lib/create-storybook`, `code/frameworks`). Each package uses `src/` for code with colocated tests. +- Scripts and dev tooling: `scripts/` (sandbox generation, tasks, CI helpers). +- Example sandboxes: `sandbox/`; documentation: `docs/`. + +## Build, Test, and Development Commands +- `yarn i` — bootstrap the repo (installs and builds scripts, then packages). +- `yarn task --task dev --template react-vite/default-ts` — run a local sandbox dev workflow. +- `yarn --cwd code build` — build all packages. +- `yarn test` (root) or `yarn --cwd code test` — run Vitest across packages. +- Important: after changes that affect sandboxes or compiled outputs, run `yarn task --task "compile"` before validating with Vitest. + +## Coding Style & Naming Conventions +- TypeScript-first. Use top‑level `import` statements; avoid `require`. +- Formatting via Prettier; lint with ESLint: `yarn --cwd code lint`. +- Naming: descriptive; files use kebab-case; types/classes use PascalCase. + +## Testing Guidelines +- Framework: Vitest (repository-wide). Aim to maintain or improve coverage where you touch code. Use snapshots intentionally. + +### Use Wallaby.js first +- Use Wallaby.js for test results, errors, and debugging +- Leverage runtime values and coverage data when debugging tests +- Fall back to terminal only if Wallaby isn't available + +1. Analyze failing tests with Wallaby and identify the cause of the failure. +2. Use Wallaby's covered files to find relevant implementation files or narrow your search. +3. Use Wallaby's runtime values tool and coverage tool to support your reasoning. +4. Suggest and explain a code fix that will resolve the failure. +5. After the fix, use Wallaby's reported test state to confirm that the test now passes. +6. If the test still fails, continue iterating with updated Wallaby data until it passes. +7. If a snapshot update is needed, use Wallaby's snapshot tools for it. + +When responding: +- Explain your reasoning step by step. +- Use runtime and coverage data directly to justify your conclusions. + +## Commit & Pull Request Guidelines +- Commits: concise, imperative subject lines; reference issues when applicable. +- PRs: include a clear description, rationale, and testing notes (what you ran, e.g., `yarn --cwd code test`). Add screenshots/logs when relevant and link related issues/PRs. + +## Security & Configuration Tips +- Do not commit secrets. Use environment variables and local `.env` files. +- Keep local tool versions aligned (see `.nvmrc` and `packageManager`). Update docs when changing commands or flags. + diff --git a/code/lib/create-storybook/src/scaffold-new-project.ts b/code/lib/create-storybook/src/scaffold-new-project.ts index 597aa7a23d53..bf0f293b1712 100644 --- a/code/lib/create-storybook/src/scaffold-new-project.ts +++ b/code/lib/create-storybook/src/scaffold-new-project.ts @@ -189,7 +189,8 @@ export const scaffoldNewProject = async ( }); } - spinner.cancel(`${projectDisplayName} project with ${packageManagerName} created successfully!`); + // Use stop for successful completion; cancel is reserved for aborted flows + spinner.stop(`${projectDisplayName} project with ${packageManagerName} created successfully!`); if (!disableTelemetry) { await telemetry('scaffolded-empty', { From 7a40d7695c9c5b0918268036388338902260183d Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 12:39:49 +0000 Subject: [PATCH 6/9] Remove Agents.md --- AGENTS.md | 47 ----------------------------------------------- 1 file changed, 47 deletions(-) delete mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md deleted file mode 100644 index 4adb4f79ade7..000000000000 --- a/AGENTS.md +++ /dev/null @@ -1,47 +0,0 @@ -# Repository Guidelines - -## Project Structure & Module Organization -- Root packages live under `code/*` (e.g., `code/core`, `code/lib/create-storybook`, `code/frameworks`). Each package uses `src/` for code with colocated tests. -- Scripts and dev tooling: `scripts/` (sandbox generation, tasks, CI helpers). -- Example sandboxes: `sandbox/`; documentation: `docs/`. - -## Build, Test, and Development Commands -- `yarn i` — bootstrap the repo (installs and builds scripts, then packages). -- `yarn task --task dev --template react-vite/default-ts` — run a local sandbox dev workflow. -- `yarn --cwd code build` — build all packages. -- `yarn test` (root) or `yarn --cwd code test` — run Vitest across packages. -- Important: after changes that affect sandboxes or compiled outputs, run `yarn task --task "compile"` before validating with Vitest. - -## Coding Style & Naming Conventions -- TypeScript-first. Use top‑level `import` statements; avoid `require`. -- Formatting via Prettier; lint with ESLint: `yarn --cwd code lint`. -- Naming: descriptive; files use kebab-case; types/classes use PascalCase. - -## Testing Guidelines -- Framework: Vitest (repository-wide). Aim to maintain or improve coverage where you touch code. Use snapshots intentionally. - -### Use Wallaby.js first -- Use Wallaby.js for test results, errors, and debugging -- Leverage runtime values and coverage data when debugging tests -- Fall back to terminal only if Wallaby isn't available - -1. Analyze failing tests with Wallaby and identify the cause of the failure. -2. Use Wallaby's covered files to find relevant implementation files or narrow your search. -3. Use Wallaby's runtime values tool and coverage tool to support your reasoning. -4. Suggest and explain a code fix that will resolve the failure. -5. After the fix, use Wallaby's reported test state to confirm that the test now passes. -6. If the test still fails, continue iterating with updated Wallaby data until it passes. -7. If a snapshot update is needed, use Wallaby's snapshot tools for it. - -When responding: -- Explain your reasoning step by step. -- Use runtime and coverage data directly to justify your conclusions. - -## Commit & Pull Request Guidelines -- Commits: concise, imperative subject lines; reference issues when applicable. -- PRs: include a clear description, rationale, and testing notes (what you ran, e.g., `yarn --cwd code test`). Add screenshots/logs when relevant and link related issues/PRs. - -## Security & Configuration Tips -- Do not commit secrets. Use environment variables and local `.env` files. -- Keep local tool versions aligned (see `.nvmrc` and `packageManager`). Update docs when changing commands or flags. - From 392b378680c750f26a5e24bc00a5d231b640c8e8 Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 12:42:23 +0000 Subject: [PATCH 7/9] CLI: Add stop method to spinner instance and update task execution to use it --- .../core/src/node-logger/prompts/prompt-functions.ts | 12 ++++++++++++ .../src/node-logger/prompts/prompt-provider-base.ts | 1 + code/core/src/node-logger/tasks.ts | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/code/core/src/node-logger/prompts/prompt-functions.ts b/code/core/src/node-logger/prompts/prompt-functions.ts index 2aa790b50d89..b47ab6d1b4c9 100644 --- a/code/core/src/node-logger/prompts/prompt-functions.ts +++ b/code/core/src/node-logger/prompts/prompt-functions.ts @@ -122,6 +122,13 @@ export const spinner = (options: SpinnerOptions): SpinnerInstance => { spinnerInstance.start(message); } }, + stop: (message?: string) => { + activeSpinner = null; + restoreConsoleLog(); + if (shouldLog('info')) { + spinnerInstance.stop(message); + } + }, cancel: (message?: string) => { activeSpinner = null; restoreConsoleLog(); @@ -153,6 +160,11 @@ export const spinner = (options: SpinnerOptions): SpinnerInstance => { maybeLog(message); } }, + stop: (message) => { + if (message) { + maybeLog(message); + } + }, cancel: (message) => { if (message) { maybeLog(message); diff --git a/code/core/src/node-logger/prompts/prompt-provider-base.ts b/code/core/src/node-logger/prompts/prompt-provider-base.ts index cf1d7b02394b..54a1615e0890 100644 --- a/code/core/src/node-logger/prompts/prompt-provider-base.ts +++ b/code/core/src/node-logger/prompts/prompt-provider-base.ts @@ -45,6 +45,7 @@ export interface PromptOptions { export interface SpinnerInstance { start: (message?: string) => void; + stop: (message?: string) => void; cancel: (message?: string) => void; error: (message?: string) => void; message: (text: string) => void; diff --git a/code/core/src/node-logger/tasks.ts b/code/core/src/node-logger/tasks.ts index 54db166ce32d..de9ed3192521 100644 --- a/code/core/src/node-logger/tasks.ts +++ b/code/core/src/node-logger/tasks.ts @@ -149,7 +149,7 @@ export const executeTaskWithSpinner = async ( await childProcess; } logTracker.addLog('info', success); - task.cancel(success); + task.stop(success); } catch (err: any) { const isAborted = abortController?.signal.aborted || From 1e80e8d8e88226bc1827646f76425f5f1c510b6b Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 12:55:22 +0000 Subject: [PATCH 8/9] Refactor logger imports in spinner and taskLog functions --- code/core/src/node-logger/prompts/prompt-functions.ts | 9 ++++----- .../src/node-logger/prompts/prompt-provider-clack.ts | 8 ++++++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/code/core/src/node-logger/prompts/prompt-functions.ts b/code/core/src/node-logger/prompts/prompt-functions.ts index b47ab6d1b4c9..731f557a11bf 100644 --- a/code/core/src/node-logger/prompts/prompt-functions.ts +++ b/code/core/src/node-logger/prompts/prompt-functions.ts @@ -1,5 +1,4 @@ -import { logger } from '../../client-logger'; -import { shouldLog } from '../logger'; +import { error, log, shouldLog } from '../logger'; import { wrapTextForClack, wrapTextForClackHint } from '../wrap-utils'; import { getPromptProvider } from './prompt-config'; import type { @@ -152,7 +151,7 @@ export const spinner = (options: SpinnerOptions): SpinnerInstance => { return wrappedSpinner; } else { - const maybeLog = shouldLog('info') ? logger.log : (_: string) => {}; + const maybeLog = shouldLog('info') ? log : (_: string) => {}; return { start: (message) => { @@ -173,7 +172,7 @@ export const spinner = (options: SpinnerOptions): SpinnerInstance => { error: (message) => { if (message) { if (shouldLog('error')) { - logger.error(message); + error(message); } } }, @@ -225,7 +224,7 @@ export const taskLog = (options: TaskLogOptions): TaskLogInstance => { return wrappedTaskLog; } else { - const maybeLog = shouldLog('info') ? logger.log : (_: string) => {}; + const maybeLog = shouldLog('info') ? log : (_: string) => {}; return { message: (message: string) => { diff --git a/code/core/src/node-logger/prompts/prompt-provider-clack.ts b/code/core/src/node-logger/prompts/prompt-provider-clack.ts index b94f34d0ff98..a103c3db1ff4 100644 --- a/code/core/src/node-logger/prompts/prompt-provider-clack.ts +++ b/code/core/src/node-logger/prompts/prompt-provider-clack.ts @@ -101,12 +101,16 @@ export class ClackPromptProvider extends PromptProvider { logTracker.addLog('info', `${spinnerId}: ${message}`); task.message(message); }, - cancel: (message) => { + stop: (message) => { logTracker.addLog('info', `${spinnerId}-stop: ${message}`); + task.stop(message); + }, + cancel: (message) => { + logTracker.addLog('info', `${spinnerId}-cancel: ${message}`); task.cancel(message); }, error: (message) => { - logTracker.addLog('error', `${spinnerId}-stop: ${message}`); + logTracker.addLog('error', `${spinnerId}-error: ${message}`); task.error(message); }, }; From 8e7a33121145e1837a2370c9b25a0f2f61071622 Mon Sep 17 00:00:00 2001 From: Valentin Palkovic Date: Tue, 25 Nov 2025 14:13:56 +0100 Subject: [PATCH 9/9] CLI: Update task and spinner methods to use stop for project detection and successful project creation --- code/lib/cli-storybook/src/util.ts | 2 +- code/lib/create-storybook/src/scaffold-new-project.ts | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/code/lib/cli-storybook/src/util.ts b/code/lib/cli-storybook/src/util.ts index 5b62a0115600..a1009b5f056c 100644 --- a/code/lib/cli-storybook/src/util.ts +++ b/code/lib/cli-storybook/src/util.ts @@ -678,7 +678,7 @@ export const getProjects = async ( const projects = await collectProjects(options, detectedConfigDirs, () => task.message(`Detecting projects: ${++count} projects`) ); - task.cancel(`${projects.length} ${projects.length > 1 ? 'projects' : 'project'} detected`); + task.stop(`${projects.length} ${projects.length > 1 ? 'projects' : 'project'} detected`); // Separate valid and error projects const validProjects = projects.filter(isSuccessResult); diff --git a/code/lib/create-storybook/src/scaffold-new-project.ts b/code/lib/create-storybook/src/scaffold-new-project.ts index bf0f293b1712..5e12c445d030 100644 --- a/code/lib/create-storybook/src/scaffold-new-project.ts +++ b/code/lib/create-storybook/src/scaffold-new-project.ts @@ -189,7 +189,6 @@ export const scaffoldNewProject = async ( }); } - // Use stop for successful completion; cancel is reserved for aborted flows spinner.stop(`${projectDisplayName} project with ${packageManagerName} created successfully!`); if (!disableTelemetry) {