Repository navigation
feat: add Rsdoctor v2 migration skill - #115
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b0e345ed7b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
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".
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. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5763e1af99
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
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".
| }); | ||
| ``` | ||
|
|
||
| Both `features: { lite: true }` and `features: ['lite']` remain supported. Leave them unchanged unless the project benefits from expressing the equivalent behavior explicitly with `output.reportCodeType`. |
There was a problem hiding this comment.
Migrate legacy lite feature settings
For projects using either legacy features.lite form, leaving the setting unchanged does not preserve behavior in Rsdoctor 2: the official configuration migration guide requires legacy lite mode/features to be replaced with an appropriate reportCodeType setting. Following this instruction can therefore fail configuration validation or revert to a full-code report, exposing source and reintroducing the memory problems that lite mode avoided.
Useful? React with 👍 / 👎.
| ``` | ||
|
|
||
| Preflight every build command: `RSDOCTOR_OUTPUT=json` is allowed only in the `pluginVersion >= 1.5.11` branch. For missing, unknown, or `< 1.5.11`, it is forbidden. For `< 1.5.11`, generating `rsdoctor-data.json` requires the plugin config below: | ||
| For an Rspack 2.x project without a plugin, install a compatible `@rsdoctor/core` 2.x version; do not install `@rsdoctor/rspack-plugin`. For Rspack 1.x, keep the compatible 1.x plugin. If installed versions or bundler compatibility cannot be determined, stop before installing. Check the plugin import path only when the package versions and active configuration appear inconsistent. |
There was a problem hiding this comment.
Stop inferring the Rsdoctor major from the Rspack major
When ordinary bundle analysis finds an Rspack 2 project without a plugin, this rule unconditionally opts the project into Rsdoctor 2, even though Rsdoctor 1.x's published @rsdoctor/rspack-plugin manifest accepts Rspack independently of that major split and Rsdoctor 2 is currently distributed as a prerelease. A request to generate analysis data can therefore unexpectedly become a major/ESM migration; select the Rsdoctor major from an existing integration or explicit migration intent rather than from the Rspack major alone.
Useful? React with 👍 / 👎.
Summary
This PR adds a dedicated migration skill for projects moving from Rsdoctor 1.x to 2.0. It covers compatibility gates, package and ESM changes, configuration replacements, MCP-to-Agent CLI migration, and behavior-preserving validation.
TODO
Related Links
https://rsdoctor.rs/guide/start/migration-v2