Skip to content

refactor: extract wizard infrastructure into utils#1283

Merged
hanna-skryl merged 4 commits into
mainfrom
wizard-shared-utils
May 19, 2026
Merged

refactor: extract wizard infrastructure into utils#1283
hanna-skryl merged 4 commits into
mainfrom
wizard-shared-utils

Conversation

@hanna-skryl
Copy link
Copy Markdown
Collaborator

create-cli will soon integrate create-eslint-config's wizard. Without a shared tree, each would buffer writes separately and we'd maintain two implementations. Sharing one gives us a single buffer and one canonical implementation.

The shared module uses create-eslint-config's implementation rather than create-cli's, because it already handles flush rollback, skips writes when content matches disk, and avoids re-recording identical writes, which create-cli was missing.

Additionally, this PR consolidates plugin binding inputs into a single object and extracts the yargs setup, fixing a latent bug where plugin-namespaced CLI flags silently no-opped instead of overriding their prompt defaults.

@nx-cloud
Copy link
Copy Markdown

nx-cloud Bot commented May 18, 2026

View your CI Pipeline Execution ↗ for commit 860b695

Command Status Duration Result
nx run-many -t unit-test,int-test ✅ Succeeded 2m 13s View ↗

☁️ Nx Cloud last updated this comment at 2026-05-19 14:50:39 UTC

@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented May 18, 2026

Open in StackBlitz

@code-pushup/ci

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/ci@1283

@code-pushup/cli

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/cli@1283

@code-pushup/core

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/core@1283

@code-pushup/create-cli

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/create-cli@1283

@code-pushup/models

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/models@1283

@code-pushup/nx-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/nx-plugin@1283

@code-pushup/axe-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/axe-plugin@1283

@code-pushup/coverage-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/coverage-plugin@1283

@code-pushup/eslint-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/eslint-plugin@1283

@code-pushup/js-packages-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/js-packages-plugin@1283

@code-pushup/jsdocs-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/jsdocs-plugin@1283

@code-pushup/lighthouse-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/lighthouse-plugin@1283

@code-pushup/typescript-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/typescript-plugin@1283

@code-pushup/utils

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/utils@1283

commit: 860b695

@hanna-skryl hanna-skryl force-pushed the wizard-shared-utils branch from 13f5d31 to ebf198d Compare May 18, 2026 23:24
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 18, 2026

Code PushUp

🤨 Code PushUp report has both improvements and regressions – compared current commit ee59214 with previous commit 47eb97a.

🕵️ See full comparison in Code PushUp portal 🔍

🏷️ Categories

🏷️ Category ⭐ Previous score ⭐ Current score 🔄 Score change
Best Practices 🟢 100 🟢 97 ↓ −3.4
Performance 🔴 38 🔴 35 ↓ −3
Updates 🟡 73 🟡 72 ↓ −0.4
Code coverage 🟢 92 🟢 92 ↑ +0.1
Documentation 🟡 51 🟡 51 ↑ +0.1
Bug prevention 🟡 75 🟡 75 ↓ −0.1
Axe Accessibility 🟡 88 🟡 88 ↓ −0.1
Code style 🟢 100 🟢 100
Security 🔴 0 🔴 0
Type Safety 🟡 67 🟡 67
Miscellaneous 🟡 67 🟡 67
Accessibility 🟢 92 🟢 92
SEO 🟢 92 🟢 92
👍 2 groups improved, 👎 3 groups regressed, 👍 4 audits improved, 👎 7 audits regressed, 22 audits changed without impacting score

🗃️ Groups

🔌 Plugin 🗃️ Group ⭐ Previous score ⭐ Current score 🔄 Score change
Lighthouse Best Practices 🟢 100 🟢 97 ↓ −3.4
Lighthouse Performance 🔴 38 🔴 35 ↓ −3
JS packages npm outdated dependencies 🟡 73 🟡 72 ↓ −0.4
Code coverage Code coverage metrics 🟢 92 🟢 92 ↑ +0.1
JSDocs coverage Documentation coverage 🟡 51 🟡 51 ↑ +0.1

29 other groups are unchanged.

🛡️ Audits

