Skip to content

refactor: extract wizard infrastructure into utils#1283

Open
hanna-skryl wants to merge 3 commits into
mainfrom
wizard-shared-utils
Open

refactor: extract wizard infrastructure into utils#1283
hanna-skryl wants to merge 3 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 ebf198d

Command Status Duration Result
nx run ci:code-pushup -- merge-diffs --files=/h... ✅ Succeeded 5s View ↗
nx run-many --targets=code-pushup --parallel=fa... ✅ Succeeded 1m 34s View ↗
nx run-many --targets=code-pushup --parallel=fa... ✅ Succeeded 14m 7s View ↗
nx run-many -t unit-test,int-test ✅ Succeeded 8s View ↗

☁️ Nx Cloud last updated this comment at 2026-05-18 23:42:13 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: ebf198d

@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

Code PushUp

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

🕵️ See full comparison in Code PushUp portal 🔍

🏷️ Categories

🏷️ Category ⭐ Previous score ⭐ Current score 🔄 Score change
Performance 🔴 38 🔴 42 ↑ +4.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
Best Practices 🟢 100 🟢 100
SEO 🟢 92 🟢 92
👍 3 groups improved, 👎 1 group regressed, 👍 8 audits improved, 👎 3 audits regressed, 20 audits changed without impacting score

🗃️ Groups

🔌 Plugin 🗃️ Group ⭐ Previous score ⭐ Current score 🔄 Score change
Lighthouse Performance 🔴 38 🔴 42 ↑ +4.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

30 other groups are unchanged.

🛡️ Audits

🔌 Plugin 🛡️ Audit 📏 Previous value 📏 Current value 🔄 Value change
Lighthouse Largest Contentful Paint 🟥 9.7 s 🟥 6.6 s ↓ −31.5 %
Lighthouse Max Potential First Input Delay 🟥 520 ms 🟥 420 ms ↓ −17.7 %
Lighthouse Speed Index 🟥 6.1 s 🟨 5.6 s ↓ −7.3 %
Lighthouse Total Blocking Time 🟥 1,550 ms 🟥 1,280 ms ↓ −17.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.2 s ↑ +3.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,475 KiB ↑ +1 %
Lighthouse Uses efficient cache policy on static assets 🟨 31 resources found 🟨 31 resources found ↑ +0.3 %
Lighthouse Minimizes main-thread work 🟥 9.6 s 🟥 8.2 s ↓ −14.9 %
Lighthouse Reduce unused JavaScript 🟥 Potential savings of 302 KiB 🟥 Potential savings of 379 KiB ↓ −51.6 %
Lighthouse Metrics 🟩 100% 🟩 100% ↑ +3.6 %
Lighthouse JavaScript execution time 🟥 2.7 s 🟥 2.5 s ↓ −8.8 %
Lighthouse Server Backend Latencies 🟩 1,420 ms 🟩 1,230 ms ↓ −13.1 %
Lighthouse Reduce unused CSS 🟥 Potential savings of 110 KiB 🟥 Potential savings of 128 KiB ↑ +21 %
Lighthouse Network Round Trip Times 🟩 10 ms 🟩 70 ms ↑ +400.3 %
Lighthouse Initial server response time was short 🟥 Root document took 680 ms 🟥 Root document took 630 ms ↓ −6.8 %
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 101 KiB ↓ −3.2 %
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 %
Axe Inline text spacing must be adjustable with custom stylesheets 🟩 50 elements 🟩 53 elements ↑ +6 %
Lighthouse Avoids an excessive DOM size 🟥 2,347 elements 🟥 2,345 elements ↓ −0.1 %
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 %

647 other audits are unchanged.

@github-actions
Copy link
Copy Markdown
Contributor

Code PushUp

🤨 Code PushUp report has both improvements and regressions – compared current commit 7ed79be 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
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.

1 participant