Conversation
Co-authored-by: Cursor <cursoragent@cursor.com>
🦋 Changeset detectedLatest commit: 0b9e8aa The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
📦 CLI Tarball ReadyThe Vercel CLI tarball for this PR is now available! Quick TestYou can test this PR's CLI directly by running: npx https://vercel-mzfpkji1b.vercel.sh/tarballs/vercel.tgz --helpUse in vercel.jsonTo use this CLI version in your project builds, add to your {
"build": {
"env": {
"VERCEL_CLI_VERSION": "vercel@https://vercel-mzfpkji1b.vercel.sh/tarballs/vercel.tgz"
}
}
} |
🧪 Unit Test StrategyComparing: Strategy: Affected packages only ✅ Only testing packages that have been modified or depend on modified packages. Affected packages - 1 (3%)
Unaffected packages - 39 (98%)
Results
This comment is automatically generated based on the affected testing strategy |
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
84fb6af to
89de5de
Compare
… and exit Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…uto-confirm) Co-authored-by: Cursor <cursoragent@cursor.com>
83c94b4 to
f1387f7
Compare
| )} requires confirmation. Use option ${param('--yes')} to confirm.` | ||
| ); | ||
| if (nonInteractive) { | ||
| outputActionRequired( |
There was a problem hiding this comment.
this already calls exit so don't need to call again @ line80
| ): Promise<ProjectLinked | number> { | ||
| let { link } = opts; | ||
| // All commands respect global --non-interactive; link can override via opts | ||
| const nonInteractive = opts.nonInteractive ?? client.nonInteractive ?? false; |
There was a problem hiding this comment.
outputActionRequired short-circuits on !client.nonInteractive
Is it possible to have opts.nonInteractive === true but client.nonInteractive === false
If so, currently we no-op?
| nonInteractive || | ||
| (await client.input.confirm( | ||
| `${setupMsg} ${chalk.cyan(`“${toHumanPath(path)}”`)}?`, | ||
| true |
There was a problem hiding this comment.
[Re: line +124]
does this need some nonInteractive handling too?
See this comment inline on Graphite.
When non-interactive and linking requires confirmation or project selection, ensureLink/setupAndLink now return HEADLESS and output JSON action_required (confirmation_required), with coverage in ensureLink tests.
Note
Low Risk Change
CLI changes add non-interactive mode handling that throws errors or returns early when confirmation is needed, which is defensive behavior that prevents unintended actions without explicit confirmation.
Risk assessment for commit 0b9e8aa.