🔌 Plugin 🛡️ Audit 📏 Previous value 📏 Current value 🔄 Value change
Lighthouse No browser errors logged to the console 🟩 passed 🟥 failed ↓ −100 %
Lighthouse Total Blocking Time 🟥 1,550 ms 🟥 2,400 ms ↑ +54.7 %
Lighthouse Speed Index 🟥 6.1 s 🟥 6.6 s ↑ +8.1 %
Lighthouse Max Potential First Input Delay 🟥 520 ms 🟥 780 ms ↑ +51.5 %
JS packages Outdated npm dev dependencies. 🟨 62 outdated package versions (34 major, 22 minor, 6 patch) 🟨 65 outdated package versions (36 major, 22 minor, 7 patch) ↑ +4.8 %
Lighthouse Time to Interactive 🟥 13.7 s 🟥 14.6 s ↑ +6 %
Lighthouse First Contentful Paint 🟥 3.2 s 🟥 3.2 s ↓ −0.4 %
JSDocs coverage Types coverage 🟥 293 undocumented types 🟥 294 undocumented types ↑ +0.3 %
JSDocs coverage Functions coverage 🟥 670 undocumented functions 🟥 672 undocumented functions ↑ +0.3 %
Code coverage Function coverage 🟩 93.9 % 🟩 93.9 % ↑ +0.1 %
Code coverage Branch coverage 🟨 89.2 % 🟨 89.2 % ↑ +0.1 %
Lighthouse Avoids enormous network payloads 🟩 Total size was 2,450 KiB 🟩 Total size was 2,478 KiB ↑ +1.1 %
Lighthouse Minimizes main-thread work 🟥 9.6 s 🟥 11.4 s ↑ +19.1 %
Lighthouse Uses efficient cache policy on static assets 🟨 31 resources found 🟨 31 resources found ↑ +0.2 %
Lighthouse Largest Contentful Paint 🟥 9.7 s 🟥 10.7 s ↑ +10.4 %
Lighthouse JavaScript execution time 🟥 2.7 s 🟥 3.6 s ↑ +31.4 %
Lighthouse Metrics 🟩 100% 🟩 100% ↑ +6 %
Lighthouse Initial server response time was short 🟥 Root document took 680 ms 🟥 Root document took 980 ms ↑ +45.2 %
Lighthouse Reduce unused JavaScript 🟥 Potential savings of 302 KiB 🟥 Potential savings of 379 KiB ↓ −15.3 %
Lighthouse Server Backend Latencies 🟩 1,420 ms 🟩 1,270 ms ↓ −10.2 %
Lighthouse Reduce unused CSS 🟥 Potential savings of 110 KiB 🟥 Potential savings of 128 KiB ↓ −3.2 %
Axe IDs used in ARIA and labels must be unique 🟩 27 elements 🟩 42 elements ↑ +55.6 %
Lighthouse Remove duplicate modules in JavaScript bundles 🟥 Potential savings of 106 KiB 🟥 Potential savings of 97 KiB ↓ −3.2 %
Lighthouse Network Round Trip Times 🟩 10 ms 🟩 10 ms ↓ −57.9 %
JS packages Vulnerabilities for npm prod dependencies. 🟥 21 vulnerabilities (2 critical, 8 high, 5 moderate, 6 low) 🟥 25 vulnerabilities (2 critical, 9 high, 8 moderate, 6 low) ↑ +19 %
JS packages Vulnerabilities for npm dev dependencies. 🟥 75 vulnerabilities (4 critical, 43 high, 22 moderate, 6 low) 🟥 78 vulnerabilities (4 critical, 46 high, 22 moderate, 6 low) ↑ +4 %
Lighthouse Avoids an excessive DOM size 🟥 2,347 elements 🟥 2,344 elements ↓ −0.1 %
Axe Inline text spacing must be adjustable with custom stylesheets 🟩 50 elements 🟩 53 elements ↑ +6 %
Axe Deprecated ARIA roles must not be used 🟩 6 elements 🟩 5 elements ↓ −16.7 %
Axe Required ARIA attributes must be provided 🟩 6 elements 🟩 5 elements ↓ −16.7 %
Axe ARIA roles used must conform to valid values 🟩 6 elements 🟩 5 elements ↓ −16.7 %
Code coverage Line coverage 🟩 92.3 % 🟩 92.3 % ↑ +0.1 %
Lighthouse Cumulative Layout Shift 🟩 0 🟩 0 ↓ −100 %

645 other audits are unchanged.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 18, 2026

Code PushUp

🤨 Code PushUp report has both improvements and regressions – compared current commit ee59214 with previous commit 47eb97a.

💼 Project create-cli

😟 Code PushUp report has regressed.

🕵️ See full comparison in Code PushUp portal 🔍

🏷️ Category ⭐ Previous score ⭐ Current score 🔄 Score change
Documentation 🔴 23 🔴 22 ↓ −1.6
Code coverage 🟢 90 🟡 90 ↓ −0.7

4 other categories are unchanged.

👎 2 groups regressed, 👎 4 audits regressed, 1 audit changed without impacting score

🗃️ Groups

🔌 Plugin 🗃️ Group ⭐ Previous score ⭐ Current score 🔄 Score change
JSDocs coverage Documentation coverage 🔴 23 🔴 22 ↓ −1.6
Code coverage Code coverage metrics 🟢 90 🟡 90 ↓ −0.7

13 other groups are unchanged.

🛡️ Audits

🔌 Plugin 🛡️ Audit 📏 Previous value 📏 Current value 🔄 Value change
JSDocs coverage Types coverage 🟥 9 undocumented types 🟥 9 undocumented types  +0 %
Code coverage Function coverage 🟩 90.4 % 🟨 89.6 % ↓ −0.9 %
Code coverage Branch coverage 🟨 89.8 % 🟨 89.2 % ↓ −0.7 %
Code coverage Line coverage 🟩 92.2 % 🟩 92.1 % ↓ −0.1 %
JSDocs coverage Variables coverage 🟥 17 undocumented variables 🟥 16 undocumented variables ↓ −5.9 %

438 other audits are unchanged.

💼 Project utils

