.agents/skills/rule-module-boundaries/SKILL.md
Rule mapping for module-boundaries
npx skillsauth add carrot-foundation/methodology-rules rule-module-boundariesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Apply this rule whenever work touches:
libs/**/*.tsNx enforces strict module boundaries to keep the dependency graph clean and prevent coupling between unrelated parts of the codebase.
The architecture enforces a layered dependency model:
apps/methodologies/* --> libs/methodologies/bold/rule-processors/*
|
v
libs/shared/* (helpers, lambda, rule, testing, etc.)
Key constraints:
libs/methodologies/bold/rule-processors/mass-id/ can import from libs/shared/* but never from libs/methodologies/bold/rule-processors/credit-order/.Always use the configured path aliases for cross-library imports:
// Correct
import { getDocumentField } from '@carrot-fndn/shared/methodologies/bold/helpers';
import { stubDocument } from '@carrot-fndn/shared/testing';
// Wrong
import { getDocumentField } from '../../../shared/methodologies/bold/helpers/src';
Use the Nx dependency graph to check for violations:
pnpm nx graph
pnpm nx lint <project-name> # includes module boundary checks
The @nx/enforce-module-boundaries ESLint rule will flag any import that violates the configured constraints.
databases
Create and modify Zod schemas for runtime validation with proper type inference.
testing
Write Vitest unit tests following project conventions with proper stubs and assertions.
tools
Autonomously implement a task following project conventions with iterative verification.
testing
Analyze a pull request diff and provide structured feedback on correctness, conventions, and quality.