Repository navigation
fix(cli): recognize wrapped config objects during migration - #3372
Open
jong-kyung wants to merge 2 commits into
Open
jong-kyung wants to merge 2 commits into
jong-kyung wants to merge 2 commits into
Conversation
The shared direct config check only looked at an object's immediate parent.
Pack migration therefore silently skipped configs such as
`defineConfig({ pack } as UserConfig)` or callbacks wrapped in parentheses or
type assertions, and task cache migration reported them for manual review.
Returns inside generators nested in a `defineConfig` callback were also
treated as the config.
Look through parentheses, `as`, `satisfies`, type assertions, and non-null
assertions around both the config object and the `defineConfig` callback, and
reuse the function boundary rules from the merge rules. Task cache and pack
config migration now share this check.
Collaborator
Author
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. Bravo. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
jong-kyung
marked this pull request as ready for review
November 6, 2026 14:59
This branch has not been deployed
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.
Follow-up to #3325. Task cache migration and pack migration share a check for direct config objects. That check looked only at an object's immediate parent. As a result, a config wrapped in parentheses,
as,satisfies,<T>, or!was not recognized, and the same was true when the wrapper surrounded thedefineConfigcallback. Pack migration skipped these configs silently, and task cache migration reported them for manual migration.The check now looks through these wrappers. It also uses the function boundaries from #3325, so a return inside a nested generator is no longer treated as the config. Other callers of the check, such as
wrap_lazy_plugins, now handle wrapped configs too. This is why themigration_merge_wrapped_callbacksnapshot now useslazyPlugins, which matches the unwrapped case.