🤨 Code PushUp report has both improvements and regressions.

🕵️ See full comparison in Code PushUp portal 🔍

🏷️ Category ⭐ Previous score ⭐ Current score 🔄 Score change
Documentation 🟡 61 🟡 61 ↑ +0.1
Code coverage 🟢 94 🟢 94 ↑ +0.1

4 other categories are unchanged.

👍 2 groups improved, 👍 4 audits improved, 👎 2 audits regressed

🗃️ Groups

🔌 Plugin 🗃️ Group ⭐ Previous score ⭐ Current score 🔄 Score change
JSDocs coverage Documentation coverage 🟡 61 🟡 61 ↑ +0.1
Code coverage Code coverage metrics 🟢 94 🟢 94 ↑ +0.1

13 other groups are unchanged.

🛡️ Audits

🔌 Plugin 🛡️ Audit 📏 Previous value 📏 Current value 🔄 Value change
JSDocs coverage Types coverage 🟥 58 undocumented types 🟨 58 undocumented types  +0 %
JSDocs coverage Variables coverage 🟥 52 undocumented variables 🟥 53 undocumented variables ↑ +1.9 %
JSDocs coverage Functions coverage 🟥 255 undocumented functions 🟥 257 undocumented functions ↑ +0.8 %
Code coverage Function coverage 🟩 94.9 % 🟩 94.9 % ↑ +0.1 %
Code coverage Branch coverage 🟩 91.4 % 🟩 91.5 % ↑ +0.1 %
Code coverage Line coverage 🟩 97.4 % 🟩 97.4 % ↑ +0.1 %

438 other audits are unchanged.

💼 Project models

😟 Code PushUp report has regressed.

🕵️ See full comparison in Code PushUp portal 🔍

🏷️ Category ⭐ Previous score ⭐ Current score 🔄 Score change
Code coverage 🟢 94 🟢 94 ↓ −0.1
Documentation 🟡 67 🟡 67 ↓ −0.1

2 other categories are unchanged.

👎 2 groups regressed, 👎 2 audits regressed

🗃️ Groups

🔌 Plugin 🗃️ Group ⭐ Previous score ⭐ Current score 🔄 Score change
Code coverage Code coverage metrics 🟢 94 🟢 94 ↓ −0.1
JSDocs coverage Documentation coverage 🟡 67 🟡 67 ↓ −0.1

10 other groups are unchanged.

🛡️ Audits

🔌 Plugin 🛡️ Audit 📏 Previous value 📏 Current value 🔄 Value change
Code coverage Line coverage 🟩 94 % 🟩 93.7 % ↓ −0.3 %
JSDocs coverage Types coverage 🟥 68 undocumented types 🟥 69 undocumented types ↑ +1.5 %

435 other audits are unchanged.

💼 Project plugin-axe

😟 Code PushUp report has regressed.

🕵️ See full comparison in Code PushUp portal 🔍

🏷️ Category ⭐ Previous score ⭐ Current score 🔄 Score change
Code coverage 🟢 95 🟢 95 ↓ −0.1

5 other categories are unchanged.

👎 1 group regressed, 👎 1 audit regressed

🗃️ Groups

🔌 Plugin 🗃️ Group ⭐ Previous score ⭐ Current score 🔄 Score change
Code coverage Code coverage metrics 🟢 95 🟢 95 ↓ −0.1

14 other groups are unchanged.

🛡️ Audits

🔌 Plugin 🛡️ Audit 📏 Previous value 📏 Current value 🔄 Value change
Code coverage Line coverage 🟨 76.8 % 🟨 76.7 % ↓ −0.1 %

442 other audits are unchanged.

💼 Project plugin-coverage

🤨 Code PushUp report has both improvements and regressions.

🕵️ See full comparison in Code PushUp portal 🔍

🏷️ Category ⭐ Previous score ⭐ Current score 🔄 Score change
Code coverage 🟢 94 🟢 94 ↓ −0.1
Documentation 🟡 68 🟡 68 ↑ +0.1

4 other categories are unchanged.

👍 1 group improved, 👎 1 group regressed, 👎 1 audit regressed

🗃️ Groups

🔌 Plugin 🗃️ Group ⭐ Previous score ⭐ Current score 🔄 Score change
Code coverage Code coverage metrics 🟢 94 🟢 94 ↓ −0.1
JSDocs coverage Documentation coverage 🟡 68 🟡 68 ↑ +0.1

13 other groups are unchanged.

🛡️ Audits

🔌 Plugin 🛡️ Audit 📏 Previous value 📏 Current value 🔄 Value change
Code coverage Line coverage 🟩 91.3 % 🟩 91.3 % ↓ −0.1 %

443 other audits are unchanged.


9 other projects are unchanged.

@hanna-skryl hanna-skryl marked this pull request as ready for review May 18, 2026 23:51
Comment thread packages/utils/src/lib/wizard/virtual-fs.unit.test.ts Outdated
@hanna-skryl hanna-skryl merged commit 5eb3416 into main May 19, 2026
25 of 26 checks passed
@hanna-skryl hanna-skryl deleted the wizard-shared-utils branch May 19, 2026 14:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants