fix(init): gate unsupported --features and tag dry-run runs - #1535
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Member
Author
|
Companion server PR (the server-side half of the |
Member
Author
|
The red |
betegon
added a commit
that referenced
this pull request
Sep 4, 2026
…t) (#1536) ## Problem `Lint & Typecheck` fails on an internal Biome error, with no real lint violation in the changed code: ``` src/lib/formatters/output.ts project INTERNAL ! Biome encountered an unusually large amount of types which exceeded the limit of 200,000. ``` `output.ts` imports valibot's `GenericSchema`, whose recursive generic graph pushes Biome's project-mode type inference over its 200,000-type ceiling — the **same internal Biome bug already handled for `custom-ca.ts`** in this config (see the existing `"!!src/lib/custom-ca.ts"` force-ignore). It surfaces **non-deterministically**: `main` passes by a hair, but the exact type count tips over on PR runners, so unrelated PRs fail this job identically — e.g. #1499, #1501, and #1535. Re-running does not clear it (deterministic per branch state). ## Fix Force-ignore `src/lib/formatters/output.ts` the same way as `custom-ca.ts`, until Biome raises/fixes the limit. ```jsonc "!!src/lib/custom-ca.ts", "!!src/lib/formatters/output.ts" ``` ## Verification `pnpm run lint` (the CI invocation) now passes: ``` Checked 1025 files in 3s. No fixes applied. (exit 0) ``` Unblocks #1535 (and the other PRs above) once merged. Trade-off is the same one already accepted for `custom-ca.ts`: `output.ts` (a leaf formatter) is skipped by Biome; it stays covered by `tsc`. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
…ents) These non-selector products are never offered by the interactive selector, but --features still accepted them, leaving a half-configured integration (e.g. source-map upload needs an auth token this wizard does not provision). Removed from FEATURE_ALIASES, SUPPORTED_FEATURE_NAMES, and the flag help so they now fail loudly (Unknown init feature) until their setup is automated. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Dry runs apply and install nothing, so the CLI verify-setup runtime check runs the app dev command against an unmodified project and reports init verification failed (CLI-2HP), a false positive. Set wizard.dry_run once at runWizard start (global scope, inherited by every CLI event including that capture). wizard.dry_run:false isolates real runs. Companion server change tags the same value server-side (CLI-SERVER-22). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
betegon
force-pushed
the
fix/init-gate-features-tag-dryrun
branch
from
September 4, 2026 16:56
facfcf5 to
0b57230
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two small
inithardening fixes surfaced by a wizard-run triage.1. Gate unsupported
--features(source maps, metrics, attachments)sourcemaps,metrics, andattachmentsare non-selector products — the interactive selector never offers them, but--featuresstill accepted them, leaving a half-configured integration (e.g. source-map upload needs an auth token this wizard does not provision). Removed fromFEATURE_ALIASES,SUPPORTED_FEATURE_NAMES, and the flag help, so they now fail loudly (Unknown init feature "sourcemaps") until their setup flow is automated.2. Tag
wizard.dry_runin telemetryDry runs (
--dry-run) apply and install nothing, so the CLI's post-applyverify-setupruntime check runs the app's dev command against an unmodified project and reportsinit verification failed(CLI-2HP) — a false positive. Setwizard.dry_runonce atrunWizardstart (global scope, so every CLI event inherits it, including that capture).wizard.dry_run:falsethen isolates real runs from dry-run noise.Companion server change tags the same
wizard.dry_runfor the server-sideVerification found issues(CLI-SERVER-22) — see below.Verification
tsc --noEmit: no new errors in the changed files.test/commands/init.test.ts: 50/50 — updated the two normalization tests + the "Supported features:" message, and added atest.eachlocking in the rejection of the three gated features.interactive.test.ts+clack-utils.test.ts: 45/45 — the interactive selector's filtering and the display labels are separate code paths, unaffected by the flag change.🤖 Generated with Claude Code