RATY-357 stuck Dependabot workflows#624
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (33)
💤 Files with no reviewable changes (23)
✅ Files skipped from review due to trivial changes (6)
🚧 Files skipped from review as they are similar to previous changes (2)
📝 WalkthroughWalkthroughThis PR migrates ESLint to flat config, updates related package and workspace tooling versions, and applies source changes to align with the updated lint rules. ChangesESLint flat config migration and dependency updates
Estimated code review effort: 2 (Simple) | ~12 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (4)
eslint.config.mjs (4)
60-67: 📐 Maintainability & Code Quality | 🔵 TrivialMost
import-xrules from the newly-added recommended/typescript configs are turned off.
import-x/named,import-x/no-named-as-default,import-x/no-named-as-default-member, andimport-x/no-duplicatesare all disabled, leaving onlyimport-x/no-unresolvedactive from the plugin's rule set. This substantially narrows the benefit of addingimportPlugin.flatConfigs.recommended/.typescriptat Lines 18-19. If these were disabled to suppress noise/false positives during migration, consider re-enabling incrementally once stabilized.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@eslint.config.mjs` around lines 60 - 67, The newly added import-x recommended/typescript configs are being mostly negated by turning off several core import-x rules in the ESLint config. Review the rule block in eslint.config.mjs and either re-enable `import-x/named`, `import-x/no-named-as-default`, `import-x/no-named-as-default-member`, and `import-x/no-duplicates` if they are now stable, or keep them disabled only with an explicit migration-focused rationale; use the existing `importPlugin.flatConfigs.recommended` and `importPlugin.flatConfigs.typescript` setup as the reference point.
68-70: 📐 Maintainability & Code Quality | 🔵 TrivialNew React Compiler lint rules disabled right after opting into
recommended-latest.Line 17 opts into
reactHooksPlugin.configs.flat['recommended-latest'], which per the plugin's docs enables "bleeding edge experimental compiler rules" (refs,set-state-in-effect,preserve-manual-memoization, etc.). These three are then immediately turned off, effectively reverting most of the value of usingrecommended-latestover the stablerecommendedpreset. Worth confirming this is intentional (e.g., too many pre-existing violations to fix now) rather than an oversight, since it could be simplified to just usereactHooksPlugin.configs.flat.recommended.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@eslint.config.mjs` around lines 68 - 70, The React Hooks config is opting into reactHooksPlugin.configs.flat['recommended-latest'] in eslint.config.mjs but then immediately disables the new compiler-related rules, which makes the newer preset effectively redundant. Review the flat config setup around the react-hooks entry and either keep recommended-latest only if you intend to enforce those rules, or switch to reactHooksPlugin.configs.flat.recommended if you want the stable baseline; if the disabling is intentional, add a brief comment explaining why refs, set-state-in-effect, and preserve-manual-memoization are turned off.
56-56: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win
no-undefis known to produce false positives in TypeScript files.
no-undefis a plain-JS rule with no awareness of TypeScript types, ambient declarations, or generics, and is commonly disabled for TS in favor of the TypeScript compiler's own checks (as also done in several community flat-config examples). Since this rule block applies to.ts/.tsxfiles too, keeping it atwarnhere risks noisy false positives for legitimately-typed code.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@eslint.config.mjs` at line 56, The current ESLint config keeps the plain-JS no-undef rule enabled for TypeScript files, which can cause false positives in typed code. Update the relevant rule block in eslint.config.mjs so no-undef is not applied to .ts/.tsx sources, following the same pattern used in the TypeScript-specific config sections or community flat-config examples. Keep the rule only where it makes sense for JavaScript, and rely on the TypeScript compiler for undefined-symbol checking in TS.
20-20: 📐 Maintainability & Code Quality | 🔵 TrivialVitest globals applied to all files, not just test files.
vitestGlobalsPlugin.configs['flat/recommended']is added at the top level, so it applies to every file matched later (**/*.{js,jsx,ts,tsx}), not just test files. The plugin's own docs scope this via afilesmatcher (e.g.**/*.test.ts,**/__tests__/**/*.ts) combined with spread syntax. As written, Vitest globals (describe,it,expect, etc.) become implicitly available in non-test source files too, which defeats the purpose of scoping test-only globals and can mask genuinely undefined identifiers in production code.♻️ Suggested scoping
- vitestGlobalsPlugin.configs[ 'flat/recommended' ], + { + files: [ '**/__tests__/**/*.{ts,tsx}', '**/*.{test,spec}.{ts,tsx}' ], + ...vitestGlobalsPlugin.configs[ 'flat/recommended' ], + },🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@eslint.config.mjs` at line 20, Vitest globals are currently being applied at the top level via vitestGlobalsPlugin.configs['flat/recommended'], which makes test-only globals available in non-test source files. Update the ESLint config to scope this plugin config with a files matcher for test patterns only, and keep the existing globals setup out of the general **/*.{js,jsx,ts,tsx} rules. Use the vitestGlobalsPlugin.configs['flat/recommended'] entry in the scoped test override so describe, it, expect, and similar globals are only enabled for test files.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@eslint.config.mjs`:
- Around line 60-67: The newly added import-x recommended/typescript configs are
being mostly negated by turning off several core import-x rules in the ESLint
config. Review the rule block in eslint.config.mjs and either re-enable
`import-x/named`, `import-x/no-named-as-default`,
`import-x/no-named-as-default-member`, and `import-x/no-duplicates` if they are
now stable, or keep them disabled only with an explicit migration-focused
rationale; use the existing `importPlugin.flatConfigs.recommended` and
`importPlugin.flatConfigs.typescript` setup as the reference point.
- Around line 68-70: The React Hooks config is opting into
reactHooksPlugin.configs.flat['recommended-latest'] in eslint.config.mjs but
then immediately disables the new compiler-related rules, which makes the newer
preset effectively redundant. Review the flat config setup around the
react-hooks entry and either keep recommended-latest only if you intend to
enforce those rules, or switch to reactHooksPlugin.configs.flat.recommended if
you want the stable baseline; if the disabling is intentional, add a brief
comment explaining why refs, set-state-in-effect, and
preserve-manual-memoization are turned off.
- Line 56: The current ESLint config keeps the plain-JS no-undef rule enabled
for TypeScript files, which can cause false positives in typed code. Update the
relevant rule block in eslint.config.mjs so no-undef is not applied to .ts/.tsx
sources, following the same pattern used in the TypeScript-specific config
sections or community flat-config examples. Keep the rule only where it makes
sense for JavaScript, and rely on the TypeScript compiler for undefined-symbol
checking in TS.
- Line 20: Vitest globals are currently being applied at the top level via
vitestGlobalsPlugin.configs['flat/recommended'], which makes test-only globals
available in non-test source files. Update the ESLint config to scope this
plugin config with a files matcher for test patterns only, and keep the existing
globals setup out of the general **/*.{js,jsx,ts,tsx} rules. Use the
vitestGlobalsPlugin.configs['flat/recommended'] entry in the scoped test
override so describe, it, expect, and similar globals are only enabled for test
files.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: f2dddc68-5f22-4c62-a2b3-714788b1c151
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (13)
eslint.config.mjspackage.jsonpnpm-workspace.yamlsrc/common/components/imageUploader/utils.tssrc/common/components/menuDropdown/MenuDropdown.tsxsrc/common/components/tabs/tab/Tab.tsxsrc/domain/event/formSections/imageSection/ImageSection.tsxsrc/domain/event/formSections/timeSection/eventTimeTab/__tests__/EventTimeTab.test.tsxsrc/domain/event/hooks/useEventActions.tssrc/domain/event/utils.tssrc/domain/registration/utils.tssrc/utils/parseServerErrorMessage.tssrc/utils/testUtils.tsx
|
LINKEDCOMPONENTS-UI branch is deployed to platta: https://linkedcomponents-ui-pr624.dev.hel.ninja 🚀🚀🚀 |
e2e tests result is success for https://linkedcomponents-ui-pr624.dev.hel.ninja 😆🎉🎉🎉 |
|
|
LINKEDCOMPONENTS-UI branch is deployed to platta: https://linkedcomponents-ui-pr624.dev.hel.ninja 🚀🚀🚀 |
e2e tests result is success for https://linkedcomponents-ui-pr624.dev.hel.ninja 😆🎉🎉🎉 |



Description ✨
Solves multiple dependencies that are currently breaking Dependabot update workflows.
Issues 🐛
Closes 🙅♀️
DEV-XXX:
Related 🤝
Testing ⚗️
Automated tests ⚙️️
Manual testing 👷♂️
Screenshots 📸
Additional notes 🗒️
Summary by CodeRabbit
Bug Fixes
Chores