[Migration 0-2] Enable ESLint import/no-cycle + boundaries rules#3349
[Migration 0-2] Enable ESLint import/no-cycle + boundaries rules#3349
Conversation
Add eslint-plugin-boundaries with element-types matching ARCH_REDESIGN §8, enable import/no-cycle (error in client/, warn in lib/ and ui/), extend consistent-default-export-name to client/**/*.tsx, and document §10 types/api.ts enforcement as a follow-up. Made-with: Cursor
|
Important Review skippedAuto reviews are disabled on this repository. To trigger a review, include ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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 |
Closes #3348
What changed
eslint-plugin-boundaries(^4.2.2) and registeredboundaries/elementsplusboundaries/element-typesforclient/**/*.{ts,tsx}andconfigs/**/*.{ts,tsx,mjs}withdefault: disallowand the layer rules fromARCH_REDESIGN.md§8. Migration allowances:legacy-lib,legacy-ui, andtoolkitwhere product code still depends on them;configsmay importlegacy-libuntil config-owned types leavelib/. Type-only cross-layer imports use per-ruleimportKind: 'type'(plugin v4 does not exposeallowTypeImports).import/no-cycle: error forclient/**, warn forlib/**andui/**.consistent-default-export-nametoclient/**/*.tsx(same rule options asui/**/[A-Z]*.tsx).eslint.config.mjsdocuments §10 intent for enforcingtypes/api.tsas the public type surface once moreclient/modules exist; capture-based rules are deferred.Codemods
None.
Cross-slice / legacy imports
No application code was moved.
client/features/csv-exportcontinues to use existing imports fromlib/*,ui/*,toolkit/*,configs/*, and roottypes/*(paths outsideboundaries/elementsstay unchecked byelement-types).Checklist
pnpm lint:tscpassespnpm lint:eslintcompletes with exit 0;client/has no new issues (existing warnings inui/**/*.pw.tsxonly)Made with Cursor